Advertisement
Guest User

Untitled

a guest
Jul 19th, 2019
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.10 KB | None | 0 0
  1. from flask import Flask, request, abort
  2. import json
  3. from linebot import (
  4. LineBotApi, WebhookHandler
  5. )
  6. from linebot.exceptions import (
  7. InvalidSignatureError
  8. )
  9. from linebot.models import (
  10. MessageEvent, TextMessage, TextSendMessage,
  11. )
  12.  
  13. app = Flask(__name__)
  14.  
  15. @app.route("/webhook", methods=['POST'])
  16. def webhook():
  17. line_bot_api = LineBotApi('YOUR_CHANNEL_TOKEN')
  18. handler = WebhookHandler('YOUR_CNANNEL_SECRET_KEY')
  19.  
  20. # get X-Line-Signature header value
  21. signature = request.headers['X-Line-Signature']
  22.  
  23. body = request.get_data(as_text=True)
  24. event = json.loads(body)
  25. print(event)
  26. try:
  27. handler.handle(body, signature)
  28. except InvalidSignatureError:
  29. print(
  30. "Invalid signature. Please check your channel access token/channel secret.")
  31. abort(400)
  32.  
  33. token = event['events'][0]['replyToken']
  34. if token == "00000000000000000000000000000000":
  35. pass
  36. else:
  37. line_bot_api.reply_message(token, TextSendMessage(
  38. text=event['events'][0]['message']['text']))
  39. return 'OK'
  40.  
  41.  
  42. if __name__ == '__main__':
  43. app.run(debug=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement