ヤマムギ

growing hard days.

*

LINE Bot APIのファーストステップをLambda+API Gatewayでやってみたらものすごく簡単で驚いた

   

トライアル当初はホワイトリストのしばりや、初回反応するまで時間がかかったりとみなさん困っていたようですが、遅ればせながらやってみると色々解消されているようで、すさまじく簡単に、Botのハローワールド、Lチカともいえるオウム返しが確認出来ましたので一応メモ。

本記事の情報は2016/8/14時点のものです。

line-lambda

Lambda(Python)のコード

GitHubはこちらです。

Headersの各値

LINE Developersのアカウント画面からコピペします。

  • X-Line-ChannelID : チャンネルID
  • X-Line-ChannelSecret : チャンネルシークレットキー
  • X-Line-Trusted-User-With-ACL : チャンネルMID

bot宛に送信されたメッセージをevent[‘result’][0]で取得してます。
textにメッセージ内容とfrom_idにLINEのIDを取得してます。

  • to : 150ユーザーが上限の配列
  • toChannel : 1383378250が共通固定値
  • eventType : ‘138311608800106203’が共通固定値
  • contentType : 1 Text,2 Image,3 Video,4 Audio,7 Location
  • toType : 1 toUserそれ以外は不明

LambdaとAPI Gatewayの設定

何も特別な事はいりません。

上記のコードをrequestsモジュールとまとめていつものようにzipをアップロードするだけです。

API Gatewayもレスポンスやリクエストの設定は何も変更していません。

LINE側の設定

Callbak URLにAPI GatewayのエンドポイントURLを指定します。

が、そのままではセキュリティがだめ、って怒られるので、ポート番号443をつけます。

具体的には、「amazonaws.com」を「amazonaws.com:443」ってします。

これだけでオウム返しが出来ました。

この先は送信されたメッセージをどう扱うか、
どういった内容を送信するか、
コーディングしてけばいいと思います。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

【PR】 「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

【PR】 「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS , , , ,

ad

ad

  関連記事

AWS CodeStarのプロジェクトテンプレートLambda+Pythonによって生成されるもの

勉強会のデモで、AWS CodeStarのプロジェクトテンプレートLambda+ …

Route53でドメインを新規取得してDNSレコードを設定する

Elastic IPをAWSで発行しているのですから、DNSの設定も同じようにマ …

前からできましたっけ??CloudWatch Logsの保持設定を複数まとめて設定

AWSの個人アカウントで要らなさそうなリソースの断捨離をしてます。 CloudW …

オンプレミスに見立てたオハイオリージョンにVyOSインスタンスを起動して東京リージョンからVPN接続

AWSクイックスタートのActive Directory Domain Serv …

再会の日 ~re:Union 2018 Osaka by JAWS-UG~

8/5は大阪でre:Unionでした。 「再会」と名うったこのイベントは、6月に …

Lambda関数で自分自身の環境変数を更新する

Twitterでツイート検索するAPIを試してみるでツイートの取得を重複させない …

EC2にSystems MangerからCloudWatchエージェントをインストール

CloudWatchエージェント EC2の標準メトリクスでは収集できないメモリの …

Amazon Auroraのスナップショットの暗号化とリージョン間コピーを改めて試しました

Amazon Auroraデータベースを暗号化して、スナップショットを作成、クロ …

S3バケットポリシーですべてDenyにしてしまったらルートユーザーの出番

特定のConditionsを指定して、それ以外はすべて拒否するS3バケットポリシ …

AWS CLIを使用したIAMロールの引き受けコマンドのメモ

よく忘れて調べるのでメモです。 公式のこちらAWS CLI を使用して IAM …