Halo, Dunia

Mengirim dan menerima pesan serta peristiwa adalah aspek komunikasi utama antara agen dan pengguna. Agen mengirim pesan, peristiwa, dan permintaan ke pengguna melalui Business Messages API, tetapi menerima pesan dan peristiwa yang dibuat pengguna di webhook mereka sebagai JSON.

Berikut adalah contoh alur percakapan yang menggunakan sampel data untuk menggambarkan bagaimana pesan, peristiwa, dan permintaan dapat menghasilkan interaksi yang berguna dan bermakna.

Dalam contoh ini, pengguna memulai percakapan dan mengirimkan pesan "Halo, I'm Dunia!", lalu agen merespons dengan "Halo, Dunia".

  1. Pengguna memulai percakapan dengan agen.
  2. Setelah mulai mengetik respons, pengguna akan mengirim peristiwa pengetikan ke agen.

    {
      "agent": "brands/1111/agents/2222",
      "conversationId": "3333",
      "customAgentId": "hello-world-bot",
      "requestId": "1234567890",
      "userStatus": {
        "isTyping": "true",
        "createTime": "2020-10-02T15:01:23.045123456Z",
      },
      "sendTime": "2020-10-02T15:01:24.045123456Z",
    }
    
  3. Pengguna mengirim "Halo, Saya Dunia!" sebagai pesan.

    {
      "agent": "brands/1111/agents/2222",
      "conversationId": "3333",
      "customAgentId": "hello-world-bot",
      "requestId": "123123123",
      "message": {
        "messageId": "4444",
        "name": "conversations/12345/messages/67890",
        "text": "Hello! I'm World!",
        "createTime": "2020-10-02T15:05:23.045123456Z",
      },
      "context": {
        "entryPoint": "PLACESHEET",
        "userInfo": {
          "displayName": "Michael",
          "userDeviceLocale": "en",
        },
        "resolvedLocale": "en",
      }
      "sendTime": "2020-10-02T15:05:24.045123456Z",
    }
    
  4. Agen akan mengirimkan "Hello, World" sebagai pesan.

    curl -X POST "https://businessmessages.googleapis.com/v1/conversations/3333/messages" \
    -H "Content-Type: application/json" \
    -H "`oauth2l header --json path/to/service/account/key.json businessmessages`" \
    -d "{
        'messageId': '5555',
        'text': 'Hello, World',
        'representative': {
          'avatarImage': 'https://hello.world/avatar.jpg',
          'displayName': 'Hello World Agent',
          'representativeType': 'BOT'
      }
    }"
    
  5. Setelah pengiriman pesan, perangkat pengguna akan menampilkan tanda terima pengiriman.

    {
      "agent": "brands/1111/agents/2222",
      "conversationId": "3333",
      "customAgentId": "hello-world-bot",
      "receipts" : {
        "receipts": [
          {
            "message": "conversations/3333/messages/5555",
            "receiptType": "DELIVERED",
          }
        ],
        "createTime": "2020-10-02T16:01:23.045123456Z",
      },
      "sendTime": "2020-10-02T16:01:24.045123456Z",
    }