โฟลว์การสนทนา

การรับส่งข้อความและกิจกรรมเป็นหัวใจสําคัญของการสื่อสารระหว่างตัวแทนกับผู้ใช้ ตัวแทนจะส่งข้อความ กิจกรรม และคำขอไปยังผู้ใช้ผ่านคำขอ HTTP POST ไปยัง RBM API แต่จะได้รับข้อความและกิจกรรมที่ผู้ใช้สร้างขึ้นที่ webhook ที่กําหนดค่าไว้

ต่อไปนี้คือตัวอย่างของขั้นตอนการสนทนาที่ใช้ข้อมูลตัวอย่างเพื่อแสดงให้เห็นว่าข้อความ เหตุการณ์ และคำขอสามารถสร้างการโต้ตอบที่มีประโยชน์และเหมาะสมได้อย่างไร

สวัสดี

การสนทนาพื้นฐานระหว่างตัวแทนและผู้ใช้

ในตัวอย่างนี้ ตัวแทนส่ง Hello, World! เป็นข้อความถึงผู้ใช้ และผู้ใช้ตอบกลับด้วย Hello to you!

ลำดับข้อความจากตัวแทนและการตอบกลับจากผู้ใช้

  1. ตัวแทนจะส่งคําขอตรวจสอบความสามารถเพื่อยืนยันว่าอุปกรณ์ของผู้ใช้รองรับ RBM

    ตัวแทนจะส่งข้อมูลต่อไปนี้

    GET
    /v1/phones/+12223334444/capabilities?requestId=147547143069602483572&agentId=welcome-bot
    HTTP/1.1
    Host: us-rcsbusinessmessaging.googleapis.com
    Content-Type: application/json
  2. แพลตฟอร์ม 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"
       ]
    }
  3. ตัวแทนจะส่งข้อความ 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!",
      }
    }
  4. แพลตฟอร์ม RBM จะส่งข้อความไปยังอุปกรณ์ของผู้ใช้และส่งเหตุการณ์ DELIVERED ไปยังตัวแทน

    ตัวแทนจะได้รับข้อมูลต่อไปนี้

    {
      "senderPhoneNumber": "+12223334444",
      "agentId": "welcome-bot@rbm.goog",
      "eventType": "DELIVERED",
      "eventId": "Ms6oOiEli6QS-fe8QFrmhfIg",
      "messageId": "123"
    }
  5. ผู้ใช้เปิดข้อความในอุปกรณ์ ซึ่งจะส่งเหตุการณ์ READ ไปยังตัวแทน

    ตัวแทนจะได้รับข้อมูลต่อไปนี้

    {
      "senderPhoneNumber": "+12223334444",
      "agentId": "welcome-bot@rbm.goog",
      "eventType": "READ",
      "eventId": "Ms6oOiEli6QS-ge9ZFsmgTj",
      "messageId": "123"
    }
  6. ผู้ใช้เขียนและส่งการตอบกลับไปยังตัวแทน

    ตัวแทนจะได้รับสิ่งต่อไปนี้

    {
      "senderPhoneNumber": "+12223334444",
      "agentId": "welcome-bot@rbm.goog",
      "messageId": "msg000999888777a",
      "sendTime": "2018-12-31T15:01:23.045123456Z",
      "text": "Hello to you!",
    }
  7. แพลตฟอร์ม RBM จะส่งเหตุการณ์ DELIVERED ไปยังอุปกรณ์ของผู้ใช้โดยอัตโนมัติเมื่อได้รับข้อความของผู้ใช้

  8. ตัวแทนส่งเหตุการณ์ 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"
    }