ハンズオン付きオンラインイベントをブレイクアウトセッションとBotを使って開催

オンラインで実施されるイベントは、年々増えてきております。
イベントというと様々な種類がありますが、今回は「ハンズオンを含むイベント」をWebexで実施した事例と、その時作成したBotのご紹介です。

皆様は、「ハンズオンを含む」オフラインのイベントに参加したことはあるでしょうか？
ある方はイベント風景を思いだしたり、ない方は想像してみてください。

* 作業内容がわからなくなったり、作業環境に問題が発生した場合、講師にヘルプを求める
* 更に、個人の環境からの参加となるため、各参加者で異なる環境となり、オフライン開催より多くの問い合わせが発生する事が考えられる

そのような課題を解消してハンズオンありのオンラインイベントを実施するために、Webex Meetingsのブレイクアウトセッションと、Webex MesagingsのBotを活用してみました。

**①：対面QAにブレイクアウトセッションを使用する**
**②：ハンズオンのFAQをBotが担当する**

結果、約50人規模のオンラインイベントで、混乱もなく無事イベントを完了することができました。

# 対面QAにブレイクアウトセッションを使用する
複数人参加するイベントでも、ハンズオンの場合は対面QAが必要不可欠です。
対面QAは、オフラインの場合、以下の流れで行っていきます。

* 手を挙げて講師を呼び止め
* 操作画面を見ながら対応

その様子を、ブレイクアウトセッションを利用して対応します。
ブレイクアウトセッションには、各セッションごとに「ヘルプを要求」のボタンが設置されています。
予めブレイクアウトセッションの部屋を複数設定しておき、対面QAを求める参加者は空いているブレイクアウトセッションに移動し、「ヘルプを要求」の操作を行っていただきます。

ブレイクアウトセッションには質問者と講師の2人になるため、大勢の前では質問し辛い方でも質問することができ、質問者に画面共有を行っていただくことで、状況を確認しながらQA対応を進める事ができます。

**※注意点※**
会議端末から参加された場合、ブレイクアウトセッションを選択して部屋に入ることができないため、イベント通知の際、PCから参加いただけるように告知が必要です。

ここからは、実際にブレイクアウトセッションを作成し、当日の操作を確認していきます。

**事前準備**
ブレイクアウトセッションはミーティング作成する際に設定する事ができます。
ミーティングを作成するために、[Webex Meetings](https://cisco.webex.com/webappng/sites/cisco/meeting/home) へ移動します。
「ミーティングをスケジュール」を選択します。
![onlineEventCase02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/0fdb98b4-8949-4d95-dc2b-1667877cbdf2.png)

「ミーティングをスケジュール」画面が表示されるため、「詳細設定を表示する」を選択します。
![onlineEventCase01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/468ccd60-844a-472e-ed55-f67f66f7ce4b.png)

表示された「スケジュールオプション」を選択すると、ブレイクアウトセッションの項目が表示されます。
「ブレイクアウトセッションを有効にする」にチェックを入れます。
これでブレイクアウトセッションが利用可能になります。
![onlineEventCase03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/36505b40-4401-4e16-59a5-5b7ce371f9f8.png)

「ブレイクアウトセッションの事前割り当て」を選択すると子画面が表示されるので、
「部屋数」を入力して「手動」を選択して「作成」を選択します。
![onlineEventCase04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/36b8b554-d050-09cf-eaff-6bbd788b733c.png)
※「自動」にすると、参加者が割り振られてしまうため「手動」にします


**当日操作**
イベント当日は、サポートが必要な参加者にブレイクアウトセッションを選択してもらい、「ヘルプを要求」ボタンから選択してもらいます。

ブレイクアウトセッションに参加するには、「参加者」画面を表示して、「すべてのブレイクアウトセッションを表示」を選択します。
![onlineEventCase05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/81b5a204-5e8d-9772-037f-efeddff3a028.png)

ブレイクアウトセッションと現在の部屋の人数が表示されているので、「0/0」の部屋の「参加」を選択してブレイクアウトセッションに移動できます。
![onlineEventCase06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/608fe745-c041-639a-a129-992ef855aa1f.png)

ブレイクアウトセッションに移動すると「参加者」画面に「ヘルプを要求」ボタンがあるので、対面QAが必要なタイミングで「ヘルプを要求」を選択してもらうようアナウンスします。
![onlineEventCase07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/7d4c5344-63fc-85dc-503d-4a488303da97.png)

「ヘルプを要求」を受けると、主催者に通知が来きます。
![onlineEventCase08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/9dd25f69-0a19-38a7-571a-ea6b818103b4.png)

QA対応を行うユーザーが要求があったブレイクアウトセッションに移動し、後は画面共有などを活用してQA対応を行います。

# ハンズオンのFAQをBotが担当する
ハンズオンを行った後、ハンズオンの内容を実施する演習時間を設けています。
オンランで演習というと、

* QAが発生するのでは
* 演習の回答は自己採点になるのか？

という懸念があります。

そこで、Webex MesagingsのBotを活用してクイズ形式で楽しめる演習時間にしようと考え、

* Botから問題を出題し
* Botに対して回答する
* 正解であればBotが次の問題を出す
* 時間内に全問正解者に景品を出すため、最終問題の正解時に運営スペースに回答者の情報を通知

という仕組みでBotを作成していきます。

演習と作成するBotの内容は次の通りです。

**演習**

* 時間：1時間
* 問題数：4問＋難易度が高い問題1問
* 備考：1時間以内に4問回答できた方から抽選で1名様に景品あり

**Bot**

* 出題：参加者には問題の回答を送信いただき、正解であれば次の問題を送信する
* ヒント：問題出題時にヒントのキーワードを添付し、そのキーワードBotに送信するとヒントをBotが送信する
* 備考：4問目が正解したら、正解した方のWebex情報を運営スペースに通知する

回答送信時の「正誤」判定と、問題の出題
![onlineEventCase09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/8c53f836-e7d2-855f-4658-311b6c2cae25.png)

ヒントの出題
![onlineEventCase10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/d8b3b2a3-c1f2-dfd4-8189-9aa1359ff3c0.png)

4問正解者の通知
![onlineEventCase11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/ad99984b-4dab-bc6b-591a-c0d46b97ce7e.png)

BotはiPaaS（[webMethods.io](https://www.softwareag.cloud/site/product/webmethods-io-integration.html#/)）を使用して、ノーコードで作成しました。

BotへのメッセージPOSTをトリガーに、条件分岐（Switch）でPOSTされたメッセージを判定、分岐してPOSTした相手にダイレクトメッセージで応答を登録しています。
（フローのイメージ）
![onlineEventCase12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/a749b68c-c467-5d1c-4db7-ecfae5fa1958.png)

4問目の正解時のみ、指定した運営スペースにPOSTしたユーザーの情報を登録しています。
（フローのイメージ）
![onlineEventCase13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2299182/58298bde-a853-9cfd-75c0-e632844d246a.png)


# イベントのまとめ
実際にイベントを実施して、想定していた課題の解決の他、気づきもありました。

* Botが演習の出題と回答のチェック、ヒント出しを行っていたため、作業環境によるQA以外はほとんど発生しなかった
* ブレイクアウトセッションで相手の画面を表示してもらい対応できたため、スムーズにQA対応ができた
* イベントに当日参加いただけなかった方が、録画を確認して演習を実施することができた

Botが演習を担当していたため、リアルタイムの参加者以外も演習に参加でき、4問目に正解された事も運営スペースへの通知で確認する事ができたことができたのはBotをうまく活用できたのではないかと思います。

以上のように、ブレイクアウトセッションとBotを活用することで、オンラインでもハンズオンありの研修を実施することができ、また、当日参加できなかった方へのハンズオンフォローといった想定していなったよい点を発見する事もできました。

今後様々なイベントでオンライン/オフラインが併用したイベントが実施される事になると思いますが、WebexとそのBotなどを活用する事で、
ハンズオンありのイベントでもオフライン参加者と同様のイベント体験をオンライン参加者にもしていただけるのではないかと考えます。