Установить доступность обмена сообщениями

Прежде чем пользователи смогут начать общение с вашим агентом, необходимо настроить доступность агента для обмена сообщениями в разделе «Рабочие сообщения».

Если пользователь отправляет сообщение вашему агенту в рабочее время, агент приветствует пользователя приветственным сообщением и предлагает варианты начала разговора. Если разговор начинается вне рабочего времени, пользователи видят сообщение агента, отправленное в режиме офлайн. Дополнительную информацию об этих сообщениях см. в разделе «Начать разговор» .

Доступность ботов и людей

Вы можете указать доступность бота и оператора- человека отдельно.

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

Наличие оператора обязательно, если вы хотите запустить агента на управляемых Google точках доступа, включая точки доступа на основе местоположения и точки доступа за пределами вашего региона (за исключением Google Ads). Для указания доступности оператора, укажите только те дни недели и часы, когда у вас есть операторы, готовые ответить на вопросы.

Если боты доступны 24 часа в сутки, а операторы-люди — с 8:00 до 20:00, вы можете указать это отдельно.

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

Обновить доступность сообщений

Для обновления доступности сообщений необходимо отправить PATCH-запрос через API бизнес-коммуникаций, чтобы обновить поля primaryAgentInteraction и additionalAgentInteractions агента.

При обновлении этих полей необходимо указать значения для всех полей объекта SupportedAgentInteraction. Запросы на обновление перезаписывают содержимое всех редактируемых полей, включая дочерние поля. Например, если вы отправляете запрос на добавление экземпляра в hours , необходимо также включить все предыдущие экземпляры поля hours , иначе ваше обновление перезапишет их.

Предварительные требования

Перед обновлением доступности сообщений вам понадобятся следующие элементы:

  • Путь к ключу учетной записи службы вашего проекта GCP на вашей машине разработки.
  • name агента (например, "brands/12345/agents/67890")

    Если вы не знаете name агента, см. раздел «Список всех агентов для данного бренда» .

  • Доступность бота: часовые пояса, дни недели и часы работы.

  • Доступность персонала: часовые пояса, дни недели и часы работы.

Если вам неизвестны текущие значения параметров primaryAgentInteraction и additionalAgentInteractions , см. раздел «Получение информации об агенте» .

Отправьте запрос на обновление.

Для обновления агента выполните следующую команду. Замените переменные значениями, указанными вами в разделе «Предварительные условия» .

Если у вас доступна возможность обмена сообщениями как с ботом, так и с человеком, укажите доступность бота в primaryAgentInteraction , а доступность человека — в экземпляре additionalAgentInteractions .

Бот и человек

# This code updates the agent interaction of a bot and human representatives.
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch

# Replace the __BRAND_ID__ and __AGENT_ID__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.primaryAgentInteraction,businessMessagesAgent.additionalAgentInteractions" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "businessMessagesAgent": {
    "primaryAgentInteraction": {
      "interactionType": "BOT",
      "botRepresentative": {
        "botMessagingAvailability": {
          "hours": [
            {
              "startTime": {
                "hours": 20,
                "minutes": 0
              },
              "endTime": {
                "hours": 8,
                "minutes": 0
              },
              "timeZone": "America/Los_Angeles",
              "startDay": "MONDAY",
              "endDay": "SUNDAY"
            }
          ]
        }
      }
    },
    "additionalAgentInteractions": [
      {
        "interactionType": "HUMAN",
        "humanRepresentative": {
          "humanMessagingAvailability": {
            "hours": [
              {
                "startTime": {
                  "hours": 8,
                  "minutes": 0
                },
                "endTime": {
                  "hours": 20,
                  "minutes": 0
                },
                "timeZone": "America/Los_Angeles",
                "startDay": "MONDAY",
                "endDay": "SUNDAY"
              }
            ]
          }
        }
      }
    ]
  }
}'

Только для бота

# This code updates the primary agent interaction of a bot representative
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch

# Replace the __BRAND_ID__ and __AGENT_ID__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.primaryAgentInteraction" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "businessMessagesAgent": {
    "primaryAgentInteraction": {
      "interactionType": "BOT",
      "botRepresentative": {
        "botMessagingAvailability": {
          "hours": [
            {
              "startTime": {
                "hours": 20,
                "minutes": 0
              },
              "endTime": {
                "hours": 8,
                "minutes": 0
              },
              "timeZone": "America/Los_Angeles",
              "startDay": "MONDAY",
              "endDay": "SUNDAY"
            }
          ]
        }
      }
    }
  }
}'

Только человек

# This code updates the primary agent interaction of a human representative
# Read more: https://developers.google.com/business-communications/business-messages/reference/business-communications/rest/v1/brands.agents/patch

# Replace the __BRAND_ID__ and __AGENT_ID__
# Make sure a service account key file exists at ./service_account_key.json

curl -X PATCH \
"https://businesscommunications.googleapis.com/v1/brands/__BRAND_ID__/agents/__AGENT_ID__?updateMask=businessMessagesAgent.primaryAgentInteraction" \
-H "Content-Type: application/json" \
-H "User-Agent: curl/business-communications" \
-H "$(oauth2l header --json ./service_account_key.json businesscommunications)" \
-d '{
  "businessMessagesAgent": {
    "primaryAgentInteraction": {
      "interactionType": "HUMAN",
      "humanRepresentative": {
        "humanMessagingAvailability": {
          "hours": [
            {
              "startTime": {
                "hours": 20,
                "minutes": 0
              },
              "endTime": {
                "hours": 8,
                "minutes": 0
              },
              "timeZone": "America/Los_Angeles",
              "startDay": "MONDAY",
              "endDay": "SUNDAY"
            }
          ]
        }
      }
    }
  }
}'

Информацию о форматировании и параметрах значений см. в файлах brands.agents.patch и SupportedAgentInteraction .