Microsoft 系のあれこれ

港区の SIer で よくわからんことをしている人です。Xamarin 中心でした。(過去形)

Microsoft365グループから作成したTeamのチャネル内会議を予定するとメンバー全員の予定に入ってしまうのを回避する

Teamsのチャネル内で会議を開催すると会議でのチャットの履歴がチャネルに残るので会議に参加してないメンバーにも情報連携できたり、情報が分散してしまう(野良会議だとチャットのカテゴリーにしか残らない)のを防げるので基本的に普段の業務で会議を開催する場合は活用しています。
会議の作成画面にチャネルを追加すれば大丈夫です。
f:id:ShunsukeKawai:20210603112551p:plain
非常に便利な機能ですが、Microsoft 365グループが絡むとある問題が発生しました。

AzureADの動的グループ

本記事の前提として、社内ではAzureADの動的グループというのを活用して365グループを作成し、そのグループをもとにTeamsチームを作成しているのがいくつかあります。
動的グループとはAzureADの属性に対して条件を指定するルールを作成し、そのルールに合致するメンバーを自動で管理してくれる仕組みです。
動的に設定されるグループ メンバーシップのルール - Azure AD | Microsoft Docs
指定したクエリに該当するメンバーを自動的にグループに追加・削除され、メンバーのメンテナンスが必要ないので非常に便利です。
これらはウチの会社では組織全員(組織全体でチーム作成が諸事情により使えないケースがあった)、プロパー社員全員など、総じて大人数のグループで運用しています。

チャネル内会議の予定がメンバー全員の予定表に登録されてしまう

さて本題の問題です。
動的グループだけでなく、Microsoft 365グループから作成されたTeamsチームのチャネル内会議を予定すると、そのグループに所属するメンバー全員の予定表に登録されてしまいます。 会議自体は少人数で行いたくても全員(ウチの場合だと数百人)の予定表に登録されるのでいい迷惑ですね。
逆に全員の予定に入れたい会議などがある場合は便利なのかもしれませんが、今回はそうではありません。

問題が発生する原因

本問題は下記のグループに対しての各人の設定によりチャネル内会議の予定表追加するかが決まります。
f:id:ShunsukeKawai:20210603165121p:plain
※ ちなみにこの設定はOutlookのWeb版でしか確認する術がわかりませんでした。
この「受信トレイでのフォローを停止する」の設定が「自分への返信だけを受信する」になっている場合は、チャネルで会議が予定されても参加者と指定されているメンバー以外の予定表には入りません。
そして「自分への返信とグループのイベントだけを受信する」になっている場合は、チャネルで会議が予定されると参加者でなくとも予定表に追加されてしまいます。
そのため、迂闊にチャネル内の会議が開催できません。

厄介ポイント①

Teamsから新規に作ったチームのグループ(チームを作ると自動的にグループも作成される)では規定値が「自分への返信だけを受信する」になっていて、365グループを作った際の規定値は「自分への返信とグループのイベントだけを受信する」になっています。
と、設定がそれぞれのルートで異なり、ユーザーはどちらのルートで作成されたチームなのか普通は知らないので使い分けができません。

厄介ポイント②

この設定は個人の設定であるため、管理者が後から強制的に変更することは基本的にできない。
(基本的にとついている理由の説明は後述します)

問題の回避策

後から各人の本設定を変更することはできませんが、新しくグループにメンバーを追加した際に「自分への返信だけを受信する」に設定されるような指定ができます。

設定方法

PowerShellの管理モジュールで365グループの AlwaysSubscribeMembersToCalendarEvents 設定をfalseに変更してあげます。

AlwaysSubscribeMembersToCalendarEventsの公式説明

具体的な設定方法は下記の通りです。
作業はPowerShell ISEでやりました。(F8で行実行できるから試しながらやるの便利)

Import-Module ExchangeOnlineManagement

でモジュールをインポートして

Connect-ExchangeOnline -UserPrincipalName XXXXXXX@XXXXX.com

を実行するとサインイン画面が表示されるのでサインインしExchangeに接続します。

  • 該当グループの設定情報を確認
    以下のコマンドレットで現在のグループの設定方法を確認します。
    TestGroupの部分は該当のグループのメールアドレスの@以前を指定するとひっかかると思います。
Get-UnifiedGroup -Identity "TestGroup" | Select DisplayName,AlwaysSubscribeMembersToCalendarEvents

実行結果は以下の通りTrueになってます。
f:id:ShunsukeKawai:20210603183458p:plain

  • AlwaysSubscribeMembersToCalendarEventsの設定を変更する
    以下のコマンドレットで設定をFalseに設定してあげます。
Set-UnifiedGroup -Identity "TestGroup" -AlwaysSubscribeMembersToCalendarEvents:$False

完了後、もう一度確認するとFalseに変更されています。 f:id:ShunsukeKawai:20210603183732p:plain

ですが、本設定はグループに新規追加されたメンバーに対して設定がされるため、既存メンバーの設定には反映されません。

設定完了後、メンバーを削除して再追加する

設定が完了したグループにメンバーを追加してあげると「自分への返信だけを受信する」になっていることが確認できました。
そのため、動的グループを利用して365グループを作成している場合は一度ルールを誰も当てはまらないように変更して、それが反映されメンバーがいなくなった後にもう一度ルールを指定することで新規追加扱いになり、全員の設定を実質変更したことになります。
通常の365グループの場合はメンバーを事前にエクスポートしておいて、削除後、再度インポートすればいいでしょう。
再度各メンバーに「グループに追加されました」的な通知が行ってしまうのは我慢するしかない…

おまけ

この設定をした後でもメンバー全員に(強制的に)会議の予定を追加したい場合はグループの編集画面から下記設定をONにするとできるみたいです。
f:id:ShunsukeKawai:20210603184558p:plain

まとめ

なんとかやりたいことの実現ができましたが、規定値が違うのはどうにかしてほしい…
かといっていつの間にかどっちかに統一されたら困るけど…(特に「自分への返信とグループのイベントだけを受信する」に統一されたら阿鼻叫喚が容易に予想できる)