Dokumen ini menjelaskan skema JSON yang digunakan untuk menyusun metadata untuk transkrip chat. Skema ini diperlukan untuk merepresentasikan dan memproses percakapan chat secara akurat.
Skema metadata transkrip chat
Skema ini menjelaskan data struktur data transkrip chat. Komponen inti dijelaskan di bagian berikut:
Informasi transkrip inti
Properti berikut memberikan informasi mendasar tentang transkrip itu sendiri:
comm_type(string). Jenis komunikasi yang dimiliki transkrip ini. Komunikasi ini dapat berupa chat atau panggilan untuk panggilan dengan fungsi SMS gabungan.comm_id(integer). ID untuk komunikasi, misalnya — chat atau panggilan yang terkait dengan transkrip ini.transcript_version(string). Versi format transkrip. Hal ini diperlukan untuk kompatibilitas mundur saat mengurai transkrip.assigned_at(string, date-time). Stempel waktu saat chat ditetapkan.timezone(string). Zona waktu saat chat dilakukan.
Definisi Pesan
Bagian definitions berisi komponen skema yang dapat digunakan kembali yang menentukan struktur berbagai jenis pesan dalam transkrip. Hal ini memberikan fleksibilitas dalam menangani berbagai format konten:
text(object): mewakili pesan tekstype(string): harus "text"content(string): konten teks sebenarnya dari pesanlang(string): bahasa konten teks
text_template(object): mewakili pesan teks yang menggunakan templatetype(string): harustext_templatecontent(string): konten template teks, yang mungkin menyertakan placeholder
markdown(object): mewakili pesan menggunakan format Markdowntype(string): harusMarkdowncontent(string): konten template Markdown
markdown_template(object): mewakili pesan Markdown yang menggunakan templatetype(string): harusmarkdown_template.content(string): konten template Markdown, mungkin dengan placeholder
photo(object): mewakili pesan yang berisi fototype(string): harusphotomedia_id(integer): ID file media untuk foto
video(object): mewakili pesan yang berisi videotitle(string): judul videovideo(object): detail tentang videourl(string): URL videotext(string): alternatif teks untuk URL video
media_id(integer): ID media untuk mengambil URL video jika tidak diberikan secara langsung
image(object): mewakili pesan yang berisi gambartitle(string): judul gambarimage(object): detail tentang gambarurl(string): URL gambartext(string): alternatif teks untuk URL gambar
document(object): mewakili pesan yang berisi dokumentitle(string): judul dokumendocument(object): detail tentang dokumenurl(string): URL dokumen.text(string): alternatif teks untuk URL dokumen
inline_button(object): mewakili kumpulan tombol inlinetitle(string): judul kumpulan tombol inlinebuttons(array): array objek tomboltitle(string): judul tombolaction(string): nama tindakan yang ditunjukkan oleh tombollink(string): URL link untuk tindakan link balasan cepat
sticky_button(object): mewakili kumpulan tombol tetaptitle(string): judul kumpulan tombol tetapbuttons(array): array objek tomboltitle(string): judul tombolaction(string): nama tindakan yang ditunjukkan oleh tombollink(string): URL link untuk tindakan link balasan cepat
content_card(object): mewakili kartu kontencards(array): array objek kartu kontentitle(string): judul kartu kontenbody(string): teks isi kartu konten
server_message(object): mewakili pesan yang diambil dari servermessage_id(integer): ID pesan server yang disimpancontent(string): konten pesan yang diambil dari server
action(object): mewakili tindakan yang dilakukan selama chat. Tindakan ini dapat berupa salah satu hal berikut:action_escalation(object): mewakili tindakan eskalasiaction(string): harus "escalation"escalation_reason(string): alasan eskalasi.menu_id(integer): ID tempat komunikasi harus ditingkatkanlanguage(string): kode bahasa ISO 689 dari antrean tempat eskalasi
action_deflection(object): mewakili tindakan pengalihanaction(string): harusdeflectiondeflection_type(string): jenis pengalihansip_parameters(object atau null): parameter SIP yang akan diteruskan sebagai bagian dari pengalihan, jika ada
action_end(object): mewakili tindakan akhiraction(string): harusend
noti(object): mewakili pesan notifikasi. Pesan ini dapat berupa salah satu dari berbagai jenis notifikasi:noti_transfer_started(object): notifikasi untuk transfer yang dimulai.type(string): harusnotievent(string): harus "transferStarted"target(string): tujuan target transfer, misalnya — menu atau agen.agent(object): agen yang memulai transferid(integer): ID agenemail(string): email agenname(string): nama agen
noti_verification_requested(object): notifikasi untuk permintaan verifikasitype(string): harusnotievent(string): harusverificationRequestedagent(object): agen yang meminta verifikasiid(integer): ID agen yang meminta verifikasiemail(string): email agen yang meminta verifikasiname(string): nama agen yang meminta verifikasi
noti_end_user_verified(object): notifikasi untuk saat pengguna akhir diverifikasitype(string): harusnotievent(string): harusendUserVerified
Jenis
noti_\*lainnya menentukan notifikasi untuk berbagai peristiwa seperti permintaan foto, permintaan video, peristiwa penjelajahan bersama, peristiwa agen virtual tugas, bergabungnya agen, dan perubahan status transfer atau eskalasi.noti_custom(object): mewakili notifikasi kustom.type(string): harusnotievent(string): haruscustomdetail(object): detail peristiwa kustomkey(string): kunci yang mewakili detail peristiwa kustomdata(object): payload peristiwa yang ditentukan kustom
Entri transkrip
entries(array): Array objek, dengan setiap objek mewakili pesan individual yang dikirim dalam chat.timestamp(string): stempel waktu saat pesan dikirimtype(string): jenis pesan, yang merujuk ke salah satu definisi yang dijelaskan sebelumnya, misalnya —text,photo,noti.body(object): konten pesan, yang sesuai dengan struktur yang ditentukan oleh jenis pesan. Pesan ini menggunakanoneOfuntuk memungkinkan berbagai jenis isi.role(string): peran peserta yang mengirim pesan. Nilai yang mungkin mencakupend_user,agent,manager,virtual_agent,external_agent,task_virtual_agent,system.user_data(object): data untuk pengguna yang mengirim pesan, kecuali jika pesan tersebut adalah pesan end_user atau sistem.name(string): nama penggunaid(integer): ID unik pengguna
avatar_url(string): URL penyimpanan untuk avatar pengguna