L'envoi et la réception de messages et d'événements sont les principaux aspects de la communication entre un agent et un utilisateur. Les agents envoient des messages, des événements et des requêtes aux utilisateurs via des requêtes HTTP POST à l'API RBM, mais reçoivent des messages et des événements créés par l'utilisateur au format JSON depuis Cloud Pub/Sub.
Vous trouverez ci-dessous un exemple de flux de conversation qui utilise des exemples de données pour illustrer comment les messages, les événements et les requêtes peuvent créer des interactions utiles et pertinentes.
Bonjour !
Dans cet exemple, l'agent envoie Hello, World!
en tant que message à l'utilisateur, qui répond par Hello to you!
.
L'agent envoie une requête de vérification de capacité pour vérifier que l'appareil de l'utilisateur est compatible RBM.
L'agent envoie:
GET /v1/phones/+12223334444/capabilities?requestId=147547143069602483572 HTTP/1.1 Host: us-rcsbusinessmessaging.googleapis.com Content-Type: application/json
La plate-forme RBM envoie à l'agent une réponse de vérification des capacités indiquant que l'appareil de l'utilisateur peut recevoir des messages RBM.
L'agent reçoit:
{ "rbmEnabled": true, "features": [ "REVOCATION", "RICHCARD_STANDALONE", "RICHCARD_CAROUSEL", "ACTION_CREATE_CALENDAR_EVENT", "ACTION_DIAL", "ACTION_OPEN_URL", "ACTION_SHARE_LOCATION", "ACTION_VIEW_LOCATION" ] }
L'agent envoie le message
Hello, World!
à l'API RBM, qui le transmet à l'appareil de l'utilisateur.L'agent envoie:
POST /v1/phones/+12223334444/agentMessages?messageId=123 HTTP/1.1 Host: us-rcsbusinessmessaging.googleapis.com Content-Type: application/json { "contentMessage": { "text": "Hello, World!", } }
La plate-forme RBM envoie le message à l'appareil de l'utilisateur et envoie un événement
DELIVERED
à l'agent.L'agent reçoit:
{ "senderPhoneNumber": "+12223334444", "eventType": "DELIVERED", "eventId": "Ms6oOiEli6QS-fe8QFrmhfIg", "messageId": "123" }
L'utilisateur ouvre le message sur son appareil, ce qui envoie un événement
READ
à l'agent.L'agent reçoit:
{ "senderPhoneNumber": "+12223334444", "eventType": "READ", "eventId": "Ms6oOiEli6QS-ge9ZFsmgTj", "messageId": "123" }
L'utilisateur écrit et envoie une réponse à l'agent.
L'agent reçoit:
{ "senderPhoneNumber": "+12223334444", "messageId": "msg000999888777a", "sendTime": "2018-12-31T15:01:23.045123456Z", "text": "Hello to you!", }
La plate-forme RBM envoie automatiquement à l'appareil de l'utilisateur un événement
DELIVERED
lorsqu'il reçoit le message de l'utilisateur.L'agent envoie un événement
READ
en réponse au message de l'utilisateur pour lui indiquer qu'il a été reçu et confirmé.L'agent envoie:
{ "eventType": "READ", "messageId": "msg000999888777a" }