私はすべての公衆&のプライベートチャンネルとチームのIMを聞くボットを作ろうとしており、特定のトリガーワードを見たときに返信します。これは、 "スラックに追加"ボタンを使用してチームにインストールできる "スラックアプリ"になり、 "ボットユーザー"が含まれます。スラックイベントAPIを使用したリッスン&リプライスラックボットには、どのようなOAuthスコープが必要ですか?
「bot」OAuthスコープをリクエストし、「message.channels、message.groups、message.im」チームイベント(https://api.slack.com/apps/myAppId/event-subscriptions)を購読しましたが、Events API経由でイベントPOSTを受信していないようです新しいメッセージが送信されたとき。
"channels:history、groups:history、im:history"スコープを追加すると、ボットはこれらのイベントPOSTを受信できますが、ボットを追加したユーザーのみが信じているので、ユーザーは他の2人のユーザーのメンバーではありませんでした。これは、ボットをインストールしたユーザーに応じて動作が異なることを意味します。
チーム全体でapp/botをインストールする方法はありますか?ドキュメンテーションは、「ボット」スコープがイベントを受け取る能力を持つべきであることを示しているようですが、私はこれを見ていません(上記の履歴スコープなどを必要とします)。
ボットのページには、ボットがRTM APIを介してすべてのメッセージを受け取ることができると主張ボット - スラックアプリにボットユーザー機能が含まれている場合、このスコープをリクエストしてください。受信webhookおよびコマンドとは異なり、ボットスコープは、ボットユーザーにWeb APIメソッド、RTM API、およびEvents APIの特定のイベントタイプのサブセットへのアクセスを許可します。
(https://api.slack.com/docs/oauth-scopesから):
これのWebSocketはあなたにメッセージや活動のすべてを送信することボットユーザーが招待された公開チャネルと非公開チャネルのほか、直接メッセージ経由で送信されるメッセージが発生します。ボットユーザーは、認証された呼び出しをrtm.start APIメソッドに送信することによって、このWebソケットをRTM APIで開きます。 RTM APIへの接続の詳細については、こちらのドキュメントを参照してください。 (https://api.slack.com/bot-usersから)
は、RTMのAPIを使用するか、上記のもの、追加のスコープを追加することなく、イベントのAPIで可能で、これと同じ動作ですか?
私のアプリにボットユーザーを追加したので、「イベント購読」ページに「ボットイベント」セクションが表示されました。このセクションでは、「message.channels」を購読できます。ドキュメンテーション)。しかし、ボットのユーザーは、監視したいすべてのチャネルに招待する必要があり、インストールプロセスが複雑になります。 – Crashthatch