Настройте свой партнерский аккаунт

После регистрации в качестве партнера RCS for Business у вас появится партнерская учетная запись. Чтобы получить доступ к настройкам партнерской учетной записи, откройте консоль разработчика RCS for Business и нажмите «Настройки партнерской учетной записи» . Отсюда вы можете выполнить следующие действия:

Обновите информацию о партнерском аккаунте.

На странице «Настройки» вы можете просмотреть свой партнерский идентификатор и обновить следующую информацию:

Поле Описание
Имя партнера Название вашего партнерского аккаунта
Отображаемое имя Имя будет отображаться в отчетах о выставлении счетов , которые получают операторы связи (в поле owner_name ). Операторы связи будут использовать это имя, чтобы идентифицировать вас как надежного партнера и генерировать корректную информацию для выставления счетов за использование вами RCS for Business для связи с их абонентами. Указанное вами имя должно совпадать с именем, используемым в ваших договорах с операторами связи на обмен сообщениями.
Контактное лицо по техническим вопросам

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

  • Имя
  • Корпоративный адрес электронной почты
  • Номер телефона
Вебхук Это URL-адрес конечной точки вашего веб-перехватчика. Нажмите «Настроить» , чтобы обновить его. После настройки веб-перехватчика партнера он будет применяться ко всем вашим агентам. Если вы хотите использовать другой веб-перехватчик для отдельного агента, вы можете настроить веб-перехватчик агента , который будет применяться только к этому агенту.

Управление брендами

В качестве партнера RCS for Business вы можете создавать агентов от имени брендов.

Используйте страницу «Бренды» в настройках учетной записи , чтобы добавлять, редактировать и удалять бренды, связанные с вашей партнерской учетной записью.

Добавить бренд

Чтобы добавить бренд, введите его название в поле ввода и нажмите «Добавить» .

Редактировать бренд

Для редактирования бренда:

  1. Установите флажок рядом с названием бренда.
  2. Нажмите кнопку , а затем кнопку "Изменить имя" .
  3. Внесите необходимые изменения и нажмите «Готово» .

Удалить бренд

Бренд нельзя удалить, если он связан с агентом, даже если этот агент еще не запущен.

Чтобы удалить бренд, установите флажок рядом с названием бренда и нажмите кнопку «Удалить» .

Управление пользователями

На странице «Пользователи» в настройках учетной записи вы управляете пользователями партнерской учетной записи. Пользователь, создавший партнерскую учетную запись, имеет роль «Владелец». Новые пользователи могут иметь роль «Менеджер» или «Читатель».

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

Добавить пользователя

Чтобы добавить пользователя, введите его адрес электронной почты в поле ввода и выберите его роль .

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

Удалить пользователя

Чтобы удалить пользователя:

  1. Найдите пользователя, которого хотите удалить, и нажмите кнопку в строке его таблицы.
  2. Выберите «Удалить пользователя» .
  3. Подтвердите удаление.

Удаленный вами пользователь получит электронное письмо с уведомлением о том, что он больше не имеет доступа к партнерскому аккаунту.

Удалить пользователя с ролью «Владелец» невозможно. Чтобы изменить или удалить владельца, необходимо обратиться в службу поддержки .

Изменить роль пользователя

Чтобы обновить роль пользователя:

  1. Найдите пользователя, данные которого хотите обновить, и нажмите кнопку в строке таблицы, содержащей его данные.
  2. Выберите «Изменить роль» .
  3. Выберите новую роль из выпадающего списка.
  4. Нажмите « Сохранить ».

Настройте учетную запись службы для аутентификации вызовов API.

При обращении к API RBM аутентификация осуществляется с помощью ключа сервисной учетной записи. Этот ключ позволяет создавать и управлять брендами и агентами, а также отправлять сообщения и запросы от имени агента. Сервисная учетная запись может содержать до 10 ключей.

Для безопасной аутентификации вызовов API вам также потребуется инструмент командной строки oauth2l .

Выполните следующие шаги для генерации ключа учетной записи службы:

  1. В настройках учетной записи перейдите на страницу учетной записи службы .
  2. Нажмите «Создать ключ» , затем нажмите «Создать» . Ваш браузер загрузит ключ учетной записи службы.

Храните ключ своей учетной записи в безопасном, конфиденциальном месте. Не сообщайте свой ключ публично. Он понадобится вам позже для доступа к API RBM.

Настройте веб-перехватчик для вашего партнера.

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

Рекомендации по асинхронной обработке веб-хуков для предотвращения сбоев доставки см. в разделе «Обработка сообщений» .

Проверка входящих сообщений

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

Чтобы убедиться, что Google отправил полученное вами сообщение, выполните следующие действия:

  1. Извлеките заголовок X-Goog-Signature сообщения. Это хешированная, закодированная в base64 копия содержимого тела сообщения.
  2. Декодируйте полезную нагрузку RBM в элементе message.body запроса с помощью Base-64.
  3. Используя токен клиента вашего веб-перехватчика (который вы указали при настройке веб-перехватчика) в качестве ключа, создайте HMAC-скрипт SHA512 из байтов декодированной в base64 полезной нагрузки сообщения и закодируйте результат в base64.
  4. Сравните хеш X-Goog-Signature с хешем, который вы создали.
    • Если хеши совпадают, значит, вы подтвердили, что сообщение было отправлено Google.
    • Если хеши не совпадают, проверьте процесс хеширования на заведомо корректном сообщении.

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

Node.js

  if ((requestBody.hasOwnProperty('message')) && (requestBody.message.hasOwnProperty('data'))) {
    // Validate the received hash to ensure the message came from Google RBM
    const headerHash = req.header('X-Goog-Signature');
    const userEventString = Buffer.from(requestBody.message.data, 'base64');
    const hmac = crypto.createHmac('sha512', myClientToken);
    const genHash = hmac.update(userEventString).digest('base64');

    if (headerHash === genHash) {
      const userEvent = JSON.parse(userEventString);
      const webhookType = req.header('X-Goog-Webhook-Type');

      // Route based on the header type
      if (webhookType === 'message_callback') {
        handleMessage(userEvent);
      } else if (webhookType === 'agent_callback') {
        handleAgentEvent(userEvent);
      }
    } else {
      console.log('Hash mismatch - ignoring message');
      res.sendStatus(401);
      return;
    }
  }

  res.sendStatus(200);
  

Следующие шаги

Теперь, когда ваш партнерский аккаунт настроен, пришло время создать своего первого агента .