見出し画像

AppSheetでiPaaSワークフローを作る③ーGoogleサイトで作るグループウェア (73)ー


この記事を読んで欲しい方

企業DXや校務DXの進め方に悩んでいる方
クラウドアプリの導入に悩んでいる方

①オートメーションでワークフローボットを作成

 AppSheetの編集画面左メニューから、ロボットの顔を選んでください。
 オートメーションアプリはbot(ボット)と呼ばれています。ボットとはプログラムで動くロボットの事です。
 Create my first automation をクリックします。

オートメーションを選びCreate my first automation をクリック

 Create a new botをクリックします。

Create a new botをクリック

 New Botという名前を出欠連絡WFRenameで変更します。

Renameで名前を変更

 これで、ボットができたので、連携の設定をしていきます。

②イベントの作成

  Configure eventをクリックして、イベントを作成していきます。
  イベントとは、監視対象に何かがあったら動く機能のことです。トリガー(引き金)とも言います。
  ここは出欠連絡という名前にします。

イベント名をつける

 出欠連絡イベントの右に設定画面が出てきます。

イベント内容の設定

 イベントの種類は、Data change(データに変更があったら)とSchduled(定期スケジュール)が選べます。(Chat appは今は無視してください)
 DataChangeは、Adds(追加)Delete(削除)、Update(更新)が選べます。

設定内容

 Scheduledでは、Hourly(時間)、Daily(日)、Weekly(週)、Monthly(月)、Monthly by Week(月週)が選べ、さらに、その下で細かい指定ができます。

スケジュールの設定

 今回は、DataChangeのAddsのみを使用します。データに追加があったら起動する訳です。
Event TypeはData change
Tableはフォームの回答1
(監視するシート名です)
Data chane typeはAddsのみチェック
(データが追加されたら起動)
 これで、いったん画面右上SAVEボタンを押します。

イベントの設定

 SAVEすると自動チェックが入りエラー表示(赤い✗表示)が出ますが、まだ完成していないので無視してください。完成すると消えます。

SAVEするとチェックが入る(ここではエラーは無視)

③動作プロセスの作成

 次に動作プロセスを作成します。動作プロセスとは、イベントが発生したら、動かす機能の部分です。
 ここで、Googleチャットへ書き込む動作と内容を作ります。
 画面が狭いので横に広げて作業してください。

 Add a stepをクリックします。
動作プロセスの中は、ステップをいくつも作ることができます。)

ステップに名前をつけます。出欠連絡ポストにします。

プロセスステップに名前をつける

出欠連絡ポストができましたので、設定をしていきます。

ステップ名を作成

プロセスの動作の設定は7種類あります。(エディションで動作の数が違います)
①Send an email(eメールに送る)、
②Send a notification(AppSheetアプリがインストールされているモバイルデバイスに通知を送る)、
③Send an SMS(SMSに送る)、
④Call a webhook(ウェブフックを呼び出す)、
⑤Create a new file(新しいファイルを作成する)、
⑥Call a script(GASスクリプトを呼び出す)
⑦Send a chat message(チャットメッセージに送る)

です。
ここでは、④Call a webhook(ウェブフックを呼び出す)を使います。

動作の種類

④Googleチャットスペースのウェブフックを作成する

 ウェブフックとは、クラウドアプリがデータを受け取る口のようなものです。イベントのトリガー(引き金)に対して、ターゲット(的)とも言います。
 例えると、宇宙戦艦ヤマトの波動砲で、トリガー(イベント)を引くと、マイクロブラックホールが発射(動作プロセス)され、生成されたホーキング輻射(通知の文字列)ターゲット(ウェブフック)に当たるという感じです。(マニアック過ぎました?)

ターゲットスコープ、オープン!

 まずは、テスト用のチャットスペースを作成します。
 (何度も言いますが、無料版(gmailドメイン)の人は、Googleチャットのウェブフックが作成できません。)

チャットスペースの作成

スペースの設定から、アプリと統合を選びます。

アプリと投稿

アプリと統合>Webhookを選択し、Webhookを追加ボタンを押します。
(無料版の人は、ここでWebhookを追加ボタンが動きません)

Webhookを追加ボタンを押す

Webhookに出欠通知と名前をつけて保存ボタンを押します。

Webhook名の設定と保存

出欠通知というウェブフックができたので︙からリンクをコピーします。

Webhookが出来たのでリンクをコピー

⑤ステップにウェブフックを設定する

 AppSheet画面に戻り、ステップの設定画面でUrlにウェブフックのリンクアドレスを貼り付けます。
HTTP VerbPost(投稿する)
HTTP Content Typeは、JSONにします。(JSONとは文字列の形式です)

ウェブフックをUrlにペースト

 次にBodyの部分送信する内容JSON形式で作ります。
とりあえず、テスト用に、
{"text":"送信したいメッセージ"}
と入れます。

Bodyに送信内容を入れる

 最後にSAVEボタンを押します。
 エラーが消えて、ワーニングだけになります。(ワーニングの内容は、今は無視してください。)

 ここで、下記の新しいエラー(赤い✗)が出てきたら、管理者画面でAppSheet Core セキュリティの設定が有効になっていて、Webhookが停止されていますので、管理者に言って無効にしてもらってください。

AppSheet Core セキュリティエラーが出る
管理画面でAppSheet Core セキュリティを無効にしてWebhookを動かす

 これは2023年7月より以前からAppSheet Coreを利用していると無効になっていてエラーが出ませんが、2023年7月以降に利用していると、エラーになります

AppSheet Coreセキュリティーのエラー

⑥最後にスプレットシートでAppSheetオートメーションのイベントを受け入れる設定

 最後に、スプレッドシート側で、
拡張機能>AppSheet Events>Enable for documentを選択して、オートメーションのイベントを受け入れる設定をします。
 Enable for documentを選ぶと拡張機能が起動しますので、Turn events on/offのフォームの回答1を選ぶとオートメーションと連動します。

AppSheet Eventsの起動
イベント監視シートの指定

これで、ワークフローアプリが完成しました。

今回は、ここまでです。

この記事が気に入ったらサポートをしてみませんか?