LoginSignup
1
2

More than 3 years have passed since last update.

AWSとLINE BOTを使って簡単にコロナウイルス感染者数をチェックする

Last updated at Posted at 2020-04-14

経緯

コロナウイルス感染者数が増幅していく世界で、不安におびえつつ感染者数をチェックする自分に呆れながらも、いちいちサイトを見に行く手間にうんざりしたので、都道府県名を入力すれば情報を教えてくれるLINE BOTを作ってみた。

Demo

20200414_022946000_iOS.jpg

※画像は4/14日時点の情報です。

Architecture

Untitled Diagram.jpg

LINE Devlopersに登録

  • 登録してプロバイダーを作成、チャネル作成を行う。
  • [Messaging API設定タブ] でチャネルアクセストークンを発行する。

Lambdaを作成する

コロナウイルス情報が公開されているのでそれを取得するLambdaと、
LINE BOT用のLambdaを作成する。Githubで拙いコードを公開しているのでこちらを参考にしてください。

※注意点

  • [LINE_CHANNEL_ACCESS_TOKEN][LINE_CHANNEL_SECRET] の環境変数を作成したLambdaで必ずセットしてください。
  • 多くの記事で [LINE_CHANNEL_ACCESS_TOKEN] の頭に [Bearer ] を付けるとありましたが、逆にこれがあったせいでできなかったので、シンプルにアクセストークンのみを環境変数にセットしてください。

★参考にしたデータ

東洋経済オンラインさんのサイトで公開されているものを今回利用しました。
とても助かりました。

API Gatewayの設定

  • REST APIを作成
  • リソース作成
  • メソッド作成(Lambdaを関連付ける)

2020-04-14_11h46_27.png

2020-04-14_11h45_24.png

  • デプロイ後、ステージで発行されたURLをコピーする
  • LINE Devlopersの [Messaging API設定タブ] > [Webhook URL] に先ほどコピーしたURLを張り付ける。このとき、必ず[amazon.com:443/test]のようにポート番号を付けてあげる。

ちなみにWebhook URLの検証は失敗しても大丈夫です。問題なく動きます。
以下のようなエラーが私の場合出ました。

2020-04-14_11h54_50.png

感想

LINEのMessaging APIはめんどくさい。

Thanks.

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2