In diesem Dokument wird das JSON-Schema erläutert, das zum Strukturieren von Metadaten für Chat-Transkripte verwendet wird. Dieses Schema ist erforderlich, um Chatunterhaltungen genau darzustellen und zu verarbeiten.
Metadatenschema für Chattranskripte
Dieses Schema beschreibt die Datenstruktur von Chat-Transkripten. Die Kernkomponenten werden in den folgenden Abschnitten beschrieben:
Wichtige Informationen zum Transkript
Die folgenden Eigenschaften enthalten die grundlegenden Informationen zum Transkript selbst:
comm_type(String). Die Art der Kommunikation, zu der dieses Transkript gehört. Es kann sich um einen Chat oder einen Anruf handeln, wenn die SMS-Funktion verwendet wird.comm_id(Ganzzahl). Eine Kennung für die Kommunikation, z. B. den Chat oder Anruf, auf den sich dieses Transkript bezieht.transcript_version(String). Die Version des Transkriptformats. Dies ist für die Abwärtskompatibilität beim Parsen von Transkripten erforderlich.assigned_at(String, Datum/Uhrzeit). Der Zeitstempel für die Zuweisung des Chats.timezone(String). Die Zeitzone, in der der Chat stattgefunden hat.
Nachrichtendefinitionen
Der Abschnitt definitions enthält wiederverwendbare Schemakomponenten, die die Struktur verschiedener Nachrichtentypen im Transkript definieren. So können Sie verschiedene Inhaltsformate flexibel verarbeiten:
text(Objekt): stellt eine SMS dartype(String): muss „text“ seincontent(String): Der tatsächliche Textinhalt der Nachrichtlang(String): Die Sprache des Textinhalts.
text_template(Objekt): Stellt eine SMS mit Vorlage dar.type(String): musstext_templateseincontent(String): Der Inhalt der Textvorlage, der möglicherweise Platzhalter enthält.
markdown(Objekt): Stellt eine Nachricht mit Markdown-Formatierung dar.type(String): mussMarkdownseincontent(String): Der Inhalt der Markdown-Vorlage.
markdown_template(Objekt): Stellt eine Markdown-Nachricht mit Vorlage dar.type(String): mussmarkdown_templatesein.content(String): Der Inhalt der Markdown-Vorlage, möglicherweise mit Platzhaltern
photo(Objekt): Stellt eine Nachricht mit einem Foto dar.type(String): mussphotoseinmedia_id(Ganzzahl): Die ID der Mediendatei für das Foto.
video(Objekt): Stellt eine Nachricht mit einem Video dar.title(String): Titel des Videosvideo(Objekt): Details zum Videourl(String): URL des Videostext(String): Textalternative zur Video-URL
media_id(Ganzzahl): Media-ID zum Abrufen der Video-URL, falls nicht direkt angegeben
image(Objekt): Stellt eine Nachricht mit einem Bild dar.title(String): Titel des Bildesimage(object): Details zum Bildurl(String): URL des Bildestext(String): Textalternative zur Bild-URL
document(Objekt): Stellt eine Nachricht mit einem Dokument dar.title(String): Titel des Dokumentsdocument(Objekt): Details zum Dokumenturl(string): URL des Dokuments.text(String): Textalternative zur Dokument-URL
inline_button(Objekt): Stellt eine Gruppe von Inline-Schaltflächen dar.title(String): Titel der Inline-Schaltflächengruppebuttons(Array): Array von Schaltflächenobjektentitle(String): Titel der Schaltflächeaction(String): Name der Aktion, die durch die Schaltfläche angegeben wirdlink(String): URL-Link für Links in Schnellantworten
sticky_button(Objekt): Stellt eine Gruppe von fixierten Schaltflächen dar.title(String): Titel des Sets mit fixierten Schaltflächenbuttons(Array): Array von Schaltflächenobjektentitle(String): Titel der Schaltflächeaction(String): Name der Aktion, die durch die Schaltfläche angegeben wirdlink(String): URL-Link für Links in Schnellantworten
content_card(Objekt): Stellt eine Inhaltskarte dar.cards(Array): Array von Inhaltskartenobjektentitle(String): Titel der Inhaltskartebody(String): Textkörper der Inhaltskarte
server_message(Objekt): Stellt eine vom Server abgerufene Nachricht dar.message_id(Ganzzahl): ID der gespeicherten Servernachrichtcontent(String): Inhalt der vom Server abgerufenen Nachricht
action(Objekt): Stellt eine Aktion dar, die während des Chats ausgeführt wurde. Mögliche Werte:action_escalation(Objekt): Stellt eine Eskalierungsaktion dar.action(String): muss „escalation“ seinescalation_reason(String): Der Grund für die Eskalation.menu_id(Ganzzahl): die ID, an die die Kommunikation eskaliert werden solllanguage(String): ISO 689-Sprachcode der Warteschlange, an die eskaliert werden soll
action_deflection(Objekt): steht für eine Ablenkungsaktionaction(String): mussdeflectionseindeflection_type(String): Der Typ der Ablenkungsip_parameters(Objekt oder Null): SIP-Parameter, die im Rahmen der Umleitung weitergeleitet werden sollen, falls vorhanden
action_end(Objekt): stellt eine Endaktion dar.action(String): mussendsein
noti(Objekt): Stellt eine Benachrichtigungsnachricht dar. Es kann sich um einen von verschiedenen Benachrichtigungstypen handeln:noti_transfer_started(Objekt): Benachrichtigung über den Beginn einer Übertragung.type(String): mussnotiseinevent(String): muss „transferStarted“ seintarget(String): Das Ziel der Übertragung, z. B. ein Menü oder ein Agent.agent(Objekt): Der Agent, der die Übertragung gestartet hat.id(Ganzzahl): ID des Agentenemail(String): E‑Mail-Adresse des Kundenservicemitarbeitersname(String): Name des Agenten
noti_verification_requested(Objekt): Benachrichtigung für einen Überprüfungsantragtype(String): mussnotiseinevent(String): mussverificationRequestedseinagent(object): der Agent, der die Überprüfung anfordertid(Ganzzahl): ID des Agenten, der die Bestätigung anfordertemail(String): E‑Mail-Adresse des Kundenservicemitarbeiters, der die Bestätigung anfordertname(String): Name des Agents, der die Überprüfung beantragt
noti_end_user_verified(Objekt): Benachrichtigung, wenn ein Endnutzer bestätigt wirdtype(String): mussnotiseinevent(String): mussendUserVerifiedsein
Andere
noti_\*-Typen definieren Benachrichtigungen für verschiedene Ereignisse wie Fotoanfragen, Videoanfragen, Ereignisse für die gemeinsame Nutzung, Ereignisse für den virtuellen Kundenservicemitarbeiter, das Hinzukommen eines Kundenservicemitarbeiters sowie Statusänderungen bei Übertragungen oder Eskalierungen.noti_custom(Objekt): Stellt eine benutzerdefinierte Benachrichtigung dar.type(String): mussnotiseinevent(String): musscustomseindetail(Objekt): Details zum benutzerdefinierten Ereigniskey(String): Schlüssel, der das benutzerdefinierte Ereignisdetail darstelltdata(Objekt): benutzerdefinierte Ereignisnutzlast
Transkripteinträge
entries(Array): Ein Array von Objekten, wobei jedes Objekt eine einzelne im Chat gesendete Nachricht darstellt.timestamp(String): Der Zeitstempel für den Versand der Nachrichttype(String): Der Typ der Meldung, der auf eine der zuvor beschriebenen Definitionen verweist, z. B.text,photo,noti.body(Objekt): Der Inhalt der Nachricht, der der Struktur des Nachrichtentyps entspricht. DankoneOfkönnen unterschiedliche Körpertypen berücksichtigt werden.role(String): Die Rolle des Teilnehmers, der die Nachricht gesendet hat. Mögliche Werte sindend_user,agent,manager,virtual_agent,external_agent,task_virtual_agent,system.user_data(object): Daten für den Nutzer, der die Nachricht gesendet hat, sofern es sich nicht um eine Endnutzer- oder Systemnachricht handelt.name(String): Der Name des Nutzers.id(Ganzzahl): Die eindeutige ID des Nutzers
avatar_url(String): Speicher-URL für den Avatar des Nutzers