Отправка и получение сообщений и событий являются основными аспектами общения между агентом и пользователем. Агенты отправляют сообщения, события и запросы пользователям через запросы HTTP POST к API RBM, но получают созданные пользователем сообщения и события через настроенный веб-перехватчик .
Ниже приведен пример потока беседы, в котором используются примеры данных, чтобы проиллюстрировать, как сообщения, события и запросы могут создавать полезные и значимые взаимодействия.
Привет, мир!
В этом примере агент отправляет Hello, World!
как сообщение пользователю, и пользователь отвечает Hello to you!
.
Агент отправляет запрос на проверку возможностей, чтобы убедиться, что устройство пользователя поддерживает RBM.
Агент отправляет:
GET /v1/phones/+12223334444/capabilities?requestId=147547143069602483572&agentId=welcome-bot HTTP/1.1 Host: us-rcsbusinessmessaging.googleapis.com Content-Type: application/json
Платформа RBM отправляет агенту ответ на проверку возможностей, указывающий, что устройство пользователя может получать сообщения RBM.
Агент получает:
{ "rbmEnabled": true, "features": [ "REVOCATION", "RICHCARD_STANDALONE", "RICHCARD_CAROUSEL", "ACTION_CREATE_CALENDAR_EVENT", "ACTION_DIAL", "ACTION_OPEN_URL", "ACTION_SHARE_LOCATION", "ACTION_VIEW_LOCATION" ] }
Агент отправляет сообщение
Hello, World!
сообщение в RBM API, который передает его на устройство пользователя.Агент отправляет:
POST /v1/phones/+12223334444/agentMessages?messageId=123&agentId=welcome-bot HTTP/1.1 Host: us-rcsbusinessmessaging.googleapis.com Content-Type: application/json { "contentMessage": { "text": "Hello, World!", } }
Платформа RBM отправляет сообщение на устройство пользователя и отправляет агенту событие
DELIVERED
.Агент получает:
{ "senderPhoneNumber": "+12223334444", "agentId": "welcome-bot@rbm.goog", "eventType": "DELIVERED", "eventId": "Ms6oOiEli6QS-fe8QFrmhfIg", "messageId": "123" }
Пользователь открывает сообщение на своем устройстве, которое отправляет агенту событие
READ
.Агент получает:
{ "senderPhoneNumber": "+12223334444", "agentId": "welcome-bot@rbm.goog", "eventType": "READ", "eventId": "Ms6oOiEli6QS-ge9ZFsmgTj", "messageId": "123" }
Пользователь пишет и отправляет ответ агенту.
Агент получает:
{ "senderPhoneNumber": "+12223334444", "agentId": "welcome-bot@rbm.goog", "messageId": "msg000999888777a", "sendTime": "2018-12-31T15:01:23.045123456Z", "text": "Hello to you!", }
Платформа RBM автоматически отправляет устройству пользователя событие
DELIVERED
, когда оно получает сообщение пользователя.Агент отправляет событие
READ
в ответ на сообщение пользователя, чтобы сообщить ему, что оно было получено и подтверждено.Агент отправляет:
POST /v1/phones/+12223334444/agentEvents?eventId=1234&agentId=welcome-bot HTTP/1.1 Host: us-rcsbusinessmessaging.googleapis.com Content-Type: application/json { "eventType": "READ", "messageId": "msg000999888777a" }