ネストされたグループまたは自動同期メンバーシップ: 1つの@mentionですべてのサブグループメンバーに言及

ユースケース: 私はNASAのオープンサイエンスデータリポジトリの12の分析ワーキンググループ(AWG)を管理しており、60カ国以上に約1,700人のメンバーがいます。各AWGには独自のDiscourseグループ(例:@AIMLawg@AnimalAWG@HUMANawgなど、12個あり、増え続けています)があります。私やチームがコミュニティ全体にアナウンスを送信する必要がある場合、すべての投稿で12のグループすべてを手動で@メンションする必要があります。これはエラーが発生しやすく、面倒で、1つ忘れるのも簡単です。

すべてのサブグループのメンバーシップを自動的に反映する単一の@AWGallグループが欲しいので、1つの@メンションですべての人に届くようにしたいのです。

試したこと:

  1. @AWGallグループを手動で作成し、APIスクリプトを書いてすべてのサブグループからメンバーを一括で追加しました。これは一度限りのスナップショットとしては機能しますが、同期されたままにはなりません。12のAWGのいずれかに新しいメンバーが参加するたびに(これは絶えず発生します)、@AWGallは古くなります
  2. ネイティブのネストされたグループ/グループのグループ機能を探しました。それは存在しません。最も近い過去の議論は、2021年の階層的なグループメンバーシップ(グループ内のグループ)で、その時点では実装の計画がないことが確認されました。

求めていること:

次のいずれかが問題を解決します。

  • オプションA — ネストされたグループ: グループが他のグループをメンバーとして含めることを許可し、メンバーシップが推移的に解決されるようにします。誰かが@AIMLawgに参加すると、その人は自動的に@AWGallに表示されます。
  • オプションB — 自動同期トリガー: ユーザーがグループに追加または削除されたときに、設定可能なメンバーシップ同期をトリガーして、指定された親グループに追加/削除します。

これが私のケース以外で重要である理由:

サブコミュニティ(部署、コホート、チーム、年齢層、地域)を持つコミュニティはすべて、この壁にぶつかります。現在の回避策である、個別のフラットなグループを手動で維持する方法は、メンバーシップが変化するとすぐに機能しなくなります。これはニッチなエッジケースではなく、一般的なDiscourseの制限事項です。

実装のトレードオフについて喜んで議論させていただきます。すでにこれを処理しているプラグインはありますか、それともネイティブで構築する意欲はありますか?

「いいね!」 1

Discourse Dynamic Groups プラグインを使用して、他のすべてのグループのメンバーを含む自動グループを作成できます。