ConsumeSlack 2025.5.31.15

Bundle

org.apache.nifi | nifi-slack-nar

Description

Récupère les messages d’un ou plusieurs canaux Slack configurés. Les messages sont écrits au format JSON. Voir Utilisation / Détails supplémentaires pour plus d’informations sur la manière de configurer ce processeur et de lui permettre de récupérer des messages depuis Slack.

Balises

conversation, conversation.history, slack, social media, team, text, unstructured

Exigences en matière d’entrées

FORBIDDEN

Prend en charge les propriétés dynamiques sensibles

false

Propriétés

Propriété

Description

Jeton d’accès

Jeton d’accès OAuth utilisé pour authentifier/autoriser la requête Slack envoyée par NiFi. Il peut s’agir d’un jeton utilisateur ou d’un jeton robot. Ce jeton doit se voir attribuer le champ d’application channels:history, groups:history, im:history ou mpim:history, selon le type de conversation utilisé.

Batch Size

Le nombre maximum de messages à récupérer en une seule requête adressée à Slack. La totalité de la réponse sera analysée en mémoire : il est donc important d’en tenir compte lors du paramétrage de cette valeur.

Canaux

Liste séparée par des virgules des canaux Slack à partir desquels récupérer les messages. Chaque élément de la liste peut être soit un ID de canal, tel que C0L9VCD47, soit (pour les canaux publics uniquement) le nom d’un canal préfixé par le signe #, tel que #general. Si un nom de canal quelconque est fourni au lieu d’un ID, le jeton d’accès fourni doit se voir accorder le champ d’application channels:read pour que l’ID du canal puisse être résolu. Consultez les détails supplémentaires du processeur pour obtenir des informations sur la manière de trouver un ID de canal.

Include Message Blocks

Indique si la sortie JSON doit inclure ou non la valeur du champ « blocks » pour chaque message Slack. Ce champ contient des informations telles que les différentes parties d’un message qui sont formatées en texte enrichi. Cela peut être utile, par exemple, pour l’analyse syntaxique. Cependant, il représente souvent une part importante des données et, à ce titre, peut être réglé sur null lorsqu’il ne vous est pas utile.

Include Null Fields

Spécifie si les champs ayant une valeur nulle doivent être inclus dans la sortie JSON. Si cette option est définie sur true, tout champ d’un message Slack dont la valeur est nulle sera inclus dans le JSON avec une valeur nulle. Si elle est définie sur false, la clé est entièrement omise dans la sortie JSON. L’omission des valeurs nulles permet d’obtenir des messages plus petits dont le traitement est généralement plus efficace, mais l’inclusion des valeurs peut permettre de mieux comprendre le format, en particulier pour l’inférence de schémas.

Reply Monitor Frequency

Après avoir consommé tous les messages d’un canal donné, ce processeur interroge périodiquement tous les « messages en fil de discussion », aussi appelés réponses, dont l’horodatage est compris entre maintenant et le laps de temps spécifié par la propriété <Reply Monitor Window>. Cette propriété détermine la fréquence d’interrogation de ces messages. Un paramètre d’une durée plus courte peut permettre de capturer plus rapidement les réponses aux messages, ce qui réduit le temps de latence. Cependant, elle entraînera également l’utilisation de ressources supplémentaires et pourrait déclencher une limitation de débit.

Reply Monitor Window

Après avoir consommé tous les messages d’un canal donné, ce processeur interroge périodiquement tous les « messages en fil de discussion », aussi appelés réponses, dont l’horodatage est compris entre maintenant et ce laps de temps dans le passé, afin de vérifier s’il y a de nouvelles réponses. Le fait de paramétrer cette valeur à une valeur plus élevée peut entraîner l’utilisation de ressources supplémentaires et une limitation du débit. Toutefois, si un utilisateur répond à un ancien fil de discussion qui a été lancé en dehors de cette fenêtre, il se peut que la réponse ne soit pas capturée.

Resolve Usernames

Indique si les ID utilisateur doivent être transformés en nom d’utilisateur. Par défaut, les messages Slack fournissent l’ID de l’utilisateur qui envoie un message, tel que U0123456789, mais pas le nom d’utilisateur, tel que NiFiUser. Le nom d’utilisateur peut être résolu, mais cela peut nécessiter des appels supplémentaires à l’API Slack et exige que le jeton utilisé bénéficie du champ d’application users:read. Si la valeur est définie sur true, les noms d’utilisateur seront résolus selon la politique du meilleur effort : si un nom d’utilisateur ne peut être obtenu, il sera ignoré. Notez également que lorsqu’un nom d’utilisateur est obtenu, le champ <nom d’utilisateur> du message est rempli, et le champ <texte> est mis à jour de sorte que toute mention prendra en sortie la forme « Salut @utilisateur » au lieu de « Salut <@U1234567> ».

Gestion de l’État

Champs d’application

Description

CLUSTER

Maintient un mappage des ID de canal Slack avec l’horodatage du dernier message récupéré pour chaque canal. Cela permet au processeur de ne récupérer que les messages qui ont été postés depuis la dernière fois que le processeur a été exécuté. Cet état est stocké dans le cluster de sorte que si le nœud principal change, le nouveau nœud reprendra là où le précédent s’est arrêté.

Relations

Nom

Description

success

Les messages Slack reçus avec succès seront routés vers cette relation

Écrit les attributs

Nom

Description

slack.channel.id

L’ID du canal Slack à partir duquel les messages ont été récupérés

slack.message.count

Le nombre de messages Slack inclus dans le FlowFile

mime.type

Paramétré sur application/json, car la sortie sera toujours au format JSON

Voir aussi :