ConsumeSlackConversation 2025.5.31.15¶
バンドル¶
com.snowflake.openflow.runtime | runtime-slack-processors-nar
説明¶
本アプリで可用性のあるSlackの会話からメッセージを取得します。新しい会話は「返信モニター頻度」に基づいて取得されます。取り込まれたメッセージは JSON 形式で書き出されます。このプロセッサーを構成し、Slackからメッセージを取得できるようにする方法の詳細については、使用方法 / その他の詳細を参照してください。
入力要件¶
FORBIDDEN
機密動的プロパティをサポート¶
false
プロパティ¶
プロパティ |
説明 |
---|---|
アクセストークン |
OAuth NiFi から送信された Slack リクエストの認証/認可に使用されるアクセストークン。これは、ユーザートークンまたはボットトークンのいずれかです。使用する会話のタイプに応じて、channels:history、group:history、im:history、または mpim:history スコープを付与する必要があります。 |
バッチサイズ |
Slackへの1回のリクエストで取得するメッセージの最大数。レスポンス全体がメモリにパースされるので、この値をセットする際にはこの点に注意することが重要です。 |
返信モニター頻度 |
指定されたチャネルのすべてのメッセージを消費した後、このプロセッサーは、タイムスタンプが現在から<Reply Monitor Window> プロパティで指定された時間の間にあるすべての「スレッドメッセージ」、別名「リプライ」を定期的にポーリングします。このプロパティは、これらのメッセージがポーリングされる頻度を決定します。この値を短くセットすると、メッセージの返信がより早くキャプチャされ、待ち時間が短くなります。ただし、リソースの使用量が増えるため、料金制限のトリガーになる可能性もあります。また、新しく追加されたチャンネルをチェックする頻度も決まります。 |
返信モニターウィンドウ |
与えられたチャネルのすべてのメッセージをコンシューマーした後、このプロセッサーは、タイムスタンプが現在からこの時間過去の間にあるすべての「スレッドメッセージ」、別名「リプライ」を定期的にポーリングして、新しいリプライがないかどうかをチェックします。この値を大きくセットすると、さらにリソースを使用することになり、レート制限がかかる場合があります。しかし、ユーザーがこのウィンドウの外で開始された古いスレッドに返信した場合、その返信はキャプチャされないことがあります。 |
ユーザー名の解決 |
User IDs をユーザー名に解決するかどうかを指定します。デフォルトでは、Slack メッセージには、U0123456789 のようなメッセージを送信したユーザーの ID が表示されますが、 NiFiUser のようなユーザー名は表示されません。ユーザー名は解決できますが、Slack API への追加呼び出しが必要になる場合があり、使用するトークンに users:read スコープが付与されている必要があります。trueにセットすると、ユーザー名は最善のポリシーで解決されます。ユーザー名が取得できない場合は、そのユーザー名はスキップされます。また、ユーザー名が取得されると、メッセージの<ユーザー名> フィールドに入力され、<テキスト> フィールドが更新され、"Hi<@U1234567>" ではなく、"Hi @user" のように出力されることに注意してください。 |
状態管理¶
スコープ |
説明 |
---|---|
CLUSTER |
Slack チャンネル IDs と、そのチャンネルで最後に取得されたメッセージのタイムスタンプのマッピングを保持します。これにより、プロセッサーは、前回プロセッサーが実行された時以降に投稿されたメッセージのみを取得することができます。この状態はクラスタリングに保存され、プライマリノードが変更された場合、新しいノードが前のノードの状態を引き継ぎます。 |
リレーションシップ¶
名前 |
説明 |
---|---|
success |
正常に受信されたSlackメッセージは、このリレーションシップにルーティングされます。 |
属性の書き込み¶
名前 |
説明 |
---|---|
slack.channel.id |
メッセージが取得された Slack チャンネルの ID |
Slack.メッセージ.数 |
FlowFile に含まれるSlackメッセージの数。 |
mime.type |
出力は常に JSON 形式になるため、application/jsonに設定します。 |