本文說明用於建構即時通訊記錄中繼資料的 JSON 結構定義。這個結構定義是準確呈現及處理即時通訊對話的必要條件。
即時通訊轉錄稿中繼資料結構定義
這個結構定義說明瞭對話記錄的資料結構。以下各節將說明核心元件:
核心轉錄稿資訊
下列屬性提供轉錄稿本身的基本資訊:
comm_type(字串)。這份轉錄稿所屬的通訊類型。 如果是具備混合式 SMS 功能的通話,則可以是即時通訊或通話。comm_id(整數)。通訊的 ID,例如與這份轉錄稿相關的即時通訊或通話。transcript_version(字串)。轉錄稿格式的版本。剖析轉錄稿時,必須提供這項資訊,才能確保回溯相容性。assigned_at(字串,日期時間)。指派即時通訊的時間戳記。timezone(字串)。進行對話的時區。
訊息定義
「definitions」部分包含可重複使用的結構定義元件,用於定義轉錄稿中不同訊息類型的結構。這樣一來,您就能彈性處理各種內容格式:
text(物件):代表文字訊息type(字串):必須是「text」content(字串):訊息的實際文字內容lang(字串):文字內容的語言
text_template(物件):代表範本文字訊息type(字串):必須為text_templatecontent(字串):文字範本內容,可能包含預留位置
markdown(物件):以 Markdown 格式表示訊息type(字串):必須為Markdowncontent(字串):Markdown 範本內容
markdown_template(物件):代表範本化的 Markdown 訊息type(字串):必須為markdown_template。content(字串):Markdown 範本內容,可能含有預留位置
photo(物件):代表含有相片的訊息type(字串):必須為photomedia_id(整數):相片的媒體檔案 ID
video(物件):代表包含影片的訊息title(字串):影片標題video(物件):影片詳細資料url(字串):影片網址text(字串):影片網址的替代文字
media_id(整數):如未直接提供影片網址,則為擷取影片網址的媒體 ID
image(物件):代表含有圖片的訊息title(字串):圖片標題image(物件):圖片詳細資料url(字串):圖片網址text(字串):圖片網址的替代文字
document(物件):代表含有文件的訊息title(字串):文件標題document(物件):文件詳細資料url(字串):文件網址。text(字串):文件網址的替代文字
inline_button(物件):代表一組內嵌按鈕title(字串):內嵌按鈕集的標題buttons(陣列):按鈕物件陣列title(字串):按鈕標題action(字串):按鈕所指動作的名稱link(字串):快速回覆連結動作的網址連結
sticky_button(物件):代表一組固定按鈕title(字串):固定按鈕組合的標題buttons(陣列):按鈕物件陣列title(字串):按鈕標題action(字串):按鈕所指動作的名稱link(字串):快速回覆連結動作的網址連結
content_card(物件):代表內容資訊卡cards(陣列):內容資訊卡物件的陣列title(字串):內容資訊卡的標題body(字串):內容資訊卡的內文
server_message(物件):代表從伺服器擷取的訊息message_id(整數):儲存的伺服器訊息 IDcontent(字串):從伺服器擷取的訊息內容
action(物件):代表在對話期間執行的動作。可以是下列其中一項:action_escalation(物件):代表升級動作action(字串):必須是「escalation」escalation_reason(字串):提報原因。menu_id(整數):應將通訊內容轉送至的 IDlanguage(字串):要轉送的佇列 ISO 689 語言代碼
action_deflection(物件):代表轉移動作action(字串):必須為deflectiondeflection_type(字串):偏轉類型sip_parameters(物件或空值):要轉送的 SIP 參數 (如有),做為轉接的一部分
action_end(物件):代表結束動作action(字串):必須為end
noti(物件):代表通知訊息。可以是各種通知類型:noti_transfer_started(物件):轉移作業開始時的通知。type(字串):必須為notievent(字串):必須是「transferStarted」target(字串):轉移的目標目的地,例如選單或服務專員。agent(物件):啟動轉移作業的代理程式id(整數):代理的 IDemail(字串):服務專員的電子郵件地址name(字串):代理名稱
noti_verification_requested(物件):驗證要求通知type(字串):必須為notievent(字串):必須為verificationRequestedagent(物件):要求驗證的代理商id(整數):要求驗證的代理商 IDemail(字串):要求驗證的代理商電子郵件地址name(字串):要求驗證的代理商名稱
noti_end_user_verified(物件):使用者通過驗證時的通知type(字串):必須為notievent(字串):必須為endUserVerified
其他
noti_\*類型則定義各種事件的通知,例如相片要求、影片要求、共同瀏覽事件、工作虛擬代理程式事件、代理程式加入,以及轉移或升級狀態變更。noti_custom(物件):代表自訂通知。type(字串):必須為notievent(字串):必須為customdetail(物件):自訂事件詳細資料key(字串):代表自訂事件詳細資料的鍵data(物件):自訂事件酬載
轉錄稿項目
entries(陣列):物件陣列,每個物件代表在即時通訊中傳送的個別訊息。timestamp(字串):傳送訊息時的時間戳記type(字串):訊息類型,參照先前說明的其中一個定義,例如text、photo、noti。body(物件):訊息內容,符合訊息類型定義的結構。它使用oneOf允許不同的主體類型。role(字串):傳送訊息的參與者角色。可能的值包括end_user、agent、manager、virtual_agent、external_agent、task_virtual_agent、system。user_data(物件):傳送訊息的使用者資料,除非是 end_user 或系統訊息。name(字串):使用者名稱id(整數):使用者的專屬 ID
avatar_url(字串):使用者顯示圖片的儲存空間網址