本文にスキップする
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通話でアプリサーバーデータを送信するには、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は、以下のとおりです。

1対1通話

クライアント向けAPI

サーバーAPI

グループ通話

クライアント向けAPI

  • PlanetKitConferenceParamappServerData iOS, macOS
  • joinConference() iOS, macOS

サーバーAPI