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)
35 application = tornado.web.Application([(r'/callback',WebHookHandler)],{
39 if __name__ == '__main__':
40 ch_id = os.environ['Channel_ID']
41 ch = os.environ['Channel_Secret']
42 linebot = LineBotApi(ch_id)
43 webhook = WebhookParser(ch)
44 application.listen(5000)
45 tornado.ioloop.IOLoop.instance().start()