2022年2月

2022年2月26日 (土)

主に学校などの教育機関向けの機能として用意されているのが「監視ありチャット機能」です。商用テナントでも利用できます。

これは教師がその場に居合わせなければ、生徒同士でチャットできないようにするための機能です。チャットそのものをオフにしてしまうと不便であるため、監視役として先生がその場で立ち会うことを条件に生徒間でチャットを許可するわけです。

チャットの権限の役割をユーザーに割り当てる

チャットの権限には次の3つがあります。

すべての権限 (Full permission)

どのユーザーともチャットを開始できるため、他の先生やスタッフ、生徒全員とチャットできるということです。監視役の教育関係者にこの役割を割り当てます。

限定された権限 (Limited permissions)

完全な権限を持つユーザーおよび限定された権限を持つユーザーとはチャットできますが、制限されたユーザーとはチャットを開始することはできません。この役割は、生徒へのアクセスは監視下だけに限定され、他のスタッフや教育関係者へは常にアクセスできる立場スタッフに最適です。

制限付き権限 (Restricted permissions)

完全な権限を持つユーザーとだけチャットできます。完全な権限を持つユーザーが招待する会話に参加できます。

----------------------

権限の役割の割り当ては、Microsoft Teams管理センターの「メッセージングポリシー」内の[チャットの権限の役割]で行います。

2022-02-26_12-31-06

※PowerShellを使う場合は ChatPermissionRole ポリシーを使います。

監視つきチャットを設定する

チャットの役割を指定したら、テナント全体での「監視付きチャット」を有効化します。この機能は既定では無効です。Microsoft Teams 管理センターの「Teamsの設定」で「役割ベースのチャット権限」をオンにします。

2022-02-25_19-03-11

機能の検証

機能を検証するために3つのポリシーを用意しました。

  • Students…制限付き権限
  • Teachers…すべての権限
  • Staffs…限定された権限

2022-02-26_13-11-08

検証用に用意した各ユーザーは次の通り。

Students ポリシーを割り当てたユーザー

  • 浅田 裕子
  • 横田 和馬

Teachers ポリシーを割り当てたユーザー

  • Ai HIRANO

Staffs ポリシーを割り当てたユーザー

  • John Smith

生徒同士での会話を試す

横田さん⇒浅田さんにプライベートチャットを送ってみます。これは送信できません。

2022-02-26_16-06-40

生徒から先生に直接チャットする

生徒から先生へ (この場合は横田さん⇒HIRANO) の直接のチャットも禁止されます。

2022-02-26_14-21-57

先生が生徒をメンバーとしたグループチャットを開始する

先生が生徒(横田さん、浅田さん)を追加してグループチャットを作成すると、生徒同士でもグループチャット内でやり取りができるようになります。

2022-02-26_16-14-23

先生がグループチャットから退出する

先生がグループチャットから退出しようとすると、退出できないというメッセージが表示されます。監視役の人はいなくなるわけにはいきません。

2022-02-26_13-58-00

2022-02-26_13-58-38

スタッフから生徒にチャットする

スタッフから直接、生徒とチャットすることはできません(この場合は、John さん⇒ 横田さん)

スタッフから先生にチャットする

スタッフは先生とはチャットできます。もちろん、スタッフ同士もチャットできます。

スタッフが生徒を含むグループチャットに追加される

スタッフが生徒を含むグループチャットに追加されると、グループチャット内では生徒ともチャットすることができるようになります。

2022-02-26_14-16-07

ちなみに、この機能はあくまでも「チャット」に限定したものであり、チーム内での会話はチームメンバー全員が閲覧できる状態となるため、チャネル内では問題なく投稿しあうことができます。

参考

監視ありチャットを使用する - Microsoft Teams | Microsoft Docs

 

2022年2月24日 (木)

SharePoint サイトのドキュメント ライブラリには画像をアップロードしていると、ビュー上に「画像タグ」列を追加できるようになっています(2022年2月現在、この機能はロールアウト中であるためテナントによっては利用できない可能性があります)。

この列の値は AI により自動的に値が入ってくることがあります。SharePoint は画像アップロード時に画像を調べて自動的にキーワードを割り当てようとします。ただし、不正確だったり、適切なタグが見つからないこともあるため、必ずしも値が生成されるわけではありません。

自動的に生成された画像タグは、画像が更新されるたびに再作成されます。ただし、手動で追加したタグは削除されません。

画像タグの編集

この画像タグの値は、ファイルのプロパティ編集を行うことで手動で書き換えられます。

2022-02-24_21-39-44

タグを入力したら Enter キーを押下することでタグが決定されます。不要なタグは×で削除できます。なお、画像タグ列は文字数制限があり、255文字までとなっています。

2022-02-24_21-40-46

利活用

このようにタグを追加しておくことで、検索時にキーワードで絞り込んだり、フィルター条件に利用できるので便利です。

2022-02-24_21-45-57

2022-02-24_21-57-10

参考

 

Work with image tags in a SharePoint library

Whenever you upload an image to a library in SharePoint in Microsoft 365, descriptive keywords (or tags) based on the content of the image are automatically added to an column in the library. If an image contains tags at the time you upload it, those tags will also be added to the Image Tags column.

続きを読む »

SharePoint サイトの Home.aspx はサイトのページライブラリに格納されており、これが各サイトのホームページとなっています。このファイルはサイトの編集アクセス許可レベル以上ある場合は、削除できてしまいます。

削除してしまうと、いざサイトにアクセスしようとしたときに 404 Not Found エラーが表示されファイルが見つからないといわれます。

2022-02-24_10-22-15

ですが、サイトが壊れたわけではなくホームページが見つからないといわれているだけなので、慌てずに対処しましょう。ですが、ファイルがごみ箱に移動しているので、速やかに対応しないと3か月ほどたつと完全削除となってしまうのでご注意を! 

さて、こんな時に覚えておきたいのがごみ箱に直接アクセスできるURLです。

ごみ箱の URL は次のように決まっています。

<サイトのURL>/_layouts/15/RecycleBin.aspx?view=5

ちなみに、サイトコレクションの管理者 (サイトの管理者)は第2のごみ箱にもアクセスできます。もし、ごみ箱からさらに削除されてしまっているような場合は、最悪ここから復旧できるかもしれません。ここは時間との兼ね合いでしょう。このURLは末尾のパラメータが13 です。

<サイトのURL>/_layouts/15/RecycleBin.aspx?view=13

 

ちょっとしたトラブルも冷静に対処したいものです。

2022年2月19日 (土)

長期間の承認フロー

Power Automate にはフローの実行継続期間があり、フロー開始されてから30日となっています。

Duration and retention limits

2022-02-19_22-39-26

承認フローのようなフロー完了までに長期間にかかるようなものは、この制限に引っかかってしまうことがあります。そこでマイクロソフトは承認の情報を Microsoft Dataverse に格納することを勧めています。下記の記事は2019年のもので現在ステータスがアーカイブになっていますが参考にはなります。

Long-lived approvals and flows on Common Data Service

かいつまむと 承認 コネクターの 「承認の作成」アクションを使うことで、フローを作成した環境に既定で用意されている Microsoft Dataverse に承認が格納されるとのこと。これをうまく使えば長期実行できるよ、という話です。

そこでたどり着くのが Power Automate Community の「Build long-running Approval Flows」というブログ記事です。これを一通り試せば、おおよそどんなことをすべきかわかるかなと思ったのですが、如何せん、記事が書かれたのが2019年で Dataverse にもなっていない頃です。今のフローで作成してようとすると結構躓きどころが多い。

ということで、2022年2月現在でフローを作り直すとどうなるかをここに書き記しておきます。フローは2つを組み合わせていきます。大まかなイメージは次の通り。

2段階フロー

1つ目のフロー

こは次のように作成します。ポイントは「承認」コネクターの「承認を作成」を使うことですね。

2022-02-19_22-11-15

2つ目のフロー

これには Dataverse のコネクターを使っています。これはプレミアム コネクターであるため有料プランなどが必要ですね。そのためインターネット上にはこのコネクターを使わずにうまくタイムアウトを処理するロジックを構築している例が複数見つかるので、気になる方は探してみてください。

2022-02-19_22-16-50

最初に追加しているのが Dataverse の「行が追加、変更または削除された場合」トリガーです。「種類の変更」は "更新" を指定し、テーブルは Approvals を指定します。

2022-02-19_23-32-37

次に「IDで行を取得する」アクションを追加します。これは承認を依頼したユーザーを特定するために使用しています。

2022-02-19_23-33-59

条件分岐は「行が追加、変更、または削除された場合」トリガーの「Result」を使って、承認されたかどうかを判定します。

2022-02-19_23-35-41

最後は承認または却下された時にメールを送信しています。送信先は「IDで行を取得する」で取得した申請者の「既定電子メール」を指定しています。「Title」は「行が追加、変更、または削除された場合」トリガーからの取得したものです。

2022-02-19_23-37-35

以上の2つのフローを保存したら動作検証しましょう。

検証結果

1つめのフローをテスト実行することで、Microsoft Teams の承認アプリに承認依頼が送られます。これで1つめのフローが実行されたことがわかります。

2022-02-19_10-27-14

これを承認することで無事にメールに結果が届きます。これで2つめのフローも実行されたことがわかります。

おまけ

このフローを構築することでわかったのが、承認コネクターで「承認を作成」することで Approvals という Dataverse のテーブルに承認が追加されることです。実際にビルトインのソリューションである「Microsoft Flow Approvals Core Solution」を見てみると Approval (複数形は Approvals, スキーマ名は msdyn_flow_approval ) テーブルにデータが追加されていることがわかります。

2022-02-19_20-22-02

2022-02-19_20-24-09

2022年2月18日 (金)

Power Apps の研修を行っているときに、テーブルやコレクションの解説をします。理解を深めるために、その場で実際にコレクションを作成してから、これをドロップダウンリストやデータテーブル コントロール、ギャラリーコントロールに追加していくような実習をします。

ここで使うのが ThisItem 演算子です。演習をしながら解説するのですが、しっくりと理解できない方も少なくないようです。

そこでイメージをつかんでいただけるようにビデオを作成してみました! ぜひ、これを見てギャラリーコントロールと ThisItem 演算子の関係をイメージできるようになってくださいね。