2018年2月10日 星期六

使用 botframework + botbuilder-linebot-connector + serverless(AWS lambda) + botbuilder-mongodb-storage 連 mongodb cluster 開發 LineBot 入門 1

名字超長的一篇教學,
為什麼會搞到這麼長,
就是經驗而已。


  1. botframework: ms 出的一個開放 chat bot 的一個套件,有官方網站 dev.botframework ,但不幸沒有支援日台泰三國愛用的Line。
  2. botbuilder-linebot-connector : 小弟做的一個connector,連上 botframework的 bulider 不需要 dev.botframework 的官網帳號,就可以來開發bot了。
  3. serverless(AWS lambda) :會選用serverless ,純粹是經驗,因為之前開一個 AWS EC2 micro 的機器,差不多10個使用者,同時在和bot溝通時,就有明顯的delay了,故改用serverless架構,來必免這個scale的問題。
  4. botbuilder-mongodb-storage : 小弟做的一個 mongodb storage for botframework 用的,主要是將 bot state 存在 mongo上使用。
  5. mongodb cluster : 這看你自已的選擇,用 mlab 或是 mongodb altas 或是自已架,都是不錯的選擇。不過請注意 line 有replayToken 會失效的問題,建議不要取存時間過長,導致失效而發不出去。
我的選擇是直接 serverless (AWS lambda 東京) + 開AWS mongodb cluster (https://ap-northeast-1.console.aws.amazon.com/ec2/v2/home?region=ap-northeast-1#SecurityGroups:groupId=sg-db38a1a2;sort=groupId )東京,因為Line 的 bot 機房就在東京。






沒有留言:

張貼留言