この投稿によると、https://meta.discourse.org/t/webhook-triggered-groups-on-flags/90361、特定のイベントはトリガーグループフィルターを尊重しません。特定のグループのユーザーがユーザープロファイルを更新するたびに通知を受け取るために、ユーザーイベントWebフックを構成しようとしています。使用しようとすると、次のエラーが発生します。
以下の理由により、これを特定のグループに制限したいと思います。
- 私の自動化サービスであるAirtableは、自動化ができる呼び出しの数に制限を設けています。数千人のユーザーに対してこのWebフックをトリガーすると、制限を超える可能性があります。ターゲットとしているグループには、ユーザーのほんの一部しかいません。
- 受信するイベントが、私が関心のあるグループからのものであることを確認したいです。私の自動化は、特定のグループからのユーザープロファイルの更新のみに関心があります。グループでフィルターできない場合、グループ以外のものをすべて除外するロジックを自動化に追加する必要があります。
「ユーザーイベント」でトリガーグループを有効にすることは可能ですか?
「いいね!」 1
pfaffman
(Jay Pfaffman)
2
プラグインが必要だと思います。もしそうするのであれば、Airtableで行っていること(Airtableが手段ではなく最終目的でない限り)を行うプラグインを作成するだけで十分でしょう。
group_user_event を作成し、trigged_groups を設定してみましたか?ユーザーに紐づくグループはないため、グループが User に影響を与えることは期待されていませんが、UserGroups は、あなたが話していること(だと思います)です。
試したことは以下の通りです。
「User Event」を、ユーザーが所属する1つ以上のグループに基づいてフィルタリングできることを期待していました。この場合、ユーザーがAmbassadorグループにいる場合のユーザーイベントのみに関心があります。
pfaffman
(Jay Pfaffman)
4
それを試したと仰っていましたね。別のことを試してみてはどうかと提案していました。
グループ用のユーザーイベントはありません。
group_userイベントとは、ユーザーがグループに追加または削除されたときのイベントのことだと思いますので、group_userイベントと、対象のグループのグループトリガーを作成してみてください。
実際には、ユーザープロファイルが更新されたときに知りたいのですが、それはアンバサダーグループにいるユーザーのみに関心があります。ユーザープロファイルの次の3つの変更について通知を受けたいです。
- メールアドレスの変更
- ユーザー名の変更
- リンクされたGitHubアカウントの追加または変更
「ユーザーイベント」から取得できると思いますが、そのイベントを特定のグループに制限できないため、必要以上に多くの通知を受け取る可能性があります。
pfaffman
(Jay Pfaffman)
6
ああ、しまった。ごめんなさい。早とちりしたか、文脈を読み飛ばしてしまったようです。
残念ながら、プラグインが必要になります。
私が昔書いたものがあります。動作するか、またはよく書かれているかは保証できませんが(当時に比べてプラグインについてずっと詳しくなりました!)、たたき台にはなるかもしれません。GitHub - discourse/discourse-plugin-skeleton: Template for Discourse plugins から始めて、plugin.rb とシリアライザーからWebhook用のビットを追加することをお勧めします。
「いいね!」 1
Webhook triggered groups on flagsでの議論の続きです。
実装の予定はありませんか?コアチームが実際に提案している最善の回避策は何ですか?
OPが投稿したものと全く同じものを探しています(彼が私にまだ作業が必要だとリマインドしてくれました)