...
Для настройки канала понадобятся Идентификатор бота
и специальный ключ доступа
токен
:
...
Создание бота
Подробно про создание бота на вашем сервере eXpress написано в руководстве https://express.ms/admin_guide.pdf.
...
Заполнить все поля на странице создания. Для облачных стендов п2 адрес сервера будет выглядеть как
...
Пункт 1 - указываем идентификатор бота с приставкой _bot, например autofaq_bot
Пункт 2 - адрес сервера с express-adapter, https://адрес_сервера_АФ/express-adapter ,например https://chat.autofaq.ai/express-adapter
...
Пункт 3 - имя бота
Пункт 4 - описание бота
После сохранения нового бота на странице бота нужно скопировать значение
ID
и вставить его в полеИдентификатор бота
в канал AutoFAQ.
...
...
Получение токена
Изначально получение токена было реализовано согласно инструкции https://docs.express.ms/chatbots/developer-guide/development-and-debugging/interaction-with-bot-api-and-botx-api/ - раздел Получение токена чат-бота
. Секретный ключ также отображается на странице бота и параметр называется Secret key:
...
Шаг 1. Генерируем подпись, выполнив команду в терминале:
Code Block |
---|
echo "bot_id secret_key" | python3 -c "import base64, hmac, hashlib; bot_id, secret_key = input().split(); signed_bot_id = hmac.new(key=secret_key.encode(), msg=bot_id.encode(), digestmod=hashlib.sha256).digest(); print(base64.b16encode(signed_bot_id).decode())" |
Здесь нужно заменить bot_id
и secret_key
на ваши значения. В результате вы получите подпись вида ниже, которую надо использовать на следующем шаге.
Code Block |
---|
A72AA7733868C............DE96EB33428E59 |
Шаг 2. Через терминал нужно вызвать API метод по шаблону ниже для генерации финального ключа доступа.
Code Block |
---|
curl '$express_server/api/v2/botx/bots/$bot_id/token?signature=$signature' |
$express_server
- ваш адрес сервера eXpress
$bot_id
- Идентификатор бота
$signature
- Подпись из шага 1.
В итоге у вас должна получиться примерно следующая команда,
Code Block |
---|
curl 'https://expr.autofaq.ai/api/v2/botx/bots/ef563e86-c0d683db/token?signature=8C9E3E66293649E081' |
результатом выполнения которой будет нужный ключ в поле result
:
Code Block |
---|
{"result":"STY.g2gDbQA...FiAAFRgA.533...0aUZg","status":"ok"} |
Скопируйте его значение и вставьте в поле Ключ доступа
в канале AutoFAQ, активируйте канал и сохраните изменения.
С обновлением 5.7.1-3 администратору AutoFAQ не требуется выполнять все эти действия вручную, система все сделает сама. Вам нужно скопировать секретный ключ из настроек бота (Secret key):
...
и вставить это значение в окно, которое открывается по кнопке "Получить токен"
:
...
По нажатию кнопки "Продолжить"
система попытается получить токен сама и сообщит о результате запроса:
...
Далее нужно активировать канал, сохранить изменения и канал готов к работе.
Начало переписки с ботом
...