Входящий WebHook и динамическое имя пользователя / канал - PullRequest
0 голосов
/ 10 декабря 2018

Я использовал токен Legacy и смог отправить любой канал с любым именем пользователя.Но когда я переключаюсь на использование входящей функции webhook, она работает только для одного канала, который мы выбрали при создании webhook.Вот то, что я использую,

curl -X POST -H 'Content-type: application/json' --data '{"text":"Hello, World!","channel":"#my-channel" }' https://hooks.slack.com/services/XX/XX/XX

Здесь сообщение всегда отправляется на канал по умолчанию, а не канал, который я указываю в CURL.

Какой самый простой способ отправить слабое сообщение любомуканал с любым именем пользователя (кроме устаревшего токена)?Я также не вижу потока клиентских учетных данных (сервер-сервер)

1 Ответ

0 голосов
/ 10 декабря 2018

Если вы хотите отправить сообщение на любой канал с пользовательским именем пользователя, лучше всего использовать Slack API с chat.postMessage .

Обратите внимание, что вам понадобится токен Oauthс необходимыми областями (например, chat:write:user), что требует от вас создания приложения Slack и его авторизации в рабочей области.

Если вы работаете в своем собственном рабочем пространстве, вы можете выполнить свою авторизацию прямо на странице управления Slack App (см. внутренние интеграции ).В противном случае вам потребуется реализовать поток Oauth для вашего приложения (см. Add To Slack ).

Вот пример curl:

curl https://slack.com/api/chat.postMessage -X POST --data "token=TOKEN&channel=test&username=Luke Skywalker&icon_emoji=:dog:&text=The force is with me"
...