Nelle conversazioni di Business Messages, gli eventi informano e arricchiscono il dialogo l'esperienza di utenti e agenti comunicando contenuti diversi dai messaggi. Per gli utenti, gli eventi vengono visualizzati come notifiche all'interno delle loro conversazioni e attivano in base alle varie azioni che gli utenti potrebbero eseguire. Gli agenti ricevono gli eventi presso webhook e invia eventi con chiamate API.
Gli agenti devono essere a conoscenza degli eventi avviati dall'utente ed essere in grado di rispondere di conseguenza. Ad esempio, se un utente richiede un operatore, ma l'agente non può rispondere positivamente o negativamente alla richiesta, il che si traduce in un errore da parte dell'utente un'esperienza senza intervento manuale.
Tipi di eventi
Ogni evento appartiene a un particolare tipo:
Gli eventi richiesti da un operatore indicano che l'utente vuole parlare. direttamente con un operatore.
Se l'agente può trasferire la conversazione a un rappresentante in persona, invia a un evento Un rappresentante ha partecipato, quindi invia messaggi successivi da un e un rappresentante umano.
Se l'agente non riesce a passare la conversazione a un rappresentante umano, invia un messaggio per informare l'utente e informarlo quando un operatore verrà disponibili.
Gli eventi di rappresentanza che partecipano o di sinistra informano gli utenti quando gli operatori partecipano o entrano abbandona una conversazione. Questi eventi mostrano notifiche nella conversazione e definire le aspettative degli utenti in merito alla reattività e ai tipi di le domande che possono porre.
Gli eventi di digitazione indicano che l'utente o l'agente sta digitando.
Per gli utenti, il valore booleano
isTyping
indica lo stato di digitazione. Ogni stato modifica attiva un nuovo evento.Gli agenti possono inviare eventi
TYPING_STARTED
eTYPING_STOPPED
da visualizzare di digitazione nella conversazione. Gli eventi di digitazione degli agenti indicano agli utenti che un rappresentante umano sta componendo una risposta o quel backend l'automazione sta elaborando la domanda o la richiesta.
Invia un evento
Per inviare un evento, esegui questo comando. Sostituisci i seguenti elementi:
- CONVERSATION_ID con l'identificatore della conversazione che ti interessa per inviare il sondaggio
- EVENT_ID con un identificatore univoco per l'evento
- PATH_TO_SERVICE_ACCOUNT_KEY con il percorso del tuo account di servizio chiave sulla tua macchina
- EVENT_TYPE con un valore da
EventType
- REPRESENTATIVE_NAME con il nome dell'agente visibile agli utenti o un'automazione che crea l'evento
- REPRESENTATIVE_TYPE con un valore da
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 --json PATH_TO_SERVICE_ACCOUNT_KEY businessmessages`" \ -d "{ 'eventType': 'EVENT_TYPE', 'representative': { 'avatarImage': 'REPRESENTATIVE_AVATAR_URL', 'displayName': 'REPRESENTATIVE_NAME', 'representativeType': 'REPRESENTATIVE_TYPE', }, }"
Per le opzioni di formattazione e valore, consulta
conversations.events
Esempio: inviare un evento partecipante rappresentativo
# 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' } }"
Ricevi un evento
Quando un utente attiva un evento sul suo dispositivo, l'agente riceve l'evento all'indirizzo e il suo webhook. Ricevi ed elabora gli eventi nello stesso modo in cui ricevi messaggi.
Gli eventi avviati dall'utente hanno il seguente formato.
{ "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", } }
Per le opzioni di formattazione e valore, consulta
UserMessage