アプリサーバーデータ
アプリケーションは、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通話でアプリサーバーデータを送信するには、PlanetKitCallParam
にアプリサーバーデータを設定し、makeCall()
を呼び出す際にPlanetKitCallParam
を渡します。
let appServerData = "App server data for a 1-to-1 call"
let param = PlanetKitCallParam(myUserId: myUserId, peerUserId: peerUserId, delegate: delegate, accessToken: accessToken)
param.appServerData = appServerData
let result = PlanetKitManager.shared.makeCall(param: param)
アプリサーバーデータは、サーバーコールバックの Notifyコールバックおよび1対1通話のイベントコールバックのapp_svr_data
パラメーターで渡されます。
グループ通話
グループ通話では、参加者全員がアプリサーバーデータを送信できます。
グループ通話でアプリサーバーデータを送信するには、PlanetKitConferenceParam
にアプリサーバーデータを設定し、joinConference()
を呼び出す際にPlanetKitConferenceParam
を渡します。
let appServerData = "App server data for a group call"
let param = PlanetKitConferenceParam(myUserId: myUserId, roomId: roomId, roomServiceId: roomServiceId, delegate: delegate, accessToken: accessToken)
param.appServerData = appServerData
let result = PlanetKitManager.shared.joinConference(param: param)
アプリサーバーデータは、グループ通話イベントのサーバーコールバックのapp_svr_data
パラメーターで渡されます。
サイズの制限
アプリサーバーデータの最大サイズはnull終端文字を含めて4096バイトです。
通話開始メッセージとアプリサーバーデータの比較
通話開始メッセージとアプリサーバーデータとでは、次のような違いがあります。
送信元と送信先 | 対応する通話タイプ | |
---|---|---|
通話開始メッセージ | 発信者のアプリクライアント → 受信者のアプリクライアント 受信者のアプリクライアント → 発信者のアプリクライアント | 1対1通話 |
アプリサーバーデータ | 発信者または参加者のアプリクライアント → アプリサーバー | 1対1通話、グループ通話 |
関連API
アプリサーバーデータ機能に関連するAPIは、以下のとおりです。