1対1通話フロー
ここでは、LINE Planetの1対1通話フローについて説明します。
下図にて、アプリクライアントとアプリサーバーはアプリケーション側に属しており、PlanetKitとLINE Planet CloudはLINE Planet側に属しています。
Tip
下図にて、緑色の矢印は、PlanetKitが提供するクライアントAPIを示します。赤色の矢印は、LINE Planet Cloudが呼び出すアプリサーバーのコールバックを示します。
通話開始
下図は、LINE Planetのコールセットアップ(call setup)の流れを示しています。ただし、コールセットアップの流れは、アプリケーションの要件によって異なる場合があります。
- 発信者が通話をリクエストすると、発信者のアプリクライアントが
makeCall()を呼び出します。 - Planet CloudがNotifyコールバックを呼び出し、アプリサーバーに新しい1対1通話を通知します。
- アプリサーバーが受信者のアプリクライアントにプッシュ通知を送ります。
- 発信者のアプリクライアントで
onWaitConnectedイベントが発生します。発信者のアプリクライアントは、受信者の応答を待ちます。 - 受信者のアプリクライアントが
verifyCall()を呼び出し、通話を確認します。通話が確認されたら、受信者のアプリクライアントでonVerifiedイベントが発生します。 - 受信者が通話に応答すると、受信者のアプリクライアントが
acceptCall()を呼び出します。電話がつながると、発信者と受信者のアプリクライアントの両方でonConnectedイベントが発生します。
通話切断
ユーザーが通話を切断したときの流れは、以下のとおりです。
- 発信者または受信者が通話を切断すると、通話を切断したユーザーのアプリクライアントが
endCall()を呼び出します。 - 通話が切断されると、発信者と受信者両方のアプリクライアントで
onDisconnectedイベントが発生します。 - Planet Cloudが1対1通話のイベントコールバックを呼び出し、アプリサーバーに通話の切断を通知します。
Tip
一般的に、通話終了音は相手またはサーバーによって通話が終了されたとき、または異常な理由で通話が切断されたときに再生されます。
関連API
1対1通話に関連するAPIは、以下のとおりです。
クライアント向けAPI
メソッド
makeCall()(発信者側で使用)verifyCall()(受信者側で使用)acceptCall()(受信者側で使用)endCall()(両方で使用)
イベント
onWaitConnected(発信者側で発生)onVerified(受信者側で発生)onConnected(両方で発生)onDisconnected(両方で発生)