Web質問受システムの作成(Office365 flow)

 休校の中でWebで勉強をする機会が増えました。
 本校では卒業生を TA として雇っています。

 そこで Web で TA に質問をすることができる仕組みを作ってみようということになりました。
 数日かけて骨格部分は完成しましたので,公開しようと思います。

 使用しているのは Microsoft が提供する Office365 のForms,Teams と flow です。
 Office365 は全国の学校で多く使われています。兵庫県の県立高校でも Surface と併せて導入することが決まったとニュースになっていました。


 馴染みのない方のために,Forms と Teams,flowがどういうものなのか簡単に説明しておきます。

Forms:アンケート機能。
Teams:チャットや電話をしたり,グループを作ることができる。

 この 2 つは office365 を導入しているのであれば大変お世話になっていることと思います。
 使いこなせば課題の提出や授業運営でも大きな力を発揮します。

 一方で flow については office365 を導入していたとしてもせいぜいアイコンを見たことがある程度の人が大半だと思います。

flow:特定の条件(トリガー)が起きたときに,決められた処理を行う。

大雑把な構想

 それでは具体的にどのようにして Web 質問受けを行うのかを説明していきます。まずは,大雑把な流れを説明します。

1.生徒が Forms を使って質問したい意思表示を行う。
2.Teams で TA に質問が来ていることを通知する。
3.TA が生徒に Teams で連絡を取り質問に対応する。

  Forms では学年・文理・質問する教科程度の簡単な内容の入力にします。運用状況を見て,質問したい問題集なども入力するようにしたらいいかもしれません。

準備

 TA 用のチームを作成しておきます。チームの中に質問受け用のチャンネルも作成します。
 TA のアカウントとなるメールアドレスの一覧も作成しておきます。
 生徒が投稿する Forms も作成します。

flowで作ってみる

 計画を立てたら flow でそれを実現してみましょう。

画像1

 flow は赤丸のアイコンです。flow を開いたら新規作成をします。

 flow の内容はこんな感じ。

画像2

 文章で書くと次のようになっています。

1.Forms に投稿があったら次の処理を行う
2.Forms の内容を取得する。
3.TA のメールアドレスの一覧の EXCEL を開く。
4.空の変数を作る(メールアドレス用)。
5.変数に TA のメアドを ; 区切りで並べる。
6.TA のメアドに「承認」を送る。
7.「承認」の内容を TA チームの質問受けチャンネルに投稿する。
8.「承認」のボタンが押されるまで待機する。押されたら次へ。
9a.「承認」を押した TA に生徒の情報を送る。
9b.質問を投稿した生徒に TA から連絡がある旨を送る。

 この流れの中で独特なものは「承認」です。
 「承認」は次のような形で記述します。

画像3

 上から説明します。
 「承認の種類」は「承認・却下」の二択か,選択肢となるボタンを独自に作るかを選べます。カスタム応答は後者です。さらに,承認者全員の応答を待つか,1 つでも応答があれば次に進むかも決められます。今回は 1 つでも応答があれば次へ進むものを選択しました。
 「担当者」は承認を行う人たちです。ここにはメールアドレスを指定します。そのメールアドレス宛に承認がありますという旨のメールが行きます。
 「詳細」は本文のことです。Forms で入力された内容を引っ張ってきています。

 このままでは TA にメールが行くだけです。メールより Teams のチーム上でやり取りを行いたいのでその内容をチームに投稿します。
 それが次のステップである「独自のアダプティブカードをフローボットとしてチャンネルに投稿する」アクションです。

画像4

 このような形で投稿されます。

 ここで「対応する」ボタンを押せば,TA には生徒のメールアドレスが送信されます。TA はメールアドレスから生徒の個人チャットに入り質問対応を行います。
 生徒側にはもうすぐ TA からチャットがくる旨を通知します。

今後の展開

 この仕組はまだ検討段階のものです。更にブラッシュアップしていかなければならない部分もあると思います。
 質問者と対応者,時間などを EXCEL に記録していく仕組みは最低限として作るつもりです。

 「承認」アクションを使ってメールを送ったあとに,Teams のチャンネルに同じ内容を投稿するというのは遠回りだと思っています。
 チャンネルに直接このような内容を投稿することもおそらく可能です。そのためには json を書く必要があります。
 私の能力的な問題で現在のところそれをすることができません。
 少ない時間で実現するために,最初から用意されている機能を複数組み合わせて強引に仕組みを作り上げました。

 もともとの計画ではTA が開いている Zoom の URL を生徒にボットから送信して,生徒が URL をクリックしたらビデオ会議が始まるというものにしようとしていました。この方法では TA と生徒が直接チャットをすることがなく,個人的なつながりを防ぐことができます。
 しかし,どういう訳か,ボットからチャンネルに投稿する場合は html の記述ができリンクを作成するなどができますが,ボットから個人へチャットする場合は html での記述ができません。
 おそらく遠くない未来のうちにこれは改善されることと思いますが,現状ではリンクにならないので URL が送られてきたら生徒がそれをコピーしてブラウザの検索欄にペーストしなければなりません。この手間を生徒側に求めることはできないので,チャットを送るという手法で妥協しました。

 いいサービスであると思っていますので,実現できるように来週は各所への根回しに勤しもうと思います。
 これを機会に flow の勉強をしてみたいと思っています。

※ 本文は以上です。「記事を購入」での応援を歓迎します。


ここから先は

0字

¥ 200

期間限定 PayPay支払いすると抽選でお得に!

最後までお読みいただきありがとうございます。「スキ」をしていただけるととても励みになります。