Enviar eventos

O agente envia eventos de status para o dispositivo do usuário para simular interações humanas. Para os usuários, esses eventos aparecem como confirmações de leitura ou indicadores de digitação, garantindo que as mensagens estão sendo processadas.

Para ver todas as opções de formatação e valor, consulte a referência de phones.agentEvents.

Para detalhes sobre os eventos de webhook que seu agente recebe da plataforma RBM, consulte Receber eventos.

O agente envia um evento READ

Para os usuários, esse evento aparece como uma confirmação de leitura de uma mensagem específica. Ele informa ao usuário que a plataforma RBM entregou a mensagem e que o agente está processando-a.

Os eventos do READ são mantidos e armazenados por 30 dias. Se o usuário tiver o RCS ativado, mas não estiver acessível, o evento será colocado na fila. Se o RCS não estiver ativado, a plataforma RCS for Business vai retornar um erro NOT_FOUND (HTTP 404).

O código a seguir envia um evento READ para uma mensagem com um messageId correspondente.

cURL

curl -X POST "https://REGION-rcsbusinessmessaging.googleapis.com/v1/phones/PHONE_NUMBER/agentEvents?eventId=EVENT_ID&agentId=AGENT_ID" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/rcs-business-messaging" \
-H "`oauth2l header --json PATH_TO_SERVICE_ACCOUNT_KEY rcsbusinessmessaging`" \
-d "{
  'eventType': 'READ',
  'messageId': 'MESSAGE_ID'
}"

Node.js

// Reference to RBM API helper
const rbmApiHelper = require('@google/rcsbusinessmessaging');

// Send the device an event to indicate that messageId has been read
rbmApiHelper.sendReadMessage('+12223334444', messageId);
Este código é um trecho de um agente de exemplo do RBM.

Java

import com.google.rbm.RbmApiHelper;
…

// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper();

// Send the device an event to indicate that messageId has been read
rbmApiHelper.sendReadMessage(messageId, "+12223334444");
Este código é um trecho de um agente de exemplo do RBM.

Python

# Reference to RBM Python client helper and messaging object structure
from rcs_business_messaging import rbm_service

# Send the device an event to indicate that message_id was read
rbm_service.send_read_event('+12223334444', message_id)
Este código é um trecho de um agente de exemplo do RBM.

C#

using RCSBusinessMessaging;
…

// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper(credentialsFileLocation,
                                                 projectId);

// Send the device an event to indicate that messageId has been read
rbmApiHelper.SendReadMessage(messageId, "+12223334444");
Este código é um trecho de um agente de exemplo do RBM.

O agente envia um evento IS_TYPING

Para os usuários, esse evento aparece como um indicador de digitação e informa que o agente está escrevendo uma mensagem. O indicador de digitação expira após um curto período (aproximadamente 5 segundos por padrão) ou quando o dispositivo do usuário recebe uma nova mensagem do seu agente. Seu agente pode enviar vários eventos IS_TYPING para redefinir o timer de expiração do indicador de digitação.

Os eventos do IS_TYPING são temporários e não são colocados em fila.

O código a seguir envia um evento IS_TYPING.

cURL

curl -X POST "https://REGION-rcsbusinessmessaging.googleapis.com/v1/phones/PHONE_NUMBER/agentEvents?eventId=EVENT_ID&agentId=AGENT_ID" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/rcs-business-messaging" \
-H "`oauth2l header --json PATH_TO_SERVICE_ACCOUNT_KEY rcsbusinessmessaging`" \
-d "{
  'eventType': 'IS_TYPING',
}"

Node.js

// Reference to RBM API helper
const rbmApiHelper = require('@google/rcsbusinessmessaging');

// Send the device an event to indicate that the agent is typing
rbmApiHelper.sendIsTypingMessage('+12223334444', function() {
    console.log('Typing event sent!');
});
Este código é um trecho de um agente de exemplo do RBM.

Java

import com.google.rbm.RbmApiHelper;
…

// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper();

// Send the device an event to indicate that the agent is typing
rbmApiHelper.sendIsTypingMessage("+12223334444");
Este código é um trecho de um agente de exemplo do RBM.

Python

# Reference to RBM Python client helper and messaging object structure
from rcs_business_messaging import rbm_service

# Send the device an event to indicate that the agent is typing
rbm_service.send_is_typing_event('+12223334444')
Este código é um trecho de um agente de exemplo do RBM.

C#

using RCSBusinessMessaging;
…

// Create an instance of the RBM API helper
RbmApiHelper rbmApiHelper = new RbmApiHelper(credentialsFileLocation,
                                                 projectId);

// Send the device an event to indicate that the agent is typing
rbmApiHelper.SendIsTypingMessage(messageId, "+12223334444");
Este código é um trecho de um agente de exemplo do RBM.