search
LoginSignup
0

posted at

updated at

Organization

AWS Lambda Function URLsでEverything(It's you)をおうむ返しするLINE bot

Lambda関数をHTTPSエンドポイントから実行可能になったとのことで、LINEおうむ返しbotを作って「Everything(It's you)」してみました。

必要なもの

  1. AWSアカウント(Lambda作成)
  2. LINE Developers登録

Lambda側

関数の新規作成

image.png

こんな感じに作成されます。

image.png

関数URLの作成

「設定」-「関数URL」より作成できます。
これが試してみたかっただけなんですがね笑

image.png

image.png

URLが発行されます。これをLINE側Webhookに設定します(後述)。

image.png

環境変数の設定

LINE側でチャネルを作成したのち、最終的にChannel secretChannel access tokenが必要になるので、あとで以下のような感じにLambdaの環境変数に設定します。

image.png

サンプルソース

LINE側

LINE Developer Console登録

以下にアクセスしデベロッパー登録をします。

新規プロバイダ&チャネルを作成

Messaging APIを選択します。

sec

新規チャネル作成画面になるので、最低限必須の項目を設定します。

設定項目
日本
チャネル名 サンプルLambdaUrl
チャネル説明 サンプルLambdaUrl
大業種 個人
小業種 個人(その他)

image.png

チャネル作成後

LINE Official Account Managerのリンクをクリックし、

sec

「応答設定」から「応答メッセージ」を「オフ」にします。
「オン」のままだとLINEから送信したメッセージがbotに届かずに、自動応答されてしまいます。

image.png

チャネルシークレットの確認

Developer Consoleに戻り、「チャネル基本設定」からチャネルシークレットを確認し、この値をLambdaの環境変数に設定します。

sec

チャネルアクセストークンの発行

「Messaging API設定」からチャネルアクセストークン確認します。
「発行」を押すとトークンが発行されますので、この値をLambdaの環境変数に設定します。

image.png

Webhookを設定

「Messaging API設定」にて、Webhook URLにLambda URLを設定します。

image.png

Webhookの利用をオンにし、検証を押すと「成功」と応答されれば、Lambdaとの疎通確認OKです。

image.png

再びLambda側へ

おうむ返しボットのソースコードをアップロード

zipファイルに固めてアップロードします。

image.png

Botを友達追加

Messaging API設定にあるQRコードを読み取り、友達追加します。

add.jpg

メッセージ送信!Everything(It's you)成功です!

bot.jpg

おわりに

Lambdaがより楽しくなった気がする!

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
What you can do with signing up
0