Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LIFF通話
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ufoo68
July 27, 2020
Technology
760
1
Share
LIFF通話
ufoo68
July 27, 2020
More Decks by ufoo68
See All by ufoo68
改めて考えるOSSのあり方について
ufoo68
0
30
文法で学ばないJavaScript
ufoo68
0
52
Cookieとは?
ufoo68
1
68
今更ながら、開発現場での生成AI活用について
ufoo68
0
70
28歳独身エンジニア 婚活してみた
ufoo68
0
29
OpenAIでクッキー型を作る
ufoo68
1
61
初めて開発リーダーをやってみた話
ufoo68
0
140
M5Stack用の指紋認証デバイスを試す
ufoo68
0
870
結婚式のクイズアプリを自作した話
ufoo68
0
680
Other Decks in Technology
See All in Technology
「できない」のアウトプット 同人誌『精神を壊してからの』シリーズ出版を 通して得られたこと
comi190327
3
530
Babylon.js Japan Activities (2026/4)
limes2018
0
140
【関西電力KOI×VOLTMIND 生成AIハッカソン】空間AIブレイン ~⼤阪おばちゃんフィジカルAIに続く道~
tanakaseiya
0
100
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
3
2.1k
AIにより大幅に強化された AWS Transform Customを触ってみる
0air
0
280
Podcast配信で広がったアウトプットの輪~70人と音声発信してきた7年間~/outputconf_01
fortegp05
0
190
OPENLOGI Company Profile
hr01
0
83k
最大のアウトプット術は問題を作ること
ryoaccount
0
260
Tour of Agent Protocols: MCP, A2A, AG-UI, A2UI with ADK
meteatamel
0
190
JAWS DAYS 2026でAIの「もやっと」感が解消された話
smt7174
1
120
トイルを超えたCREは何屋になるのか
bengo4com
0
120
LLMに何を任せ、何を任せないか
cap120
11
6.9k
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Producing Creativity
orderedlist
PRO
348
40k
GitHub's CSS Performance
jonrohan
1032
470k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
240
Test your architecture with Archunit
thirion
1
2.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The browser strikes back
jonoalderson
0
870
Navigating Team Friction
lara
192
16k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Transcript
LIFF通話 #lifflt
自己紹介 • 名前 ◦ 松永勇太(@ufoo_yuta) • 出身地 ◦ 滋賀県 •
やってること ◦ スポーツIoTLT主催 • 最近やったこと ◦ AWS-CDKとLINE Botのハンズオン
とても感動的な出来事
これはもう何か作るしかない 応募しなきゃ(使命感)
考えたこと ビデオチャットが覇権を握る時代(多分)なのでLIFFでも作ってみたい!
実際につくったもの LIFFを用いたビデオ通話アプリ DEMO
使い方(ざっくり) CALLする側の流れ
使い方(ざっくり) CALLされる側の流れ
使った技術 • SkyWay • LIFF • React • TypeScript ソースコード(GitHub)
ビデオ通話の実装 SkyWayというSDKを用いてP2P(Peer to Peer)の通信をする Peer Peer • Peer ID •
メディアストリーム
通信のやりとり 1. 通信をかけたい側(Caller)がPeer IDを生成 2. Peer IDをクエリストリング用いて通信をかけられる側(Callee)にURLを共有 3. CalleeはURLを開いて共有されたPeer IDとコネクションを行って、メディアストリー
ム(カメラ映像と音声)を送信する 4. Callerはメディアストリームを受け取ったらCalleeに自分のメディアストリームを送り 返す URL?id={Peer ID}
Peer IDの共有方法 LIFFのShareTargetPicker機能を用いてLINEの友達に送信する Caller Callee liff.shareTargetPicker([ { type: ‘text’, text:
`https://xxx?id=${myid}` } ])
ReactでSkyWayを使う実装例 自分の記事を参照した
TypeScriptでLIFF開発するには 今まではliff-typeという非公式のnpmパッケージを使っていた
しかし今回は @line/liffという公式のnpmパッケージが使える!
公式パッケージの嬉しいところ • npmパッケージを使う利点 ◦ ReactやVueなどの開発がやりやすい ◦ エディタの入力補完機能が使える • liff-typeとの比較 ◦
htmlに<script>タグをつける必要がない ◦ tsconfigのcompilerOptionsの変更がいらない
React+TypeScriptでのLIFF実装例 自分の記事を参照した
ShareTargetPickerの実装例 自分の記事を参照した
まとめ • SkyWayを用いればビデオ通話アプリが簡単に作成できる • LIFFのライブラリでLINEアカウント連携機能を用いたウェブアプリケーションが実装 できる • 公式のLIFFのnpmパッケージでReact+TypeScriptでのLIFF開発がさらにやりや すくなる •
自分用にQiita記事を書いておくとメモ代わりになる