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

クラウド通話レコーディング

LINE Planetは、リクエストに応じて特定の1対1通話をクラウドにレコーディングするクラウド通話レコーディング機能を提供しています。このページでは、PlanetKitを通じてクラウド通話レコーディング機能を使用する方法を説明します。

対応する通話タイプSDKの最低バージョン
1対1通話5.2
Warning

クラウド通話レコーディング機能を使用するには、あらかじめLINE Planetチームに相談する必要があります。この機能を使用するには、LINE Planetチームにお問い合わせください。

クラウド通話レコーディングの有効化

発信者または受信者は、コールセットアップ(call setup)中にクラウド通話レコーディングを有効にできます。

Tip

1対1通話のセットアップフローについて、詳しくは1対1通話フローを参照してください。

発信者側

発信者は、通話を作成(make)する時にクラウド通話レコーディングを有効にできます。

発信者側でクラウド通話レコーディングを有効にするには、MakeCallParamオブジェクトにSetRecordOnCloud(true)を設定し、このMakeCallParamオブジェクトを引数としてMakeCall()を呼び出します。

PlanetKit::PlanetKitCallPtr pPlanetKitCall;
PlanetKit::MakeCallParamPtr pMakeCallParam = PlanetKit::MakeCallParam::CreateWithAccessToken(
myId, peerId, accessToken
);
pMakeCallParam->SetRecordOnCloud(true);

PlanetKit::PlanetKitManagerPtr pPlanetKitManager = PlanetKit::PlanetKitManager::GetInstance();
auto pMic = pPlanetKitManager->GetAudioManager()->GetCurrentMic();
PlanetKit::SStartResult sStartResult = pPlanetKitManager->MakeCall(pMakeCallParam, pMic, &pPlanetKitCall);

受信者側

受信者は、通話に応答(accept)する時にクラウド通話レコーディングを有効にできます。

受信者側でクラウド通話レコーディングを有効にするには、AcceptCall()を呼び出す際にbRecordOnCloudtrueを渡します。

// The `pPlanetKitCall` variable is the verified `PlanetKitCall` instance.

pPlanetKitCall->AcceptCall(bPreparation, pCallStartMessage, PlanetKit::PLNK_INITIAL_MY_VIDEO_STATE_RESUME, true);

受信通話のクラウド通話レコーディングにおける有効化の可否の確認

受信者側では通話を受信する前にCCParamクラスのIsRecordOnCloudEnabled()メソッドを使用して、受信通話にクラウド通話レコーディングが有効になっているかどうか確認できます。

プッシュ通知データでCCParamを作成し、通話を受信する方法について、詳しくは通話通知の受信および通話受信を参照してください。

クラウド通話レコーディングに関するイベントの受信

クラウド通話レコーディングに関するイベントを受信できます。このイベントは、レコーディングの有効化ステータスや無効化の理由などの情報を引き渡します。

クラウド通話レコーディングのステータスがアップデートされたら、OnRecordOnCloudUpdatedコールバックが呼び出されます。クラウド通話レコーディングのステータスと関連情報を得るには、OnRecordOnCloudUpdatedコールバックのpRecordOnCloudパラメーターに次のメソッドを使用します。

メソッド返却値のタイプ説明
IsActivated()boolクラウド通話のレコーディングのステータスを取得します。
GetDeactivatedReason()DeactivateReasonOptionalクラウド通話レコーディングが無効化された理由を取得します。これは次のいずれかである可能性があります。
  • PLNK_RECORD_ON_CLOUD_DEACTIVATE_REASON_INTERNAL:内部エラーが発生しました。
  • PLNK_RECORD_ON_CLOUD_DEACTIVATE_REASON_ACTIVATION_FAILED:クラウドでレコーディングに失敗しました。
参考IsActivated()の返却値がtrueであれば、返却値はnullptrになる可能性があります。

関連API

クラウド通話レコーディングに関連するAPIは次のとおりです。