কথোপকথন প্রবাহিত হয়

বার্তা এবং ইভেন্টগুলি পাঠানো এবং গ্রহণ করা একটি এজেন্ট এবং ব্যবহারকারীর মধ্যে যোগাযোগের মূল দিক। এজেন্টরা RBM API-এ HTTP POST অনুরোধের মাধ্যমে ব্যবহারকারীদের বার্তা, ইভেন্ট এবং অনুরোধ পাঠায় কিন্তু Cloud Pub/Sub থেকে JSON হিসাবে ব্যবহারকারীর তৈরি বার্তা এবং ইভেন্টগুলি গ্রহণ করে।

নীচে একটি উদাহরণ কথোপকথন প্রবাহ যা বার্তা, ইভেন্ট এবং অনুরোধগুলি কীভাবে দরকারী এবং অর্থপূর্ণ মিথস্ক্রিয়া তৈরি করতে পারে তা বোঝাতে নমুনা ডেটা ব্যবহার করে।

ওহে বিশ্ব!

একজন এজেন্ট এবং একজন ব্যবহারকারীর মধ্যে একটি মৌলিক কথোপকথন।

এই উদাহরণে, এজেন্ট Hello, World! ব্যবহারকারীর কাছে একটি বার্তা হিসাবে, এবং ব্যবহারকারী Hello to you! .

একটি এজেন্ট থেকে একটি বার্তা এবং একটি ব্যবহারকারীর কাছ থেকে একটি প্রতিক্রিয়া একটি ক্রম চিত্র।

  1. ব্যবহারকারীর ডিভাইসটি RBM-সক্ষম কিনা তা যাচাই করতে এজেন্ট একটি সক্ষমতা যাচাইয়ের অনুরোধ পাঠায়।

    এজেন্ট পাঠায়:

    GET
    /v1/phones/+12223334444/capabilities?requestId=147547143069602483572
    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
    HTTP/1.1
    Host: us-rcsbusinessmessaging.googleapis.com
    Content-Type: application/json
    {
      "contentMessage": {
        "text": "Hello, World!",
      }
    }
  4. RBM প্ল্যাটফর্ম ব্যবহারকারীর ডিভাইসে বার্তা পাঠায় এবং এজেন্টকে একটি DELIVERED ইভেন্ট পাঠায়।

    এজেন্ট পায়:

    {
      "senderPhoneNumber": "+12223334444",
      "eventType": "DELIVERED",
      "eventId": "Ms6oOiEli6QS-fe8QFrmhfIg",
      "messageId": "123"
    }
  5. ব্যবহারকারী তাদের ডিভাইসে বার্তাটি খোলে, যা এজেন্টকে একটি READ ইভেন্ট পাঠায়।

    এজেন্ট পায়:

    {
      "senderPhoneNumber": "+12223334444",
      "eventType": "READ",
      "eventId": "Ms6oOiEli6QS-ge9ZFsmgTj",
      "messageId": "123"
    }
  6. ব্যবহারকারী লেখেন এবং এজেন্টকে একটি উত্তর পাঠান।

    এজেন্ট পায়:

    {
      "senderPhoneNumber": "+12223334444",
      "messageId": "msg000999888777a",
      "sendTime": "2018-12-31T15:01:23.045123456Z",
      "text": "Hello to you!",
    }
  7. RBM প্ল্যাটফর্ম স্বয়ংক্রিয়ভাবে ব্যবহারকারীর ডিভাইসটিকে একটি DELIVERED ইভেন্ট পাঠায় যখন এটি ব্যবহারকারীর বার্তা পায়।

  8. এজেন্ট ব্যবহারকারীর বার্তার প্রতিক্রিয়া হিসাবে একটি READ ইভেন্ট পাঠায় যাতে তারা এটি গৃহীত এবং স্বীকার করা হয়।

    এজেন্ট পাঠায়:

    {
      "eventType": "READ",
      "messageId": "msg000999888777a"
    }