Slack API - Отправка прямого сообщения в личное пространство (вам)

Я создал приложение Slack с ботом. У меня работает процесс OAuth. Пользователь завершает процесс OAuth, и я получаю как обычный токен, так и токен бота вместе с user_id.

Когда я пытаюсь отправить api/chat.postMessage с токеном бота и каналом = user_id, который я получил от OAuth, в разделе «Slackbot» создается сообщение.

Как отправить прямое сообщение пользователю, авторизовавшему OAuth? Я хочу, чтобы это было в (вам) личном/личном пространстве DM.

Редактировать:

im.open создает новый канал между ботом и авторизованным пользователем. Он НЕ публикует сообщение непосредственно в личном пространстве пользователя (вас).

@ErikKalkoken Я добавил правку, чтобы объяснить разницу между вашими возможными дублирующими ссылками. Решение этого поста отличается от моего требования.

LAX_DEV 21.06.2019 14:16

Спасибо за разъяснения. Это действительно другой вопрос. я опубликую ответ

Erik Kalkoken 21.06.2019 14:28
Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Шаг 1: Создание приложения Slack Чтобы создать Slackbot, вам необходимо создать приложение Slack. Войдите в свою учетную запись Slack и перейдите на...
Интеграция Slack и Spring Boot: как отправлять сообщения из Java-приложений
Интеграция Slack и Spring Boot: как отправлять сообщения из Java-приложений
Как отправлять сообщения в slack с помощью spring boot легко и без зависимостей.
1
3
1 827
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вот как вы можете отправить сообщение в свой личный пользовательский канал, например. для меня этот канал назывался бы "Эрик Калкокен (ты)":

Отправить сообщение с помощью chat.postMessage

  • Используйте токен доступа (не токен бота)
  • Установите канал с идентификатором пользователя. Должен быть тот же пользователь, авторизовавший токен доступа.
  • Установить as_user = true

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

Другие вопросы по теме