Платформа ботов: API, вебхуки и Python-SDK
Версия 1.7.0 открывает пространствам собственных ботов: регистрация с токенами и областями доступа, API для чтения и отправки сообщений, вебхуки с подписью и SDK на Python.
Коротко
- Регистрация ботов, токены и области доступа
- Bot API: отправка и чтение сообщений, реакции
- Вебхуки с подписью, журнал действий, ограничение частоты
- Python-SDK с декораторами команд и приёмником вебхуков
Боты — то, ради чего сообщества обычно и остаются на платформе: дежурный бот собирает заявки, музыкальный ставит трек в голосовом канале, служебный присылает уведомления из репозитория. В 1.7.0 у Space появилась своя платформа для них.
Как это устроено
- Бот регистрируется и получает токен с ограниченным набором прав
- Владелец пространства приглашает бота так же, как участника
- Bot API позволяет читать и отправлять сообщения, ставить реакции
- Вебхуки подписываются, чтобы приёмник мог проверить отправителя
- У владельца пространства видно, что делал бот, а частота запросов ограничена
Отдельно выпущен Python-SDK: декораторы для команд, клиент API и приёмник вебхуков. Простой бот умещается в несколько десятков строк.
Что добавилось в 1.8.0
- Slash-команды
- Бот отвечает на команду публично в канал — не только личным сообщением.
- Бот в голосовом канале
- Со своим именем, аватаром, маркером BOT и возможностью воспроизводить звук.
- Права под контролем
- Бот не выйдет за выданные ему права, а частые запросы платформа притормаживает сама.
- Видно, что делал бот
- Действия бота в пространстве доступны владельцу — не приходится верить на слово.
Сейчас боты создаются по запросу. Самостоятельная регистрация из интерфейса и публичная документация — в работе, следить за этим можно в дорожной карте.