Простейший пример приложения

Отправка и получение сообщений и событий являются основными аспектами общения между агентом и пользователем. Агенты отправляют сообщения, события и запросы пользователям через API бизнес-сообщений, но получают созданные пользователем сообщения и события на своих веб-перехватчиках в формате JSON.

Ниже приведен пример потока беседы, в котором используются примеры данных, чтобы проиллюстрировать, как сообщения, события и запросы могут создавать полезные и значимые взаимодействия.

В этом примере пользователь начинает разговор и отправляет сообщение «Hello, I’m World!», затем агент отвечает «Hello, World».

  1. Пользователь начинает разговор с агентом.
  2. Как только пользователь начинает вводить ответ, он отправляет агенту событие ввода.

    {
     
    "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. Пользователь отправляет «Привет, я мир!» как сообщение.

    {
     
    "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. Агент отправляет сообщение «Hello, World».

    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. При доставке сообщения устройство пользователя возвращает уведомление о доставке.

    {
     
    "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",
    }