アプリサーバーデータ
アプリケーションは、1対1通話を作成したり、グループ通話(カンファレンス)に参加したりする際にアプリクライアントとアプリサーバーとの間でアプリケーションデータを共有できます。このため、アプリクライアントからアプリサーバーに送信するアプリケーションデータをアプリサーバーデータ(app server data)といいます。
対応する通話タイプ | SDKの最低バージョン |
---|---|
1対1通話、グループ通話 | すべてのバージョン |
Note
- アプリサーバーデータは、PlanetKit 5.0.x以下のバージョンで提供する「サービスチケットID」と機能的に同じものです。PlanetKit 5.1以上のバージョンから機能の名称だけが変更されました。
- 以前にサーバーコールバックでサービスチケットIDを転送するために使用されていた
stid
パラメーターはdeprecatedされました。代わりに、アプリサーバーデータはサーバーコールバックのapp_svr_data
パラメーターとして転送されます。
アプリサーバーデータを送信する
通話のタイプによってアプリサーバーデータを送信する方法について説明します。
1対1通話
1対1通話では、発信者だけがアプリサーバーデータを送信できます。
1対1通話でアプリサーバーデータを送信するには、PlanetKitMakeCallParam
にアプリサーバーデータを設定し、makeCall()
を呼び出す際にPlanetKitMakeCallParam
を渡します。
val appServerData = "App server data for a 1-to-1 call"
val param = PlanetKitMakeCallParam.Builder()
.myId(myUserId)
.myServiceId(myServiceId)
.peerId(peerUserId)
.peerServiceId(peerServiceId)
.appServerData(appServerData)
.build()
val result = PlanetKit.makeCall(param, makeCallListener)
アプリサーバーデータは、サーバーコールバックの Notifyコールバックおよび1対1通話のイベントコールバックのapp_svr_data
パラメーターで渡されます。
グループ通話
グループ通話では、参加者全員がアプリサーバーデータを送信できます。
グループ通話でアプリサーバーデータを送信するには、PlanetKitConferenceParam
にアプリサーバーデータを設定し、joinConference()
を呼び出す際にPlanetKitConferenceParam
を渡します。
val appServerData = "App server data for a group call"
val param = PlanetKitConferenceParam.Builder()
.myId(myUserId)
.myServiceId(myServiceId)
.roomId(roomId)
.roomServiceId(roomServiceId)
.appServerData(appServerData)
.build()
val result = PlanetKit.joinConference(param, conferenceListener)
アプリサーバーデータは、グループ通話イベントのサーバーコールバックのapp_svr_data
パラメーターで渡されます。
サイズの制限
アプリサーバーデータの最大サイズはnull終端文字を含めて4096バイトです。
通話開始メッセージとアプリサーバーデータの比較
通話開始メッセージとアプリサーバーデータとでは、次のような違いがあります。
送信元と送信先 | 対応する通話タイプ | |
---|---|---|
通話開始メッセージ | 発信者のアプリクライアント → 受信者のアプリクライアント 受信者のアプリクライアント → 発信者のアプリクライアント | 1対1通話 |
アプリサーバーデータ | 発信者または参加者のアプリクライアント → アプリサーバー | 1対1通話、グループ通話 |
関連API
アプリサーバーデータ機能に関連するAPIは、以下のとおりです。