アプリサーバーデータ
アプリケーションは、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通話でアプリサーバーデータを送信するには、MakeCallParam
にアプリサーバーデータを設定し、MakeCall()
を呼び出す際にMakeCallParam
を渡します。
wchar_t szAppServerData[] = L"App server data for a 1-to-1 call";
PlanetKit::PlanetKitCallPtr pPlanetKitCall;
PlanetKit::MakeCallParamPtr pMakeCallParam = PlanetKit::MakeCallParam::CreateWithAccessToken(
myId, peerId, accessToken
);
pMakeCallParam->SetAppServerData(szAppServerData);
PlanetKit::PlanetKitManagerPtr pPlanetKitManager = PlanetKit::PlanetKitManager::GetInstance();
PlanetKit::SStartResult sStartResult = pPlanetKitManager->MakeCall(pMakeCallParam, &pPlanetKitCall);
アプリサーバーデータは、サーバーコールバックの Notifyコールバックおよび1対1通話のイベントコールバックのapp_svr_data
パラメーターで渡されます。
グループ通話
グループ通話では、参加者全員がアプリサーバーデータを送信できます。
グループ通話でアプリサーバーデータを送信するには、ConferenceParam
にアプリサーバーデータを設定し、JoinConference()
を呼び出す際にConferenceParam
を渡します。
wchar_t szAppServerData[] = L"App server data for a group call";
PlanetKit::PlanetKitConferencePtr pPlanetKitConference;
PlanetKit::ConferenceParamPtr pConferenceParam = PlanetKit::ConferenceParam::CreateWithAccessToken(
myId, roomId, roomServiceId, accessToken
);
pConferenceParam->SetAppServerData(szAppServerData);
PlanetKit::PlanetKitManagerPtr pPlanetKitManager = PlanetKit::PlanetKitManager::GetInstance();
PlanetKit::SStartResult sStartResult = pPlanetKitManager->JoinConference(pConferenceParam, &pPlanetKitConference);
アプリサーバーデータは、グループ通話イベントのサーバーコールバックのapp_svr_data
パラメーターで渡されます。
サイズの制限
アプリサーバーデータの最大サイズはnull終端文字を含めて4096バイトです。
通話開始メッセージとアプリサーバーデータの比較
通話開始メッセージとアプリサーバーデータとでは、次のような違いがあります。
送信元と送信先 | 対応する通話タイプ | |
---|---|---|
通話開始メッセージ | 発信者のアプリクライアント → 受信者のアプリクライアント 受信者のアプリクライアント → 発信者のアプリクライアント | 1対1通話 |
アプリサーバーデータ | 発信者または参加者のアプリクライアント → アプリサーバー | 1対1通話、グループ通話 |
関連API
アプリサーバーデータ機能に関連するAPIは、以下のとおりです。