Gdy użytkownicy komunikują się z agentami, oczekiwania są określane przez sposób, w jaki agent się prezentuje i do kogo są wysyłane wiadomości. Za każdym razem, gdy agent wyśle wiadomość, może określić, czy wiadomość została utworzona przez automatycznego (BOT
) czy pracownika obsługi klienta (HUMAN
) przedstawiciela. Użytkownicy widzą te informacje w rozmowie, a użytkownicy mogą dowiedzieć się, jakiego rodzaju interakcji mogą oczekiwać w danym momencie.
Jeśli agent obsługuje zarówno przedstawicieli BOT
, jak i HUMAN
, ważne jest podanie kontekstu przy przełączaniu się między nimi. Zmieniając rolę BOT
z przedstawiciela HUMAN
, wyślij REPRESENTATIVE_JOINED
zdarzenie przed wysłaniem wiadomości od przedstawiciela HUMAN
i odpowiednio oznacz wszystkie wiadomości od przedstawicieli HUMAN
jako pochodzące od przedstawicieli HUMAN
. Gdy pracownik obsługi klienta opuści rozmowę, wyślij zdarzenie REPRESENTATIVE_LEFT
. Takie zdarzenia kadrowania informują użytkowników, że mogą zadawać bardziej złożone pytania i oczekiwać bardziej swobodnej odpowiedzi.
W ramach tego procesu pierwsze interakcje użytkownika są wykonywane przez automatyczną odpowiedź, która wysyła wiadomości jako przedstawiciel BOT
, ale przedstawiciel na żywo dołącza do rozmowy i wysyła wiadomości jako przedstawiciel HUMAN
. Komunikaty czatu na żywo są kadrowane przez zdarzenia REPRESENTATIVE_JOINED
i REPRESENTATIVE_LEFT
.
- Użytkownik rozpoczyna rozmowę z agentem.
Gdy użytkownik zaczyna pisać odpowiedź, wysyła zdarzenie do agenta.
{ "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", }
Użytkownik wysyła jako wiadomość „Cześć, mam problem”.
{ "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", }
Agent wysyła "dziękujemy za skontaktowanie się z nami. Przekazuję je, gdy na czacie z Tobą będzie dostępny pracownik obsługi klienta.
BOT
Wiadomość od przedstawiciela.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' } }"
Dostępny jest pracownik obsługi klienta.
Przed wysłaniem pierwszej wiadomości na żywo agent wysyła zdarzenie
REPRESENTATIVE_JOINED
.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', }, }"
Pracownik obsługi klienta wysyła od razu wiadomość, że masz problem. Jak mogę pomóc\">w formie wiadomości od przedstawiciela
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' } }"
Czat na żywo z użytkownikiem wykonuje wymianę wiadomości do momentu realizacji żądania użytkownika. Wszystkie wiadomości utworzone przez pracownika obsługi klienta są wysyłane przez przedstawiciela
HUMAN
.Pracownik obsługi klienta wysyła zdarzenie
REPRESENTATIVE_LEFT
, gdy pracownik obsługi klienta opuści rozmowę.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', }, }"
Agent wysyła wszystkie kolejne wiadomości z przedstawicielami
BOT
, chyba że do rozmowy dołączy inny agent na żywo.