ArcGIS Survey123への投稿通知をLINE Notifyで受け取る

自己紹介:
@KentoIDEです。
GIS(地理情報システム)のベンダーで営業をする傍ら、個人の研究・開発目的で地図コンテンツを作成しています。趣味です。

こんなのとか画像1

こんなのとか。画像2


本文ここから:

大した量ではないけど、自分で作った地図(だいたいArcGIS Onlineのマップ&アプリケーション)が少しずつ増えてきたので、ライブラリサイトを作ろうと考えた。

画像3

Esri のクラウドサービス ArcGIS Online の開発者向けプラン ArcGIS Developer Subscription 無償プランを使用。ホストさせるGISデータの容量にもよるけど、研究・開発目的であれば無償から利用できる素敵なサービス。
ライブラリサイトは、このサービス内のアプリケーション ArcGIS Hub を使って作成。

せっかくなので、「こんな地図コンテンツがほしい」というリクエストを受け付けるフォームを追加した。

画像4

フォームは同じ ArcGIS Online の ArcGIS Survey123 を使用。GUI上で一瞬でアンケートフォームが作れる便利な子。ただ、アンケート回答が届いた通知がもらえないので、連携サービスの Integromat を経由して、LINEに通知が届くようにしてみた。本記事はその手順記録。

前置きここまで。本題ここから。

1.Integromat でシナリオを作成
Integromat についてはネットの海に詳しい紹介記事がたくさん転がっているので割愛。例えばこちらをご参照のこと 

アプリケーションをつなぐIntegromatが素晴らしい@makky_tyuyan
https://qiita.com/makky_tyuyan/items/7802bec3a941c5184034

Integromatでアカウントを作成してサインアップしたら、「Scenarios」のタブから右上の「Create a new scenario」ボタンをクリック。

画像5

類似製品だとMSの Power Automate (当時は「Flow」という名称)で遊んだことがあるけど、微妙に用語が違ってて混乱する。でも流れはだいたい一緒。閑話休題。

連携対象のサービスを選ぶ画面に遷移するので、検索ウインドウに「Survey123」と入力。するとArcGIS Survey123 が表示される。Survey123 をクリックして、右上の「Continue」ボタンで次の画面へ。

画像6

同じEsri のサービスではArcGIS QuickCapture も Integromat に対応している。QuickCapture で遊んだ時の記事はこちら

シナリオの編集画面に遷移したら「Survey123」をクリックして、

画像7

今回はSurvey内容をトリガーとして通知を飛ばす連携なので、「Watch Survey」を選択。

画像8

「Add」ボタンをクリックして、ArcGIS Online の認証を行う

画像9

「Webhook name」がこの連携の名称(多分任意でつけてOK)
「Connection」のAddでArcGIS Online の認証情報と紐づけ(ArcGIS Online の認証フォームが開く)
認証後に「Survey」で、認証したArcGIS Online 側のどのSurvey123 調査と紐づけるかを指定。
「Trigger event」は、データが追加されたときに通知するか、編集されたときに通知するかを選択。今回は追加されたときなので「addData」にチェック。

画像10

(ArcGIS Online のアカウント作成手順やSurvey123 の調査フォーム作成手順は割愛。欲しい方おられたらTwitter @KentoIDE にご要望ください。)

「Save」ボタンをクリックすれば、トリガー側(Survey123)の連携設定は完了。

2.LINE Notify の設定

次にアクション側(LINE Notify)を設定。
Integromatのシナリオ編集画面で、トリガーのアイコンの右側にマウスをオンすると、「Add another module」が表示されるのでクリック。

画像11

(分岐処理とかも実装できるっぽいけど、あまり高度なことはするつもりない)

Search に「LINE」と入力して、LINEを選択

画像12

今回はLINE Notifyを使って通知を受け取るので「Send a Notification」を選択。LINEの開発者アカウントを作ってBotを作ると他にもいろいろ出来そう。気が向いたらやろうと思う。

画像13

「Connection」は「Add」ボタンから自分のLINEアカウントでサインイン、
「Message」では、今回はSurvey123 調査結果レイヤーの「『こんな地図がみたい』というリクエストをお寄せください」という属性(Feature Attribute)を選択し、OK。

画像14

忘れずにSCHEDULINGを「ON」にしてから「Save」。

画像15

問題なく動作してるっぽい

画像16

投稿フォームから文章を送信すると・・・

画像17

通知が届いた!成功。

画像18


所感:
ここまで(ライブラリサイトの作成からIntegromatでのLINE連携まで)コーディング一切なし!ノーコード万歳。
Integromatは月1,000件まで無償契約でOKらしいので、ガンガン要望を受け取れたらいいなと思う(寝言)

今後の展開:
他にもWebhookでの連携面白そうだったのでそのうちまた試してみたい。

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