Nas conversas do Business Messages, os eventos informam e enriquecem a conversa de usuários e agentes comunicando conteúdo não em mensagem. Para usuários, os eventos são exibidos como notificações nas conversas e são acionados com base nas várias ações que os usuários podem realizar. Os agentes recebem eventos e enviar eventos com chamadas de API.
Os agentes devem estar cientes dos eventos iniciados pelo usuário e ser capazes de responder de maneira adequada. Por exemplo, se um usuário solicitar um atendente, mas ele não responder positiva ou negativamente à solicitação, o que resulta em um do usuário.
Tipos de evento
Cada evento pertence a um tipo específico:
Eventos Live agent requested indica que o usuário quer falar diretamente com um atendente.
Se o agente puder fazer a transição da conversa para um representante humano, envie um evento mesclado representativo e, em seguida, envia as mensagens subsequentes de um representante humano.
Se o agente não conseguir fazer a transição da conversa para um representante humano, envie uma mensagem para notificar o usuário e informar quando um atendente disponíveis.
Os eventos representantes que participam/esquerda informam aos usuários quando os atendentes entram ou sair de uma conversa. Estes eventos mostram notificações na conversa e ajudar a definir as expectativas do usuário em relação à capacidade de resposta e os tipos de perguntas que eles podem fazer.
Os eventos Typing indicam que o usuário ou agente está digitando.
Para os usuários, o booleano
isTyping
indica o status de digitação. Cada status a mudança aciona um novo evento.Os agentes podem enviar eventos
TYPING_STARTED
eTYPING_STOPPED
para serem exibidos de digitação de indicadores na conversa. Digitar eventos de agentes informa aos usuários que um representante humano esteja escrevendo uma resposta ou que que a automação esteja processando a pergunta ou solicitação.
Enviar um evento
Para enviar um evento, execute o comando a seguir. Substitua os seguintes itens:
- CONVERSATION_ID pelo identificador da conversa que você quer. para enviar a pesquisa
- EVENT_ID por um identificador exclusivo para o evento
- PATH_TO_SERVICE_ACCOUNT_KEY pelo caminho para sua conta de serviço. chave na sua máquina
- EVENT_TYPE com um valor de
EventType
- REPRESENTATIVE_NAME pelo nome voltado ao usuário do agente humano ou automação criando o evento
- REPRESENTATIVE_TYPE com um valor de
RepresentativeType
curl -X POST "https://businessmessages.googleapis.com/v1/conversations/CONVERSATION_ID /events?eventId=EVENT_ID " \ -H "Content-Type: application/json" \ -H "User-Agent: curl/business-messages" \ -H "`oauth2l header --jsonPATH_TO_SERVICE_ACCOUNT_KEY businessmessages`" \ -d "{ 'eventType': 'EVENT_TYPE ', 'representative': { 'avatarImage': 'REPRESENTATIVE_AVATAR_URL ', 'displayName': 'REPRESENTATIVE_NAME ', 'representativeType': 'REPRESENTATIVE_TYPE ', }, }"
Para opções de formatação e valor, consulte
conversations.events
Exemplo: enviar um evento que participe de um representante
# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # https://www.apache.org/licenses/LICENSE-2.0 # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # This code sends a REPRESENTATIVE_JOINED event to the user. # Read more: https://developers.google.com/business-communications/business-messages/guides/how-to/message/events#send # Replace the __CONVERSATION_ID__ with a conversation id that you can send messages to # Make sure a service account key file exists at ./service_account_key.json curl -X POST "https://businessmessages.googleapis.com/v1/conversations/__CONVERSATION_ID__/events?eventId=6a0af2c6-787d-4097-870d-93fe20351747" \ -H "Content-Type: application/json" \ -H "User-Agent: curl/business-messages" \ -H "$(oauth2l header --json ./service_account_key.json businessmessages)" \ -d "{ 'eventType': 'REPRESENTATIVE_JOINED', 'representative': { 'avatarImage': 'https://developers.google.com/identity/images/g-logo.png', 'displayName': 'Chatbot', 'representativeType': 'HUMAN' } }"
Receber um evento
Quando um usuário aciona um evento no dispositivo, seu agente recebe o evento em com o webhook. Receber e processar eventos da mesma forma que recebe .
Os eventos iniciados pelo usuário têm o formato a seguir.
{ "agent": "brands/BRAND_ID /agents/AGENT_ID ", "requestId": "REQUEST_ID ", "conversationId": "CONVERSATION_ID ", "customAgentId": "CUSTOM_AGENT_ID ", "sendTime": "SEND_TIME ", "userStatus": { "isTyping": "BOOLEAN ", "requestedLiveAgent": "BOOLEAN ", "createTime": "CREATION_TIME ", } }
Para opções de formatação e valor, consulte
UserMessage