地震情報をSlackに通知してみた!開発者に直撃インタビュー

地震情報をSlackに通知

みなさん、こんにちは。プロダクトマーケティング部のタクミンです。

工アイコンイメージ

みなさんは9月1日が何の日かご存じですか?正解は、「防災の日」です。1923年9月1日に発生した関東大震災にちなんで制定された防災啓発デーです。毎年、この「防災の日」を中心として全国で防災訓練などが行われ、災害についての認識を深めています。

今回は、アステリア社で防災意識を高める取り組みの一環として、社内で運用している「ASTERIA Warpで地震情報をSlackに通知する」方法をご紹介します。地震速報をSlackに通知するフローを開発した研究開発本部の田村健さんにお話を伺いました。

「ASTERIA Warpで地震情報をSlackに通知する」インタビュー内容

地震速報フローを作成した経緯を教えてください。

きっかけは東日本大震災でした。オフィスにいた社員や出先の社員の安否確認をしなければならなかったのですが、当時はSlackもなくメールベースで行っていました。その後、当社と関わりの深い熊本県でも大きな地震がありました。大きな地震が発生すると被害も大きくなってしまうので、地震があったときに速やかに社員の状況や安否を把握できるホットラインがあるといいなと常々考えていました。そこで、地震が起こったときに、何かをトリガーにして地震情報を伝え、それに簡単にレスポンスできる、という仕組みを作ろうと思いました。そんなときに気象庁の防災情報サイトで地震の発生情報がデータとして発信されているのを知りました。ASTERIA Warpを使えば、どんなサイトでもスクレイピングして情報を抜き出せるので、簡単にできるんじゃないか、と思って作ってみたというのが経緯です。

フローではどういった処理を行っているのですか?

最初のバージョンでは気象庁のサイトで公開されているデータをASTERIA WarpHtmlParseというコンポーネントで解析してSlackで通知することにしていました。HtmlParseを使ってテーブルから震度やマグニチュード、震源などの情報をとってきて時系列で並び替えるようにしました。サイトからすべてのデータを取ってくると過去に通知した分の情報も取れてしまいます。そこでデータをフィルタリングして、最終的には必要な最新の情報だけをSlackに通知するという仕組みを作りました。フロー全体はこんな感じです。

地震通知フロー

ここまでは最初のバージョンで、うまくできた!と思っていた矢先に、気象庁のサイトがリニューアルされ、このフローが使えなくなってしまったんです…汗

気象庁のサイトリニューアル後の気象庁のサイト

リニューアルされた後は、以前に比べるともう少し扱いやすいJSONフォーマットでデータが取れるようになりました。 JSONフォーマットの扱いもASTERIA Warpは得意なので、地震情報をSlackで通知する部分を急遽、JSONフォーマットを使って処理するように変更しました。また、もともとやりたかったSlackでの安否確認の部分を新たに設定し、Slackのリアクション機能を使って簡単に安否確認できる仕組みを作りました。

データプロパティの編集

ここまでが通知から安否確認までの全体的な流れです。

フローを作成する中で工夫したポイントなど教えてください。

最初に作ったフローだと、HtmlParseを使ったことです。実は、HtmlParseは私が作ったコンポーネントなんです!とても便利なのでいつも自画自賛しています(笑)これを使えば簡単にHTMLからデータを取れるというのは分かっていたので、すぐにイメージが湧きました。あとは、どのようにフィルタリングして最新の地震情報だけを通知するのか、もポイントです。また、JSONの改良版を使ったものに関しては、データの名前がcttのように短い略称になっていて分かりにくいので、データを見比べながらマッピングを設定しました。

ストリーム型

運用するにあたっては、そもそも使っていい情報なのかを調べることに一番気を遣い、利用規約などをしっかり確認しました。

フロー作成にかかった時間はどれくらいですか?

フロー作成する部分に関しては1日もかかっていないです。開発者ですし、熟知していますからね。ただ、先ほど話した利用規約などを調べるのを含めると実働で2日くらいかと思います。

この地震速報フローのメリットと活用方法を教えてください。

テレワークなど働き方の変容に合わせて、全国の地震情報をカバーできる仕組みを活かしていきたいです。アステリアは東京・大阪・名古屋・熊本に拠点があり、さらにワーケーションや移住組などいろいろな地域で働く人がいます。そういった現代の働き方に合わせて活用できるようにしたいと思います。また、Slackを利用して通知するのは、メールなどよりも分かりやすくていいのですが、Slackが社内で使われるに従って情報量も多くなってきており、目につきにくくなってきています。そこで弊社のアプリ開発ツール「Platio」と連携してもっと通知が目に届くようにしたいと思っています。 PlatioはSlackと比べて、それぞれの報告時刻や「何か困っていることがある」といった付加的な情報も柔軟に追加できるので管理面で便利なんです。 全体的なレスポンスにどれくらいの時間がかかるかだったり、社員リストを突き合わせたり、という使い方もできるかなと思っています。そういった広がりをもたせるような活用を、Platioを使って進めていきたいです。

今後の課題や展望を教えてください。

社員に使ってもらえるかが重要になってくるので、いかに使いやすくしていくかを考えています。その一つとして、管理部の方からは安否報告の集計なども行いたいと聞いています。 そこで集計などが得意分野であるASTERIA Warpをさらに利用してPlatioからの情報を速やかに集計できるか試していきたいです。

地震が起こったとき、手軽に安否確認できるようにこのフローをどんどん活用していきたいですね!また、地震だけでなく、台風や大雨などの災害時にもこの安否確認を促すフローを活用できると思うので防災意識を高めるきっかけになれば幸いです。

おわりに

地震速報フローの詳しい設定方法はこちらの記事をご覧ください。

 



クラウド版

手ぶら de ASTERIA Warp
体験 5日間を申し込んで
「Slackアダプター」を試そう

サーバー準備の手間なくデータ連携ツール「ASTERIA Warp」の
全ての機能を5日間お試しいただけます。

今すぐ体験してみる 書籍の詳細についてはこちらをご覧ください。
基礎と実践 使い方マニュアル
著者:工 実香

著者:
工 実香

アステリアの製品に関するコンテンツ制作を行っています。新卒で入社し、日々奮闘中です。新しいことを学ぶのは楽しいです!

「ASTERIA Warp、データ分析、クラウド、業務効率化、最新技術」人気!ホワイトペーパーダウンロード受付中!今すぐチェック
ASTERIA Warpと色々つないでみた特集!記事はこちら>

ASTERIA Warp 関連サイトのご紹介

X ASTERIA Warp Developer Network(ADN)サイト

技術情報をお探しの方

ASTERIA Warp Developer Network
(ADN)サイト

ASTERIA Warp製品の技術情報やTips、また情報交換の場として「ADNフォーラム」をご用意しています。

X ASTERIA Warpユーザーグループ(AUG)

ASTERIA Warpデベロッパーの方

ASTERIA Warp オンラインコミュニティ
ADN slack

ASTERIA Warpデベロッパー同士をつなげ、技術情報の共有やちょっとしたASTERIA Warpの疑問解決の場とすることを目的としたコミュニティです。

X ASTERIA Warpユーザーサイト

ASTERIA Warpユーザーの方

ASTERIA Warpユーザーサイト
Login

製品更新版や評価版のダウンロード、各種ドキュメントのご提供、また 技術的なお問合せもこちらで受付ています。

X ASTERIA Warpパートナーサイト

ASTERIA Warpパートナーの方

ASTERIA Warpパートナーサイト
Login

パートナーライセンスの発行や各種ドキュメントのご提供をしています。

ページ先頭へ