Slack входящих webhook - отправить сообщение на другой канал
Я пытаюсь отправить сообщение на любой канал в слабой команде.
Мой webhook был правильно создан и установлен в мою команду тестирования. В рамках процесса установки я выбрал "Опубликовать на #channel1"
Когда я просматриваю разрешения, я вижу, что моему приложению были предоставлены другие / сообщения для определенных каналов в Slack (#channel1).
Оттуда я могу опубликовать в #channel1 с базовым запросом JSON:
{
"text":"Hello, World!"
}
Теперь я хочу подтвердить, что могу использовать тот же веб-крючок для публикации на любом другом канале той же команды. Итак, я создал канал #channel2 и пытаюсь выполнить следующий запрос:
{
"channel":"#channel2",
"text":"Hello, World!"
}
Запрос принят (HTTP Status 200), но все равно публикуется на #channel1.
Что я делаю неправильно? Это проблема синтаксиса или разрешения? Я предполагаю, что это скорее проблема с разрешениями, но я не нашел, как предоставить моему приложению доступ к дополнительным каналам (или ко всем каналам).
С уважением.
1 ответ
Я создал входящий Webhook и нашел эту документацию (см. Изображение)
Я выполнил инструкции, приведенные в нем, и обнаружил, что это сработало. Я могу отправить сообщение на другой канал, отличный от того, для которого был установлен Incoming Webhook
Приложение нуждается в chat:write:bot
разрешение публиковать сообщения на других каналах.
Разрешение можно добавить в разделе "Управление приложениями" → "Ваше приложение" → "OAuth & Permissions":
Читая собственную документацию Слэка, это не было очевидно для меня. (хотя он упоминается в разделе "Использование веб-API" в разделе "Введение в обмен сообщениями".)