Перейти к основному содержанию

Создание бота

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

Три строительных блока позволяют вашему собственному сервису говорить в сообществе. Они работают вместе: одна интеграция может опубликовать карточку, ответить на /команду, отреагировать на кнопку и обновить своё сообщение.

Из чего это собирается

  • Вебхуки: URL, который публикует в канал. Ваш сервис отправляет на него JSON, и сообщение появляется под именем, которое вы дали вебхуку. Создано для оповещений: результаты CI, мониторинг, заявки.
  • Триггеры: собственные слэш-команды вашего сообщества. Участник вводит /weather, mssgs отправляет сообщение вашему веб-сервису, и его ответ появляется в канале в виде карточки.
  • Кнопки: под карточкой они открывают ссылку, меняют карточку для всех или запускают один из ваших триггеров (см. Карточки и кнопки ботов).

Опубликуйте первое сообщение

1
В настольном приложении откройте в своём сообществе Управление сервером → Вебхуки и нажмите Добавить вебхук.
2
Дайте ему имя, выберите в поле Каналы, куда он может публиковать, скопируйте Секрет вебхука и нажмите Создать вебхук.
3
Нажмите значок ссылки рядом с вебхуком (Посмотреть URL вебхука), выберите Канал и скопируйте URL.
4
Отправьте JSON POST-запросом на этот URL, подписав его секретом. Сообщение сразу появится в канале.
BODY='{"content": "Build #1847 passed on main"}'
SIG=$(printf '%s' "$BODY" | openssl dgst -sha256 -hmac "$MSSGS_WEBHOOK_SECRET" | sed 's/^.* //')
curl -X POST "$MSSGS_WEBHOOK_URL" \
  -H "Content-Type: application/json" \
  -H "X-Mssgs-Signature: sha256=$SIG" \
  -d "$BODY"
Не раскрывайте URL и секрет. Вместе они позволяют кому угодно публиковать в этот канал, поэтому не храните их в публичных репозиториях и в коде, который выполняется в браузере. Запрос без действительной подписи отклоняется.

Публикуете из GitHub? Код не нужен: направьте вебхук GitHub на этот URL и вставьте секрет в его поле Secret. См. интеграции.

Добавьте слэш-команду

1
Откройте Управление сервером → Триггеры и нажмите Создать триггер.
2
Заполните Слово для совпадения, например /weather, и URL-адрес вашего веб-сервиса. В поле Разрешённые группы пользователей можно оставить команду только определённым ролям.
3
Когда участник отправляет сообщение, начинающееся с /weather, mssgs отправляет его POST-запросом на ваш URL. Ответьте в течение 5 секунд в формате JSON, и ответ появится в канале в виде карточки.

Нужно больше времени? Сразу ответьте карточкой загрузки и завершите её через callback_url из запроса, который действует 30 минут. На карточке видно название вашего сообщества, а в её подвале указано, кто какую команду использовал.

Отдельный бот

Хотите, чтобы бот был отдельным участником с именем, аватаром и меткой BOT? Создайте аккаунт бота, привязанный к вашему аккаунту, и управляйте им в панели ботов. Когда настольное приложение вошло в аккаунт бота, ИИ-ассистент может публиковать карточки с кнопками через его MCP-сервер.

Все поля, ответы и коды ошибок описаны в документации для разработчиков: вебхуки, слэш-команды, карточки сообщений, кнопки и обновления вживую. А если вам нужно поведение на базе ИИ без всякой разработки, возможно, хватит пути через MCP.

Была ли эта статья полезной?

Не нашли то, что искали? Мы с радостью поможем.

Задать вопрос

Всё ещё нужна помощь?

Наша служба поддержки обычно отвечает в течение 24 часов.

Связаться с поддержкой