Команда Slack sla sh: отвечать как пользователь, а не как приложение - PullRequest
1 голос
/ 13 июля 2020

При отправке ответа на команду Slack sla sh я хотел бы отправить его от имени пользователя, запустившего команду slach.

Я создал приложение Slack с помощью команды sla sh. Он вызывает мой Flask веб-сервис, и я использую веб-перехватчик response_url, чтобы написать что-то обратно в канал. Ответ в канале дает мое приложение. Это работает, как ожидалось. Но я бы хотел, чтобы ответ отображался так, как будто его предоставил пользователь.

Примером может быть плагин Slack от giphy. Если я это позвоню, я получаю эфемерное сообщение, чтобы выбрать гифку, которую я хотел бы. Но затем он публикуется в канале под my name.

Итак, у меня есть 2 вопроса:

  1. Как выглядит вызов API для ответа на sla sh в качестве конкретного c пользователя?
  2. Какие разрешения для моего приложения требуются, чтобы разрешить такое поведение приложения?

Документация Slack API исчерпывающая , но многие исследования не дали желаемого результата.

Спасибо!

1 Ответ

0 голосов
/ 22 августа 2020

Когда вы используете response_url, вы не можете настроить свое имя пользователя или значок. Для этого вам потребуется использовать метод API chat.postMessage . Теперь есть два способа добиться того, что вам нужно:

  1. Использовать токен пользователя : это дает вам доступ для выполнения действий от имени пользователя. Хотя вам потребуется авторизация от каждого пользователя, от имени которого вы хотите разместить сообщение.

  2. Запрос chat:write.customize область действия с вашим токеном бота: вы можете отправить сообщение с icon_url и username параметры, где вы можете указать значок и имя пользователя соответственно для обоих параметров. Это намного проще, так как для этого требуется только одноразовая авторизация.

Подробнее в официальной документации .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...