1 # -*- coding: utf-8 -*-
3 Created on Sat Sep 1 11:18:39 2018
11 from linebot import LineBotApi, WebhookParser
12 from linebot.exceptions import InvalidSignatureError
13 from linebot.models import MessageEvent, TextMessage, TextSendMessage
16 class WebHookHandler(tornado.web.RequestHandler):
18 signature = json.load(self.request.headers['X-Line-Signature'])
19 data = json.load(self.request.body)
21 events = webhook.parse(data, signature)
22 except InvalidSignatureError:
25 if not isinstance(event,MessageEvent):
27 if not isinstance(event.message,TextMessage):
29 linebot.reply_message(
31 TextSendMessage(text=event.message.text)
34 application = tornado.web.Application([(r'/callback',WebHookHandler)],{
38 if __name__ == '__main__':
39 ch_id = os.environ['Channel_ID']
40 ch = os.environ['Channel_Secret']
41 linebot = LineBotApi(ch_id)
42 webhook = WebhookParser(ch)
43 application.listen(5000)
44 tornado.ioloop.IOLoop.instance().start()