本文にスキップする
Version: 5.5

アプリサーバーデータ

アプリケーションは、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は、以下のとおりです。

1対1通話

クライアント向けAPI

サーバーAPI

グループ通話

クライアント向けAPI

サーバーAPI