Comment est-il possible d'envoyer un message en mou directement à l'utilisateur, par user.id comme application.
cette application a une portée: bot, canaux: écriture, emoji: lecture, utilisateurs: lecture, utilisateurs: lecture.email
Je trouve comment envoyer un message uniquement en tant que DM ou par webhooks, mais il n'y a aucune possibilité pour cela. Quelqu'un a une idée?
Si je comprends bien votre question, vous souhaitez envoyer des messages directs aux utilisateurs dans le canal d'application au lieu du canal slackbot
standard.
Pour ce faire, vous devez
bot
et d'un utilisateur de botim.open
. Vous récupérez un identifiant de message direct.chat.postMessage
à l'ID du canal de message directAssurez-vous d'utiliser votre jeton d'accès au bot (pas le jeton d'accès utilisateur) à partir de votre application Slack.
La portée bot
vous donne toutes les autorisations nécessaires pour ouvrir et envoyer des DM aux utilisateurs depuis votre canal bot. Aucune autre portée n'est requise.
Vous pouvez également utiliser les nouvelles méthodes conversations
, qui fonctionnent pour tous les types de canaux pour faire de même.
Voir aussi cette question sur le même sujet.
Il existe un autre moyen de résoudre ce problème, qui peut être plus approprié si votre application utilise un bot pour fonctionner avec l'API Slack.
Vous devez appeler chat.postMessage méthode API et spécifier l'argument channel
égal à l'ID utilisateur (par exemple U0G9QF9C6
) vous voulez envoyer un message et as_user
l'argument est vrai. Détail important - assurez-vous que vous utilisez un jeton d'accès au bot (apprenez ici comment l'obtenir).
Exemple:
curl -X POST "https://slack.com/api/chat.postMessage" -H "accept: application/json" -d token=BOT_ACCESS_TOKEN -d channel=U0G9QF3C6 -d text=Hello -d as_user=true
De cette façon, votre message sera toujours envoyé au nom (nom et icône) de votre bot et sera affiché comme un message direct dans le canal de l'application (YourAppChannel dans la barre latérale Slack).
Par rapport à l'approche de @ErikKalkoken, vous n'avez pas besoin de créer un canal à l'avance et, par conséquent, gardez une trace de son ID (il peut être bon ou mauvais selon vos besoins).