このドキュメントでは、通話セッションのメタデータを構造化するために使用される JSON スキーマについて説明します。このスキーマは、通話セッションを正確に表して処理するうえで非常に重要です。
通話セッション メタデータのスキーマ
このスキーマは、通話セッションのメタデータに関連するデータの構造を記述します。主要コンポーネントについては、以降のセクションで説明します。
基本情報
これらのプロパティは、通話のコア情報をキャプチャします。
id(整数)。各通話セッションの識別子。これは、通話を区別する主キーです。lang(文字列)。通話中に使用された ISO 689 言語コード(例: 英語の場合はen、スペイン語の場合はes)。これは、言語固有の分析とレポート作成に不可欠です。call_type(文字列)。以前のタイプのセットを使用した呼び出しのタイプ。たとえば、Voice Inbound(App)、Voice Outbound、Voice Internal などがあります。これにより、発信元と目的に基づいて通話を分類できます。session_type(文字列): call_type の重複session_type_v2(文字列)。現在のタイプのセットを使用した呼び出しのタイプ。これは call_type に似ていますが、Voice Inbound(Mobile)や Voice Inbound(IVR using Mobile)など、より詳細な区別が含まれる場合があります。status(文字列)。通話の現在のステータス。有効な値は、scheduled、queued、connected、finished、failed、deflectedです。これにより、ライフサイクルにおける呼び出しの進行状況を追跡できます。subStatus(文字列)。通話のステータスをより詳細に提供します。有効な値はwaiting_for_agent、in_queue、connected_with_agentです。created_at(文字列、日時): 通話レコードが作成された正確なタイムスタンプqueued_at(文字列、日時、または null): 通話がキューに入ったときのタイムスタンプ。キューに入ったことがない場合は nullassigned_at(文字列、日時、または null): 通話がエージェントに割り当てられたときのタイムスタンプ。割り当てられていない場合は nullconnected_at(文字列、日時、または null): 通話が正常に接続されたときのタイムスタンプends_at(文字列、日時、または null): 通話が終了したときのタイムスタンプscheduled_at(文字列、日時、または null): 通話がスケジュールされたタイムスタンプ。即時通話の場合は nullupdated_at(文字列、日時): 通話データが最後に変更されたときのタイムスタンプwait_duration(整数): お客様が待機した合計時間(秒単位)call_duration(整数): 通話の合計時間(秒単位)hold_duration(整数): お客様が保留にされた合計時間(秒単位)。保留時間がない場合は nullrating(整数または null): お客様が提供した顧客満足度(CSAT)の評価。評価が提供されなかった場合は nullhas_feedback(ブール値): 通話後にお客様がフィードバックを提供したかどうかを示すフラグvoip_provider(文字列): 通話に使用された VoIP プロバイダ。このフィールドは非推奨であり、常にdeprecatedを返します。out_ticket_id(文字列): 外部 CRM システムで作成されたチケットの IDout_ticket_url(文字列、URI): CRM チケットの URLis_out_ticket_account(ブール値): CRM チケットが顧客(true)を表すか、通話インタラクション(false)を表すかを示します。verified(ブール値): 検証スマート アクションでやり取りが検証されたかどうかを示しますrecording_url(文字列、URI、または null): 通話の録音の URL。録音がない場合は nullrecording_permission(文字列)。お客様の録音権限のステータス。有効な値はnot_asked、granted、deniedです。voicemail_reason(文字列)。ボイスメールを残した理由(該当する場合)。not_voicemail、temporary_redirection、after_hour_deflectionなどのオプションがあります。
エージェントと仮想エージェントの情報
これらのセクションでは、通話の処理を担当したユーザーまたはサービスについて説明します。
agent_info(オブジェクト)。このフィールドには、人間のエージェントまたは仮想エージェントに関する情報を格納できます。one of キーワードを使用して、2 つのタイプのいずれかであることを指定します。agent(オブジェクト): 人間のエージェントに関する情報:id(整数): エージェントの IDagent_number(文字列または null): エージェントに割り当てられた識別子email(文字列、メールアドレス): エージェントのメールアドレスname(文字列): エージェントのフルネームlast_name(文字列): エージェントの姓first_name(文字列): エージェントの名前avatar_url(文字列、URI): エージェントのアバター画像の URL
virtual_agent(オブジェクト): 仮想エージェントに関する情報:id(整数): 仮想エージェントの IDname(文字列): 仮想エージェントの名前avatar_url(文字列、URI): バーチャル エージェントのアバター画像の URL
メニュー ナビゲーション
selected_menu(オブジェクトまたは null): 通話中にお客様が選択したメニューに関する情報id(整数): メニューの IDname(文字列): メニューの名前parent_id(整数または null): 親メニューの ID(存在する場合)position(整数): 同じレベルの他のメニューに対するメニューの位置deleted(ブール値): メニューが削除されたかどうかmenu_type(文字列): メニューのタイプ。例:ivr_menu、sms_menuhidden(ブール値): メニューが表示され、使用可能かどうか
menu_path(オブジェクトまたは null): お客様が移動したメニューの階層パスを記述しますitems_count(整数): パス内のメニューの数name(文字列): スラッシュで区切られたメニュー名の文字列。例: dupport、billingmaterialized_path(文字列): メニュー ID をスラッシュで区切った文字列
エンドユーザーの詳細
end_user(オブジェクト): お客様に関する情報id(整数): お客様の内部 IDidentifier(文字列または null): お客様の外部識別子out_contact_id(文字列または null): CRM でのお客様の ID
通話の削減
deflection(文字列): 通話が転送されたかどうか、また転送された場合はその方法を示します。例:no_deflection、over_cap_phone、after_hours_voicemail。deflection_details(配列): 通話中に発生した回避の詳細なログを提供します。各エントリには次のものが含まれます。id(整数): 偏向ログレコードの識別子call_id(整数): 通話の識別子transfer_id(整数または null): たらい回しに関連付けられている転送の識別子(該当する場合)deflection(文字列): たわみのタイプcreated_at(文字列、日時): 偏向が発生したタイムスタンプfrom_menu_path(オブジェクトまたは null): 通話が転送されたメニューパスto_menu_path(オブジェクトまたは null): 通話が転送されたメニューパスto_sip_uri(文字列または null): 通話が転送された SIP URI(該当する場合)to_sip_headers(オブジェクト): 通話が転送された SIP ヘッダー(該当する場合)
通話処理時間
handle_durations(配列): オブジェクトの配列。各オブジェクトは、エージェントが処理した通話のセグメントを表します。これは、エージェントの処理時間を分析する際に役立ちます。id(整数): ハンドル期間の識別子agent_id(整数): エージェントの IDacw_duration(整数): 通話後の作業時間bcw_duration(整数): 通話前の作業時間call_duration(整数): このセグメントの通話時間menu_path_id(文字列または null): メニューパスの IDmenu_path(文字列): メニューパスの名前lang(文字列): 使用される言語barged(ブール値): 通話に割り込みがあったかどうかtransfer(ブール値): 転送が発生したかどうかtransfer_id(文字列または null): 転送の IDtransfer_cold(boolean または null): 引き継ぎなしの転送かどうかstarted_at(文字列、日時): 開始タイムスタンプended_at(文字列、日時): 終了タイムスタンプscheduled_at(文字列、日時、または null): スケジュールされたタイムスタンプhold_duration(整数または null): このセグメント中の保留時間assigned_connection_duration(整数): このフェーズでエージェントが接続されている間、エンドユーザーが待機した時間session_breakthrough(オブジェクト): エージェントの対応不可ステータスを突破した通話の割り当てに関する詳細(該当する場合)
キューの期間
queue_durations(配列): オブジェクトの配列。各オブジェクトは、顧客がキューにいた通話のセグメントを表します。これは、待ち時間とサービスレベルを分析するうえで重要です。id(整数): キューの期間の識別子agent_id(整数): エージェントの IDended_at(文字列、日時): 終了タイムスタンプlang(文字列): 使用される言語menu_path_id(整数): メニューパスの IDmenu_path(文字列): メニューパスの名前queue_duration(整数): キュー セグメントの長さstarted_at(文字列、日時): 開始タイムスタンプtransfer_cold(ブール値): コールド転送されたかどうかtransfer(ブール値): 転送が発生したかどうかtransfer_id(整数): 転送の IDservice_level_abandon_time_threshold(整数): サービスレベルの放棄の時間のしきい値service_level_event(文字列): サービスレベル イベントのステータス。例:excluded、in_sla、not_in_sla。service_level_target_percent(整数): サービスレベルのコンプライアンスの目標割合service_level_target_time(整数): サービスレベルのコンプライアンスの目標時間
仮想エージェントのエスカレーション
virtual_agent_deflected_escalations(配列): 仮想エージェントからのエスカレーションが回避された場合の詳細id(整数): 識別子deflection(文字列): 偏向タイプescalation_id(整数): エスカレーション イベントの識別子escalation_reason(文字列): エスカレーションの理由escalated_at(文字列、日時): エスカレーションのタイムスタンプmenu_path_id(整数): メニューパス IDmenu_path(文字列): メニューパスlang(文字列): 言語virtual_agent(オブジェクト): 仮想エージェントの詳細
仮想エージェントの処理時間
virtual_agent_handle_durations(配列): 仮想エージェントが通話に対応した時間のセグメントid(整数): 識別子virtual_agent(オブジェクト): 仮想エージェントの詳細call_duration(整数): セグメントの長さescalation_reason(文字列): エスカレーションの理由finish_reason(文字列): インタラクションが終了した理由sentiment(整数): エンドユーザーの感情response_count(整数): 仮想エージェントのレスポンス数fallback_response_count(整数): フォールバック レスポンス数initiated_by(文字列): 仮想エージェント セッションがどのように開始されたかmenu_path_id(整数): メニューパス IDmenu_path(文字列): メニューパスlang(文字列): 言語transfer(ブール値): 通話が転送されたかどうかtransfer_id(整数): 転送イベントの識別子started_at(文字列、日時): 開始タイムスタンプended_at(文字列、日時): 終了タイムスタンプ
エンドユーザーの処理時間
consumer_handle_durations(配列): エンドユーザーが通話していた時間id(整数): 識別子call_duration(整数): エンドユーザーのセグメントの長さhold_duration(整数): エンドユーザーの保留時間started_at(文字列、日時): 開始タイムスタンプended_at(文字列、日時): 終了タイムスタンプ
エンドユーザー イベントの期間
consumer_event_durations(配列): エンドユーザーの通話イベントの詳細。たとえば、CSAT や支払いなどです。id(整数): 識別子duration(整数): イベントの継続時間type(文字列): イベントタイプevent(文字列): イベントの結果menu_path_id(整数): メニューパス IDmenu_path(文字列): メニューパスlang(文字列): 言語started_at(文字列、日時): 開始タイムスタンプended_at(文字列、日時): 終了タイムスタンプ
エンドユーザーのメニュー内での滞在時間
consumer_in_menu_durations(配列): メニュー内のエンドユーザー操作の継続時間id(整数): 識別子duration(整数): メニュー内の時間event(文字列): メニュー操作の結果menu_path_id(整数): メニューパス IDmenu_path(文字列): メニューパスlang(文字列): 言語started_at(文字列、日時): 開始タイムスタンプended_at(文字列、日時): 終了タイムスタンプ
参加者
participants(配列): 通話の各参加者に関する情報。たとえば、お客様、エージェント、仮想エージェントなどです。id(整数): 参加者の識別子type(文字列): 参加者のタイプ。例: end_user、agent、virtual_agent など。entry_type(文字列): 参加者が通話に参加した方法user_id(整数または null): 参加者がエージェントの場合のユーザー IDend_user_id(整数または null): 参加者がお客様の場合のエンドユーザー IDvirtual_agent_id(整数または null): 参加者が仮想エージェントの場合の仮想エージェント IDvirtual_agent_params(オブジェクト): 仮想エージェントで使用されるカスタム メタデータstatus(文字列): 参加者のステータス。(例: 待機中、接続済み、完了など)。fail_reason(文字列): 失敗の理由(ある場合)connected_at(文字列、日時): 参加者が接続したときのタイムスタンプphone_number(文字列): 参加者の電話番号call_id(整数): 呼び出しの識別子call_duration(整数): 参加者の通話時間hold_duration(整数または null): 参加者の保留時間ended_at(文字列、日時): 参加者の参加が終了したときのタイムスタンプadapter_fail_code(整数または null): 失敗理由に対応する数値コードadapter_fail_message(文字列または null):fail_reasonの人が読める形式の説明(利用可能な場合)。
録画
recordings(配列): 通話録音に関する情報id(整数): レコーディングの識別子call_id(整数): 通話 IDconference_sid(文字列): VoIP プロバイダの通話 IDduration(整数): 録音時間recording_type(文字列): レコーディングのタイプredaction_times(配列): 編集された時間セグメントstarted_at(文字列、日時): 録音開始タイムスタンプ
オファー イベント
offer_type(文字列または null): エージェントに電話が提供された方法offer_events(配列): 通話がエージェントに提供されたイベントcasting_time(日時): 通話が提供された時間group(文字列): 通話が提供されたグループ
その他の情報
answer_type(文字列または null): 通話に応答した方法。(マニュアル、オートなど)。outbound_number(文字列): 使用された発信電話番号wait_time_sms(配列): SMS インタラクションの待機時間in_call_sms(配列): 通話中の SMS のやり取りdispositions(配列): 通話中に記録された結果email(文字列、メールアドレス、または null): お客様のメールアドレスfeedback(文字列または null): お客様からのフィードバックsmart_action_text(文字列または null): 実行されたスマート アクションのテキストcustom_data_secured(オブジェクトまたは null): カスタムの安全な署名付きデータcustom_data_not_secured(オブジェクトまたは null): カスタムの安全でない署名付きデータ
主な定義
スキーマには、再利用可能なスキーマ コンポーネントを定義する定義セクションも含まれています。
menu_path: 階層メニューのパスagent: 人間のエージェントvirtual_agent: 仮想エージェントdeflection: 可能なたわみステータスを定義します