レガシー録画機能から新しい録画機能 (セッション単位) への移行¶
重要
レガシー録画機能は 2025 年 12 月リリースの Sora にて廃止しました。
Sora 2023.2.0 から新しくセッション単位の録画機能を追加し、既存の録画機能をレガシー録画機能としました。
レガシー録画の有効化¶
sora.conf にて legacy_recording を true にすることでレガシー録画機能を有効にできます。
レガシー録画機能ではできて、新しい録画機能ではできないこと¶
セッションが存在しない状態では録画の開始ができなくなった¶
レガシー録画機能では 20161101.StartRecording API を利用することで、セッションが存在しない状態でも録画を開始することができました。
新しい録画機能ではセッションが生成される前に録画を開始することはできません。
代わりにセッションが生成されたタイミングで、
セッションウェブフック session.created の戻り値に "recording": true を指定することで、
セッション生成と同時に録画を開始することができます。
セッションをまたいだ録画ができなくなった¶
レガシー録画機能では、一度録画を開始したら録画の期限が来るか、 StopRecording API を実行するまでは録画が続いてしまい、
録画したままという状態が残ってしまうことがありました。
新しい録画機能では、セッションが破棄されたタイミングで録画も終了するため、誰もそのチャネルに接続していないにもかかわらず、 録画したままという状態はなくなります。
変更点¶
API の変更¶
レガシー録画で利用していた
20161101.StartRecordingAPI と20161101.StopRecordingAPI はバージョンを20231220に変更してくださいレガシー録画で利用していた StartRecording API は StartRecording API を利用してください
レガシー録画で利用していた StopRecording API は StopRecording API を利用してください
レガシー録画で利用していた GetStartedRecording API は GetSession API を利用してください
レガシー録画で利用していた ListStartedRecording API は ListSessions API を利用してください
レガシー録画で利用していた ListArchiving API には代わりの API がありません、今後 GetSessionRecordingState API を提供予定です
API の変更についてのご質問がある場合はサポートまでご連絡ください
セッション生成時の録画開始¶
セッションが存在しないタイミングでの録画開始はできなくなりました。
代わりにセッションが生成されたタイミングで、
セッションウェブフック session.created の戻り値に "recording": true を指定することで、
セッション生成と同時に録画を開始することができます。
録画を開始するための API を実行する必要はありません。
セッション破棄時の録画終了¶
セッション破棄時に録画を終了するようになりました。
録画を終了するための API を実行する必要はありません。
expire_time で指定した時間よりも先にセッションが破棄された場合は、その時点で録画を終了します。
expire_time のオプション化¶
レガシー録画では StartRecording API の expire_time は必須でしたが、
新しい録画では expire_time はオプションに変更しています。
expire_timeを指定しない場合は未定義になります。ウェブフックなどでは項目が含まれなくなりますレガシー録画では
expire_time未定義の場合は0が入っていました
expire_timeが未指定の場合は、expired_atも項目として含まれなくなりますexpire_timeに0は指定できなくなり、0より大きい値のみ指定可能になりました分割録画ファイルのみ出力を行う場合でも
expire_timeが指定できるようになりました
セッションウェブフック recording.started と recording.report への切り替え¶
今まで録画開始/終了のウェブフックはイベントウェブフックで送信していましたが、 新しい録画機能ではセッションウェブフックを利用します。
録画開始 recording.started と録画レポート recording.report ウェブフックの中身は以下が異なります。
session_idを追加していますsession_metadataを追加しています録画メタデータが指定された場合、
recording_metadataを追加していますmetadataをrecording_metadataに変更しています
イベントウェブフック固有の
log_writtenを削除しています
それ以外は同じです。
接続単位の録画ファイルに関してのイベントウェブフック archive.* については、変更はありません。
report-<recording_id>.json ファイルの metadata を recording_metadata に変更¶
録画メタデータが指定された場合の項目を metadata から recording_metadata に変更しています。
接続単位の録画ブロック機能¶
今までの録画機能では接続単位での録画ブロックができませんでしたが、
新しい録画機能では認証成功時に "recording_block": true を払い出すことで、
その接続の録画をブロックし、録画ファイルを出力しなくなります。
この機能は新しい録画機能だけで利用できます。
レガシー録画機能と新しい録画機能の同時利用¶
レガシー録画機能と新しい録画機能 (セッション単位) は、異なるチャネルであれば同時に利用できます。 例えば、channel_id a ではレガシー録画機能、channel_id b では新しい録画機能(セッション単位)といった利用ができます。