1通のメールから始まった。安否確認システムを自作してみた話

1通のメールから始まった。安否確認システムを自作してみた話

記事
コラム
ある日、妻から何気なく、
「会社からこんなメール来たよ」と、スマホを見せられました。
内容は、地震発生時の安否確認メール。
「地震が発生しました。あなたの安否状況を回答してください」
そんな感じのメールでした。
そのときは、
「へぇ、こういう仕組みがあるんだ」くらいにしか思っていませんでした。
でも、しばらくしてふと思ったんです。
これ、自分でも作れるんじゃない?
ここから、今回の安否確認システム作りが始まりました。
まずはGoogleフォームでいいんじゃない?
最初に考えたのは、とても単純でした。
安否確認って、
「無事です」
「負傷しています」
「連絡がつきません」
みたいな回答を集めるだけなら、Googleフォームでできるんじゃないか?
回答結果はスプレッドシートに自動で入る。
じゃあ、
Googleフォーム+スプレッドシート+GAS
でいけるのでは?
ということで、さっそく作り始めました。
……ところが、ここからが長かった。
「地震が起きたらメールを送る」って意外と難しい
安否確認の肝は、地震が起きたら自動的にメールを送ること。
これができなければ、ただの「Googleフォーム」です。
そこで、気象庁の地震情報を取得して、
「一定以上の地震が発生したら安否確認を開始する」
という仕組みに挑戦しました。
気象庁の公開データを取得して、地震情報を読み込んで、震度を判定して、条件に当てはまったらメールを送る。
文字にすると簡単そうです。
でも実際にやってみると、
「これ、ちゃんと動いてるのか?」
「同じ地震で何回もメール送られない?」
「設定を間違えたらどうなる?」
「社員が100人いたらどうする?」
……と、次から次へと疑問が出てきます。
プログラムを書いてはテスト。
修正してはテスト。
そしてまた修正。
気づけば、最初に思っていたよりずっと大掛かりなものになっていました。
できるだけ「難しいもの」にしたくなかった
開発を進めているうちに、もう一つ気になってきたことがあります。
それは、
「これ、使う人が難しかったら意味がないよな」
ということ。
安否確認システムを導入する会社の担当者が、全員プログラマーなわけではありません。
むしろ、
「GASって何?」
「APIって何?」
という方のほうが普通だと思います。
そこで、
できるだけ専門知識なしで使えるものにしよう と考えました。
スプレッドシートをコピーして使えるようにして、必要な情報を入力。
重要な部分は間違って編集されないように保護。
安否確認する側は、スマートフォンからフォームを開いて回答するだけ。
そして管理する側は、スプレッドシートを見れば回答状況を確認できる。
できるだけシンプルに。
そして、ようやく「商品」になりました
試行錯誤を繰り返して、ようやく形になりました。
最初はただの、
「Googleフォームで安否確認できたら面白そう」
くらいの思いつきでした。
それが、
地震情報を取得する
条件を自動判定する
安否確認を通知する
フォームから回答する
回答を自動集計する
という、一連の仕組みになりました。
そして今回、これを買い切り型の安否確認システムとして公開することにしました。
安否確認システムって、意外と月額料金がかかる
今回、実際にいろいろな安否確認サービスを調べてみて驚いたのが、やっぱり月額料金です。
もちろん、企業向けの本格的なサービスなので、
- 災害情報との連携
- 自動通知
- アプリ
- 電話
- LINE
- 管理機能
- BCP関連機能
など、充実したサービスがたくさんあります。
本格的な企業には、そういったサービスが必要だと思います。
一方で、
「社員数がそこまで多くない」
「とりあえず災害時の安否確認だけできればいい」
「月額料金を払い続けるほどではない」
という会社もあるのではないでしょうか。
そこで今回作ったのが、
Googleの仕組みを活用して、できるだけシンプルにした安否確認システム
です。
買い切りなので、毎月利用料金を払い続ける必要がありません。
「何も対策していない」会社にこそ使ってほしい
個人的には、ここが一番伝えたいところです。
安否確認システムをすでに導入している会社なら、もちろんそのままでいいと思います。
でも、
「うちは特に何もしてないな……」

という会社も、意外とあるのではないでしょうか。
災害は、
「そろそろ準備しようかな」
と思ったタイミングで都合よく来てくれるわけではありません。
地震もそうですし、大雨や台風もそう。
最近では線状降水帯による大雨や水害のニュースを見る機会も増えました。
「災害が起きたとき、社員の安否をどう確認する?」
この問題を、少しでも簡単に解決できる仕組みになればいいなと思っています。
次は「大雨」にも対応してみたい
そして現在、ちょっと考えていることがあります。
今回のシステムは地震を中心に作っていますが、
大雨・洪水などの災害にも対応できないかな?
ということです。
例えば、
「線状降水帯が発生した」
「大雨による警報が発表された」
「会社所在地周辺で危険な状況になった」
そんなときにも安否確認を開始できれば、さらに使いやすくなるかもしれません。
もちろん、ここは今後の課題。
気象情報をどう取得するか、どんな条件で通知するかなど、考えることはまだまだあります。
もしかすると、
地震だけじゃない安否確認システム
に進化するかもしれません。
最後に
今回のシステムは、大企業向けの超高機能なシステムではありません。
Googleフォーム、スプレッドシート、GASなど、身近な仕組みを組み合わせて、
「必要なものを、できるだけシンプルに」
を目指して作りました。
きっかけは、妻の会社から届いたたった1通の安否確認メール。
そこから、
「これ、自分でも作れるんじゃない?」と思ったのが始まりでした。
まさか、そこから地震情報を調べたり、GASを書いたり、何度もテストしたりすることになるとは、そのときは思ってもいませんでした(笑)。
でも、こうして実際に形になってみると、
「あのメールがきっかけだったんだな」
と、ちょっと感慨深いものがあります。
災害が起きないことが一番ですが、万が一のときに、
「あってよかった」
と思ってもらえるシステムになれば嬉しいです。
そして次は……
線状降水帯や大雨にも対応できるようにするかもしれません。
開発は、まだまだ続きます。
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す