TL; DR
CDKたのしい☺️
概要
LINE Botのサーバレスなバックエンドを構築するためのCDKサンプルです(Typescript).
LINEのMessagingAPIのバックエンドとして,AWSのAPI GatewayとLambdaを構築します.
以下のリポジトリで公開しています.
https://github.com/umihei/LINEMessagingAPIBackendStarterTemplate
こんな感じのやまびこBOTが爆速でできます.
この先どうやってBOTを発展させていくかはあなた次第です.
Architecture
使い方
この辺りを参考に,LINEのChannelを作成して,チャネルシークレットとアクセストークンを入手したら,
次のコマンドで,SSMのパラメタストアにシークレットとトークンを格納します.
aws ssm put-parameter --type 'String' --name 'CHANNEL_ACCESSTOKEN' --value 'your channel's access token'
aws ssm put-parameter --type 'String' --name 'CHANNEL_SECRET' --value 'your channel's secret'
あとは,クローンしたリポジトリでnpm install
したのち,
cdk deploy
でバックエンドが立ち上がります.
(初めてCDKを使う場合は,cdk bootstrap
が必要)
リソースを立ち上げる途中で,SSMからシークレットとトークンを取得してLambdaの環境変数にセットしています.
API GatewayのEndpointがcdk deploy
したコンソールに表示されるので、そのURLをLINE DevelopersのページでWebhookに指定します。