ASTERIA WARP 製品ブログ

LINEとつないで地域ごとにその日の最高気温と猛暑予報を通知してみた——猛暑日はテレワークで効率的にお仕事をしよう!

LINEとつないで地域ごとにその日の最高気温と猛暑予報を通知してみた

毎日暑い日が続いていますが、夏バテなどしてませんか?
そんな暑い夏こそぜひ取り入れていただきたいのが「猛暑テレワーク」。

「猛暑テレワーク」というのは、猛暑日(最高気温が35度以上)の 予想が出た日は、積極的にテレワークを推奨するというもので、これによって、猛暑の中多大なエネルギーを使って出勤することを避け、快適な環境で仕事をすることで、 アウトプットの最大化を図るというものなんです。

インフォテリアでは、今年もこの「猛暑テレワーク」を実施中!
この夏もしっかりお仕事もプライベートも充実して過ごせそうです。

猛暑テレワークイメージ

ではこの猛暑予報をどのように毎日確認しているのかというと、
朝の時点でその日の予報が猛暑日(最高気温が35度以上)であるとき、メールで自動的に通知されるという「猛暑日予報メール通知システム」が2年前に構築されていて、社員はこのメールを受け取って、今日はテレワークにするかどうかを判断していました。

こちらの「つないでみたブログ」でもご紹介していましたね。
気象庁とつないで猛暑対策!?

そして今年は新たに猛暑日予報をLINEで通知してみることに!

気象庁のWebページを毎朝チェックして最高気温が35度以上だったらメールを送るという基本的な通知システムの仕組みは2年前のフローですでにできていたので(作り方は『気象庁とつないで猛暑対策!?』を確認してみてくださいね)、今回はそのフローに対してメールではなくLINE通知機能を追加すればいいだけでした。

さらにLINE通知では、地域ごとの毎朝その日の予想最高気温の数値をお知らせし、最高気温が35度以上の時は猛暑テレワークを推奨するメッセージも通知することにしました。

さっそく、LINEで用意されているAPI機能を調べてみると、Messaging APIで実現できそうだということがわかりました。こちら↓

 

LINEでメッセージを自動的に送信する大まかな流れは以下ようにしてみたいと思います。

1.API実行のためのLINEアカウント(公式アカウント)を取得

 ▼

2.このLINEアカウントを公開し、友だちとして追加してもらう

 ▼

3.このとき追加してもらったユーザの識別子(33桁の無意味な文字列)をDBに保存

 ▼

4.最後に保存しておいたユーザ識別子あてに毎朝メッセージを送信


Messaging APIの利用にはトライアルが用意されていたので、すぐに試すことができました。

LINE BUSINESS CENTER Messaging API

トライアルを申し込んだ後の最初の設定が、「LINE@ MANAGER」の「アカウント設定」内の「Bot設定」になります。

では「Bot設定」を見ていきましょう。

LINE MANAGER Bot設定

「利用可能なAPI」では、「REPLY_MESSAGE」と「PUSH_MESSAGE」の両方を使用します。

・REPLY_MESSAGE
このAPIで、ユーザアクションに応答してメッセージを返信できます。
ユーザアクションとは、「友だち追加」したとか、トークを入力した、などです。

・PUSH_MESSAGE
こちらがメッセージの一斉送信用のAPIです。
これで毎朝5:30に、気象庁のWebページからその日の最高気温予報の数値を取得し、LINEの友だちにメッセージを一斉送信するという設定をします。

・「Webhook送信」は「利用する」です。
このWebhookで、上記REPLY_MESSAGEのためのユーザアクションデータを受け取ります。

・「Botのグループトーク参加」も「利用する」に設定します。

次に、「Line Developer」を設定します。

Line Developer infotest

ここでは「Webhook URL」を設定します。
ユーザアクションデータを受信することのできるURLですね。

ここはフローで受信しますので、フロー作成時の実行設定URLを、ここに設定します。ただし必ずhttpsのURLにします。

Channel Access Token」は送信者認証用のアクセストークンです。
フローからメッセージを送信する際に、HTTPヘッダーに含める必要があります。

以上の設定ができればフローを作成できます。

まずはユーザアクション時の受信データを確認してみます。
ためしに「友だち追加」してみると、次のようなjsonメッセージを受信しました。

type:follow,replyToken:,source:userid,type:user

「type」の値「follow」は、「友だち追加」のアクションを示しています。
そして「userId」がユーザ識別子ですので、この値を取得してDBに格納しています。
またここで必要なら「replyToken」識別子を宛先として、メッセージの返信を行うこともできます。

実際にはこのタイミングで次のようなメッセージを返信しています。

友達登録ありがとうございます。通知希望都市を選択してください。(質問1/3)

そしてこのメッセージに対する選択結果も、ユーザアクションデータとしてWebhookで受信できますので、こちらの値もDBに格納しておきます。

実際のフローはこんな感じですね↓

webhook フロー

 

Switchコンポーネントで、ユーザアクションに応じて処理を分岐させています。

毎朝のメッセージ送信フローでについては、基本的な仕組みは『気象庁とつないで猛暑対策!?』内で紹介していますので今回は省きますね。

そして今回追加するLINE通知用のAPIがこちら↓
devdocs.line.me/ja/#multicast

Multicast 複数ユーザーに任意のタイミングでメッセージを送信するAPIです。

実際のLINE通知のためのサブフローがこちらです↓

Line_multi3

RESTコンポーネントで①と②を設定し、送信メッセージとなるjsonを③のマッパーで作成しました。このときのjsonは下記の感じです。

おはようございます。東京の今日の最高気温の予報は32度です。

このサブフローを含むLINE通知フローを毎朝実行させます。
もちろん毎朝の定期実行は、ASTERIAのスケジュール実行設定で簡単に設定できちゃいますね。

以上、APIの設定を理解すれば、ASTERIAのフローでAPI連携も簡単です!
さらにLINEのAPIドキュメントはサンプルも充実していて、とてもわかりやすいのでぜひ使ってみるといいと思います。

そして最後に・・・

インフォテリアの猛暑テレワークでも使っている「予想最高気温のLINE通知」ですが、企業様や個人利用としても無償解放をしているので、「友だち追加」してぜひお試しくださいね!

 

使い方いろいろ!
ASTERIA WARPの30日間無料体験版で
「LINE」との簡単連携を試してみよう!
30日間無料評価版はこちら

【資料ダウンロード】Excel定型業務は自動化しよう!8つの事例から紐解く!Excel定型業務の自動化で実現する業務”効率化”と企業競争力”強化”~

ASTERIA関連サイトのご紹介

X

<技術情報をお探しの方>

ASTERIA Developer Network
(ADN)サイト

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

X

<ASTERIAユーザーの方>

ASTERIAユーザーグループ
(AUG)サイト

ASTERIAユーザー同士の交流の場として、各種イベント案内や開催レポートを掲載しています。

X

<ASTERIAユーザーの方>

ASTERIAユーザーサイト
Login

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

X

<ASTERIAパートナーの方>

ASTERIAパートナーサイト
Login

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