山口屋~活動日誌~

私生活で主な出来事をピックアップ

M365グループ 共有メールボックス 配布リスト M365 SubscriptionEnabled AutoSubscribeNewMembers

2024-10-27 17:10:17 | パソコン
Teams や VivaEngage で作成したM365グループには共有メールボックスのようなものが設定されており、HiddenFromExchangeClientsEnabledをFalseに設定するとOutlook等から確認できるようになる。これを共有メールボックスではなく配布リストのような動きにできないかというお話。特にVivaEngageになっているものは(PowerShellで作成したものもそうでないものも)HiddenFromExchangeClientsEnabled をFalseに変更しても共有メールボックスのようなものは出現しないので配布リストのような動きにしたいと考えた。

AutoSubscribeNewMembers をTrueに設定すると、今後追加されたメンバーに関しては共有メールボックスに配信されるメールが個人メールボックスにも配信されるようになるとのこと。
CloudSteady:M365グループでメンバーの個人メールボックスへ配信させるには
実際にPowerShellで設定しようとすると SubscriptionEnabled がTrueになっていないと AutoSubscribeNewMembers をTrueにできないとエラーが出る。
Teams、VivaEngage、PowerShellで作成したM365グループで SubscriptionEnabled、AutoSubscribeNewMembers の既定値はいずれもFalseのようであった。

M365管理センターでグループの設定にある「チームのメールとイベントのコピーをチーム メンバーの受信トレイに送信する」にチェックを入れて保存すると、Teamsで作成したM365グループでは SubscriptionEnabled、AutoSubscribeNewMembers がどちらもTrueに設定されるが、VivaEngageで作成したM365グループではエラーが出るのでPowerShellで SubscriptionEnabled をTrueに設定しておかないと保存できない。その後チェックを外して保存すると AutoSubscribeNewMembers はFalseに戻るが SubscriptionEnabled のほうはTrueのままでありPowerShellを使わないとFalseに戻せない。

SubscriptionEnabled をFalseに設定するには AutoSubscribeNewMembers もFalseに設定する、AutoSubscribeNewMembers スイッチは AlwaysSubscribeMembersToCalendarEvents スイッチを上書きする、とSet-UnifiedGroupのパラメーターに記載がある。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

M365グループ 予定表 AlwaysSubscribeMembersToCalendarEvents HiddenFromExchangeClientsEnabled

2024-10-27 16:45:32 | パソコン
Teams のチーム内で会議を設定した場合、「受信トレイでのフォローを停止する」設定が「自分への返信とグループのイベントだけを受信する」になっていると参加者と指定されているメンバー以外の予定表にも追加されてしまうらしく、「自分への返信だけを受信する」にするとそうはならなくて済むらしい。なお既定値が、Teamsから作成したグループでは「自分への返信だけを受信する」、別の手段で作成したグループでは「自分への返信とグループのイベントだけを受信する」になっているらしい。
Microsoft 系のあれこれ:Microsoft365グループから作成したTeamのチャネル内会議を予定するとメンバー全員の予定に入ってしまうのを回避する

<グループ一覧の取得と AlwaysSubscribeMembersToCalendarEvents プロパティの設定値を確認>
Get-UnifiedGroup | Select-Object DisplayName,ExternalDirectoryObjectId,AlwaysSubscribeMembersToCalendarEvents
<今後追加されるユーザーの既定値を「自分への返信だけを受信する」にする>
Set-UnifiedGroup -Identity $ExternalDirectoryObjectId -AlwaysSubscribeMembersToCalendarEvents:$false

AlwaysSubscribeMembersToCalendarEvents スイッチは AutoSubscribeNewMembers スイッチに上書きされるとSet-UnifiedGroupのパラメーターに記載があるので、M365グループの共有メールボックスを配布リストのように使いたい場合はTrueに設定されることになるので注意が必要。

Outlookにグループ予定表を表示させるには、Teamsから作成したグループで HiddenFromExchangeClientsEnabled が既定値Trueに設定されているのをFalseに変更すればよいが、同時に HiddenFromAddressListsEnabled もFalseに変更されるためグローバル アドレス一覧 (GAL) から非表示にするならばTrueに戻す。
Set-UnifiedGroup -Identity $ExternalDirectoryObjectId -HiddenFromExchangeClientsEnabled:$false -HiddenFromAddressListsEnabled:$true
なおVivaEngageになっているものは(PowerShellで作成したものもそうでないものも)HiddenFromExchangeClientsEnabled をFalseに変更しても共有メールボックスのようなものは出現しない。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PowerShell UTF8 BOMなし 読み書き ConvertFrom-Json

2024-10-14 20:32:37 | パソコン
PowerShellはBOM無テキストファイルの読み書きは非常に苦手だ。UTF8BOM無のJSONファイルを読み込ませたくて少し苦労した。

UTF8BOM付を読み込ませるにはよく紹介されているこんな書き方になる。
Get-Content -Path $filepath -Encoding UTF8 | ConvertFrom-Json

いっぽうでUTF8BOM無を読み込ませるならばこんな書き方になった。Byte配列で読み込ませてUTF8でデコードする。
Get-Content -Path $filepath -Encoding Byte -Raw | %{[Text.Encoding]::UTF8.GetString($_)} | ConvertFrom-Json

UTF8BOM無の書き込みはJSONではないが下記ページの例が簡潔。UTF8でエンコードしてByte配列で書き込ませる。
GitHub:PowerShellでBOM無しUTF8を書くサンプル
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする