通話セッションのメタデータ

このドキュメントでは、通話セッションのメタデータを構造化するために使用される 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(文字列)。通話の現在のステータス。有効な値は、scheduledqueuedconnectedfinishedfaileddeflected です。これにより、ライフサイクルにおける呼び出しの進行状況を追跡できます。

  • subStatus(文字列)。通話のステータスをより詳細に提供します。有効な値は waiting_for_agentin_queueconnected_with_agent です。

  • created_at(文字列、日時): 通話レコードが作成された正確なタイムスタンプ

  • queued_at(文字列、日時、または null): 通話がキューに入ったときのタイムスタンプ。キューに入ったことがない場合は null

  • assigned_at(文字列、日時、または null): 通話がエージェントに割り当てられたときのタイムスタンプ。割り当てられていない場合は null

  • connected_at(文字列、日時、または null): 通話が正常に接続されたときのタイムスタンプ

  • ends_at(文字列、日時、または null): 通話が終了したときのタイムスタンプ

  • scheduled_at(文字列、日時、または null): 通話がスケジュールされたタイムスタンプ。即時通話の場合は null

  • updated_at(文字列、日時): 通話データが最後に変更されたときのタイムスタンプ

  • wait_duration(整数): お客様が待機した合計時間(秒単位)

  • call_duration(整数): 通話の合計時間(秒単位)

  • hold_duration(整数): お客様が保留にされた合計時間(秒単位)。保留時間がない場合は null

  • rating(整数または null): お客様が提供した顧客満足度(CSAT)の評価。評価が提供されなかった場合は null

  • has_feedback(ブール値): 通話後にお客様がフィードバックを提供したかどうかを示すフラグ

  • voip_provider(文字列): 通話に使用された VoIP プロバイダ。このフィールドは非推奨であり、常に deprecated を返します。

  • out_ticket_id(文字列): 外部 CRM システムで作成されたチケットの ID

  • out_ticket_url(文字列、URI): CRM チケットの URL

  • is_out_ticket_account(ブール値): CRM チケットが顧客(true)を表すか、通話インタラクション(false)を表すかを示します。

  • verified(ブール値): 検証スマート アクションでやり取りが検証されたかどうかを示します

  • recording_url(文字列、URI、または null): 通話の録音の URL。録音がない場合は null

  • recording_permission(文字列)。お客様の録音権限のステータス。有効な値は not_askedgranteddenied です。

  • voicemail_reason(文字列)。ボイスメールを残した理由(該当する場合)。not_voicemailtemporary_redirectionafter_hour_deflection などのオプションがあります。

エージェントと仮想エージェントの情報

これらのセクションでは、通話の処理を担当したユーザーまたはサービスについて説明します。

  • agent_info(オブジェクト)。このフィールドには、人間のエージェントまたは仮想エージェントに関する情報を格納できます。one of キーワードを使用して、2 つのタイプのいずれかであることを指定します。

    • agent(オブジェクト): 人間のエージェントに関する情報:

      • id(整数): エージェントの ID

      • agent_number(文字列または null): エージェントに割り当てられた識別子

      • email(文字列、メールアドレス): エージェントのメールアドレス

      • name(文字列): エージェントのフルネーム

      • last_name(文字列): エージェントの姓

      • first_name(文字列): エージェントの名前

      • avatar_url(文字列、URI): エージェントのアバター画像の URL

    • virtual_agent(オブジェクト): 仮想エージェントに関する情報:

      • id(整数): 仮想エージェントの ID

      • name(文字列): 仮想エージェントの名前

      • avatar_url(文字列、URI): バーチャル エージェントのアバター画像の URL

  • selected_menu(オブジェクトまたは null): 通話中にお客様が選択したメニューに関する情報

    • id(整数): メニューの ID

    • name(文字列): メニューの名前

    • parent_id(整数または null): 親メニューの ID(存在する場合)

    • position(整数): 同じレベルの他のメニューに対するメニューの位置

    • deleted(ブール値): メニューが削除されたかどうか

    • menu_type(文字列): メニューのタイプ。例: ivr_menusms_menu

    • hidden(ブール値): メニューが表示され、使用可能かどうか

  • menu_path(オブジェクトまたは null): お客様が移動したメニューの階層パスを記述します

    • items_count(整数): パス内のメニューの数

    • name(文字列): スラッシュで区切られたメニュー名の文字列。例: dupport、billing

    • materialized_path(文字列): メニュー ID をスラッシュで区切った文字列

エンドユーザーの詳細

  • end_user(オブジェクト): お客様に関する情報

    • id(整数): お客様の内部 ID

    • identifier(文字列または null): お客様の外部識別子

    • out_contact_id(文字列または null): CRM でのお客様の ID

通話の削減

  • deflection(文字列): 通話が転送されたかどうか、また転送された場合はその方法を示します。例: no_deflectionover_cap_phoneafter_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(整数): エージェントの ID

    • acw_duration(整数): 通話後の作業時間

    • bcw_duration(整数): 通話前の作業時間

    • call_duration(整数): このセグメントの通話時間

    • menu_path_id(文字列または null): メニューパスの ID

    • menu_path(文字列): メニューパスの名前

    • lang(文字列): 使用される言語

    • barged(ブール値): 通話に割り込みがあったかどうか

    • transfer(ブール値): 転送が発生したかどうか

    • transfer_id(文字列または null): 転送の ID

    • transfer_cold(boolean または null): 引き継ぎなしの転送かどうか

    • started_at(文字列、日時): 開始タイムスタンプ

    • ended_at(文字列、日時): 終了タイムスタンプ

    • scheduled_at(文字列、日時、または null): スケジュールされたタイムスタンプ

    • hold_duration(整数または null): このセグメント中の保留時間

    • assigned_connection_duration(整数): このフェーズでエージェントが接続されている間、エンドユーザーが待機した時間

    • session_breakthrough(オブジェクト): エージェントの対応不可ステータスを突破した通話の割り当てに関する詳細(該当する場合)

キューの期間

  • queue_durations(配列): オブジェクトの配列。各オブジェクトは、顧客がキューにいた通話のセグメントを表します。これは、待ち時間とサービスレベルを分析するうえで重要です。

    • id(整数): キューの期間の識別子

    • agent_id(整数): エージェントの ID

    • ended_at(文字列、日時): 終了タイムスタンプ

    • lang(文字列): 使用される言語

    • menu_path_id(整数): メニューパスの ID

    • menu_path(文字列): メニューパスの名前

    • queue_duration(整数): キュー セグメントの長さ

    • started_at(文字列、日時): 開始タイムスタンプ

    • transfer_cold(ブール値): コールド転送されたかどうか

    • transfer(ブール値): 転送が発生したかどうか

    • transfer_id(整数): 転送の ID

    • service_level_abandon_time_threshold(整数): サービスレベルの放棄の時間のしきい値

    • service_level_event(文字列): サービスレベル イベントのステータス。例: excludedin_slanot_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(整数): メニューパス ID

    • menu_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(整数): メニューパス ID

    • menu_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(整数): メニューパス ID

    • menu_path(文字列): メニューパス

    • lang(文字列): 言語

    • started_at(文字列、日時): 開始タイムスタンプ

    • ended_at(文字列、日時): 終了タイムスタンプ

エンドユーザーのメニュー内での滞在時間

  • consumer_in_menu_durations(配列): メニュー内のエンドユーザー操作の継続時間

    • id(整数): 識別子

    • duration(整数): メニュー内の時間

    • event(文字列): メニュー操作の結果

    • menu_path_id(整数): メニューパス ID

    • menu_path(文字列): メニューパス

    • lang(文字列): 言語

    • started_at(文字列、日時): 開始タイムスタンプ

    • ended_at(文字列、日時): 終了タイムスタンプ

参加者

  • participants(配列): 通話の各参加者に関する情報。たとえば、お客様、エージェント、仮想エージェントなどです。

    • id(整数): 参加者の識別子

    • type(文字列): 参加者のタイプ。例: end_user、agent、virtual_agent など。

    • entry_type(文字列): 参加者が通話に参加した方法

    • user_id(整数または null): 参加者がエージェントの場合のユーザー ID

    • end_user_id(整数または null): 参加者がお客様の場合のエンドユーザー ID

    • virtual_agent_id(整数または null): 参加者が仮想エージェントの場合の仮想エージェント ID

    • virtual_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(整数): 通話 ID

    • conference_sid(文字列): VoIP プロバイダの通話 ID

    • duration(整数): 録音時間

    • 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: 可能なたわみステータスを定義します