Quando gli utenti comunicano con gli agenti, le loro aspettative vengono stabilite dal modo in cui questi ultimi
si presenta e chi compone i messaggi che ricevono. Ogni volta che un agente
invia un messaggio, può identificare se un operatore automatico (BOT) o
(HUMAN)
rappresentativo
ha scritto il messaggio. Gli utenti vedono queste informazioni all'interno della conversazione e
aiuta gli utenti a capire quali tipi di interazioni potrebbero aspettarsi in un determinato
in un determinato momento.
Se un agente supporta sia i rappresentanti BOT sia HUMAN, è importante
fornire un contesto quando si passa da uno all'altro. Quando passi da BOT a
Rappresentante HUMAN, invia REPRESENTATIVE_JOINED
evento prima del giorno
inviare messaggi dal rappresentante di HUMAN ed etichettare correttamente tutti
seguenti messaggi di operatori provenienti da rappresentanti di HUMAN. Quando
l'operatore abbandona la conversazione e invia un evento REPRESENTATIVE_LEFT. Questi
gli eventi di inquadratura informano gli utenti che possono porre domande più complicate e possono
sono previste più risposte libere.
In questo flusso di conversazione, le prime interazioni dell'utente avvengono con una
un risponditore che invia messaggi in qualità di rappresentante di BOT, ma un operatore partecipa
la conversazione e invia messaggi in qualità di rappresentante di HUMAN. Il live streaming
i messaggi dell'agente sono inquadrati da REPRESENTATIVE_JOINED e REPRESENTATIVE_LEFT
eventi.
- L'utente avvia la conversazione con l'agente.
Quando l'utente inizia a digitare una risposta, invia un evento di digitazione all' un agente.
{ "agent": "brands/1111/agents/2222", "conversationId": "3333", "customAgentId": "live-agent-handoff", "requestId": "1234567890", "userStatus": { "isTyping": "true", "createTime": "2020-10-02T15:01:23.045123456Z", }, "sendTime": "2020-10-02T15:01:24.045123456Z", }L'utente invia "Ciao, ho un problema" come messaggio.
{ "agent": "brands/1111/agents/2222", "conversationId": "3333", "customAgentId": "live-agent-handoff", "requestId": "123123123", "message": { "messageId": "4444", "name": "conversations/12345/messages/67890", "text": "Hi, I have a problem", "createTime": "2020-10-02T15:05:23.045123456Z", }, "context": { "entryPoint": "PLACESHEET", "userInfo": { "displayName": "Michael", "userDeviceLocale": "en", }, "resolvedLocale": "en", } "sendTime": "2020-10-02T15:05:24.045123456Z", }L'agente invia "Grazie per averci contattato. Lo indicherò quando un live streaming un agente è disponibile per chattare con te." come messaggio da un
BOTresponsabile.curl -X POST "https://businessmessages.googleapis.com/v1/conversations/3333/messages" \ -H "Content-Type: application/json" \ -H "`oauth2l header --json path/to/service/account/key.json businessmessages`" \ -d "{ 'messageId': '5555', 'text': 'Thanks for contacting us. I'll pass this along when a live agent is available to chat with you.', 'representative': { 'avatarImage': 'https://live.agent/bot-avatar.jpg', 'displayName': 'Hello World Agent', 'representativeType': 'BOT' } }"Un operatore diventa disponibile.
L'agente invia un evento
REPRESENTATIVE_JOINEDprima di inviare il primo un messaggio da parte dell'operatore.curl -X POST "https://businessmessages.googleapis.com/v1/conversations/12345/events?eventId=6666" \ -H "Content-Type: application/json" \ -H "`oauth2l header --json /path/to/service/account/key.json businessmessages`" \ -d "{ 'eventType': 'REPRESENTATIVE_JOINED', 'representative': { 'avatarImage': 'https://live.agent/human-avatar.jpg', 'displayName': 'Jane Doe', 'representativeType': 'HUMAN', }, }"L'agente invia un messaggio "Vedo che hai un problema. Come posso aiutarti?" come messaggio da un rappresentante di
HUMAN.curl -X POST "https://businessmessages.googleapis.com/v1/conversations/3333/messages" \ -H "Content-Type: application/json" \ -H "`oauth2l header --json path/to/service/account/key.json businessmessages`" \ -d "{ 'messageId': '7777', 'text': 'I see you have a problem. How can I help?', 'representative': { 'avatarImage': 'https://live.agent/human-avatar.jpg', 'displayName': 'Jane Doe', 'representativeType': 'HUMAN' } }"L'agente live e l'utente si scambiano messaggi finché la richiesta dell'utente non viene completato. Tutti i messaggi composti dall'agente in tempo reale vengono inviati da un Rappresentante di
HUMAN.L'agente invia un evento
REPRESENTATIVE_LEFTquando l'operatore lascia la conversazione.curl -X POST "https://businessmessages.googleapis.com/v1/conversations/12345/events?eventId=6666" \ -H "Content-Type: application/json" \ -H "`oauth2l header --json /path/to/service/account/key.json businessmessages`" \ -d "{ 'eventType': 'REPRESENTATIVE_LEFT', 'representative': { 'avatarImage': 'https://live.agent/human-avatar.jpg', 'displayName': 'Jane Doe', 'representativeType': 'HUMAN', }, }"L'agente invia tutti i messaggi successivi con
BOTrappresentanti a meno che un altro operatore si unisce alla conversazione.