Mengirim dan menerima pesan serta peristiwa adalah aspek inti komunikasi antara agen dan pengguna. Agen mengirim pesan, peristiwa, dan permintaan kepada pengguna melalui permintaan HTTP POST ke RBM API, tetapi menerima pesan dan peristiwa yang dibuat pengguna sebagai JSON dari Cloud Pub/Sub.
Berikut adalah contoh alur percakapan yang menggunakan data sampel untuk menggambarkan bagaimana pesan, peristiwa, dan permintaan dapat menghasilkan interaksi yang berguna dan bermakna.
Halo, Dunia!
Dalam contoh ini, agen mengirimkan Hello, World!
sebagai
pesan kepada pengguna, dan pengguna merespons dengan Hello to you!
.
Agen mengirim permintaan pemeriksaan kemampuan untuk memverifikasi bahwa perangkat pengguna berkemampuan RBM.
Agen mengirimkan:
GET /v1/phones/+12223334444/capabilities?requestId=147547143069602483572 HTTP/1.1 Host: us-rcsbusinessmessaging.googleapis.com Content-Type: application/json
Platform RBM mengirimkan respons pemeriksaan kemampuan kepada agen yang menunjukkan bahwa perangkat pengguna dapat menerima pesan RBM.
Agen menerima:
{ "rbmEnabled": true, "features": [ "REVOCATION", "RICHCARD_STANDALONE", "RICHCARD_CAROUSEL", "ACTION_CREATE_CALENDAR_EVENT", "ACTION_DIAL", "ACTION_OPEN_URL", "ACTION_SHARE_LOCATION", "ACTION_VIEW_LOCATION" ] }
Agen mengirim pesan
Hello, World!
ke RBM API, yang meneruskannya ke perangkat pengguna.Agen mengirimkan:
POST /v1/phones/+12223334444/agentMessages?messageId=123 HTTP/1.1 Host: us-rcsbusinessmessaging.googleapis.com Content-Type: application/json { "contentMessage": { "text": "Hello, World!", } }
Platform RBM mengirim pesan ke perangkat pengguna dan mengirim peristiwa
DELIVERED
ke agen.Agen menerima:
{ "senderPhoneNumber": "+12223334444", "eventType": "DELIVERED", "eventId": "Ms6oOiEli6QS-fe8QFrmhfIg", "messageId": "123" }
Pengguna membuka pesan di perangkatnya yang mengirimkan peristiwa
READ
ke agen.Agen menerima:
{ "senderPhoneNumber": "+12223334444", "eventType": "READ", "eventId": "Ms6oOiEli6QS-ge9ZFsmgTj", "messageId": "123" }
Pengguna menulis dan mengirim balasan ke agen.
Agen menerima:
{ "senderPhoneNumber": "+12223334444", "messageId": "msg000999888777a", "sendTime": "2018-12-31T15:01:23.045123456Z", "text": "Hello to you!", }
Platform RBM secara otomatis mengirimkan peristiwa
DELIVERED
ke perangkat pengguna saat menerima pesan pengguna.Agen mengirim peristiwa
READ
sebagai respons terhadap pesan pengguna untuk memberi tahu bahwa pesan telah diterima dan dikonfirmasi.Agen mengirimkan:
{ "eventType": "READ", "messageId": "msg000999888777a" }