Общее описание
Создание чат-бота
Чат-бот создается в консоли администратора корпоративного сервера.
Описание полей
| Параметр | Тип данных | Описание |
|---|---|---|
| UUID | Уникальный идентификатор в системе BotX. Используется для идентификации в BotX и приложении чат-бота | |
| string | Уникальный текстовый идентификатор чат-бота | |
| string | Ссылка на API чат-бота | |
| string | Имя чат-бота | |
| string | Описание | |
| boolean | Включен/выключен чат-бот | |
| string | Статус-сообщение | |
| string | Секретный ключ, генерируется в момент создания чат-бота | |
| integer | Используемая версия протокола (BotX -> Bot) |
Пример чат-бота
- id: "dcfa5a7c-7cc4-4c89-b6c0-80325604f9a4"
- app_id: "trello"
- url: "https://bot.com/api/v1/botx_trello"
- name: "Trello Bot"
- description: "Бот для работы с Trello-досками"
- enabled: true
- status_message: "It works!"
- secret_key: "secret"
- proto_version: 4
Редактирование чат-бота
Отредактировать свойства чат-бота можно на его странице в консоли администратора.
Доступные свойства
| Параметр | Тип данных | Описание |
|---|---|---|
| all|commands|none (default: commands) |
Типы данных, которые может принимать чат-бот:
|
|
| true|false (default: false) |
Позволить чат-боту создавать чаты | |
| true|false (default:true) |
Отображать чат-бота в каталоге чат-ботов | |
| corporate|trust|local|all (default: corporate) |
Тип пользователей, которые могут взаимодействовать с чат-ботом:
|
|
| true|false (default: false) |
Использовать SSL CA сертификат BotX при отправке запроса к чат-боту. Для использования BotX SSL CA сертификата необходимо загрузить его в панели администратора на странице настроек сервера (/settings/server). Должна быть загружена полная цепочка выдающих серверов, т. е. сертификат следующего вида: -----BEGIN CERTIFICATE-----Для использования Botx SSL CA сертификата необходимо установить у чат-бота аттрибут “Версия протокола” в значение 3 или выше. После смены сертификата требуется перезагрузка контейнера. После отключения свойства (если чат-бот раннее использовал его) требуется перезагрузка контейнера. |
|
| true|false (default: false) |
Если true, то при каждом обращение к чат-боту генерируется JWT-токен, который подписывается ПДС ключом. Полученный JWT-токен передается при каждой отправке команды/запроса чат-боту в HTTP-заголовке pds_token |
|
| string | Ключ, которым будет подписываться PDS JWT-токен. Ключ представляет из себя валидный Private RSA-ключ. Подпись выполняется с использованием RS256 алгоритма | |
| true|false (default: false) |
Если true, то при обращение к чат-боту пользователем передается open_id токен пользователя в заголовке open_id_access_token |
Разработка чат-ботов
Перед тем как приступить к разработке чат-бота, используя наши инструменты, ознакомьтесь со следующей документацией:
- Что такое чат-боты и SmartApp
- BotX API
- Bot API v4
- SDK pybotx и async-box (шаблон бота).
- Пример простого бота на основе
async-box- todo-bot.
При разработке бота вам могут понадобиться виджеты (многие из них уже реализованы в библиотеке pybotx-widgets). Для удобной работы с состоянием пользователя используйте библиотеку pybotx-fsm.
Библиотеки
- pybotx
- async-box
- pybotx-fsm
- pybotx-smartapp-rpc
- pybotx-smart-logger
- pybotx-smartapp-smart-logger
- smartapp-bridge
- smartapp-sdk