Концепция: Slash Commands
PartyFlow поддерживает два типа команд:
- Встроенные —
/poll,/remind. Реализованы платформой, работают в любом канале без настройки. - Кастомные — регистрируются ботом через REST API. При вызове PartyFlow шлёт HMAC-подписанный POST на callback URL бота и публикует ответ в канал. Полный справочник — reference/slash-commands.md.
Встроенные (available)
/poll
/poll "Pizza tonight?" "Margherita" "Pepperoni" "Hawaiian"- Сегменты в кавычках: первый — вопрос, остальные — варианты (2–10, пустые/пробельные отбрасываются).
- Поддерживаются
"…",«…»,“…”. - Регистронезависимая:
/POLL,/Pollработают одинаково. - После публикации опроса клиент-отправитель автоматически расставляет реакции
1️⃣…🔟на bot-сообщение, чтобы голосовать кликом.
/remind
/remind me "созвон с dev team" in 30m
/remind me "release meeting" at 09:00
/remind @alice "review PR" in 2h
/remind #general "stand-up reminder" at 10:00- Получатель —
me(себе),@user(другому участнику этого же канала) или#channel(другому каналу в этом же space).@userберётся из обычной системы упоминаний (как в чате — выберите подсказку из автодополнения).#channelищется регистронезависимо среди каналов, в которых вы участвуете. Если имя не найдено — команда возвращает ошибку"Канал #<name> не найден или у вас нет к нему доступа.".
- Время —
in <N><m|h|d>(макс 30 дней) илиat HH:MMв локальной таймзоне отправителя (берётся из его профиля; если HH:MM уже прошло — переносится на завтра). - Confirmation сразу пишется в канал, где вызвана команда. В назначенное время приходит сообщение
⏰ Напоминание: "...":- для
meи@user— в этом же канале; - для
#channel— в указанный канал.
- для
- Для
@user-напоминаний целевой пользователь получает push. - Лимит 50 активных напоминаний на пользователя в space.
Кастомные (available с 2026-04-19)
Бот регистрирует команду через POST /api/v1/bots/{bot_id}/commands с полями name, description, usage_hint, callback_url. В ответ получает signing_secret один раз — дальше сохраняет его в secret manager.
Bot registers /deploy → https://ci.example.com/slash/deploy
User: /deploy prod- PartyFlow шлёт HMAC-подписанный POST на
callback_urlс payload'ом{command, command_id, args, text, user_id, conversation_id, thread_id, trigger_id, ...}. - Headers:
X-PartyFlow-Signature: sha256=<hex>,X-PartyFlow-Timestamp,X-PartyFlow-Trigger-Id,X-PartyFlow-Command,X-PartyFlow-Event: slash_command,X-PartyFlow-Webhook-Version: 1. - Бот отвечает JSON с
response_type: "ephemeral"(только отправителю) или"in_channel"(всем) в течение 3 секунд. - Если операция дольше 3 секунд — бот возвращает пустое тело и досылает результат через
POST /api/v1/bot/messagesс заголовкомX-PartyFlow-Trigger-Id(TTL trigger'а — 5 минут, single-use). - Interactive buttons / selects / модальные формы в ответе — см. reference/interactive-components.md.
Ограничения:
- Имя команды —
^[a-z][a-z0-9_-]{0,31}$, уникально в space. - Rate limit: 30 вызовов/мин на пользователя × команду + 300 вызовов/мин на команду глобально.
- Cap: 25 команд на бота, 100 на space. Встроенные (
/poll,/remind) не учитываются.
Полный справочник — reference/slash-commands.md.