知道了line bot sdk python上的程序的功能是回复你和你传送相同的讯息。这边会看成是在做什麽并在之後去修改程序成你要的功能。
这里在验证封包是否来源於LINE,在Webhook那篇有提到webhook沟通的条件
@app.route("/callback", methods=['POST'])
def callback():
# get X-Line-Signature header value
signature = request.headers['X-Line-Signature']
# get request body as text
body = request.get_data(as_text=True)
app.logger.info("Request body: " + body)
# handle webhook body
try:
handler.handle(body, signature)
except InvalidSignatureError:
print("Invalid signature. Please check your channel access token/channel secret.")
abort(400)
return 'OK'
@app.route("/callback", methods=['POST'])
在主网域下注册/callback网址
def callback():
建立一个回呼函式,函式内容如下
signature = request.headers['X-Line-Signature']
提取请求标头内的数位签章
body = request.get_data(as_text=True)
提取请求本体
app.logger.info("Request body: " + body)
将请求本体添加至log info纪录
try: handler.handle(body, signature) except InvalidSignatureError: print("Invalid signature. Please check your channel access token/channel secret.") abort(400)
透过你的频道密钥计算并验证请求本体是否与数位签章一致,如果一致预设会回复状态代码200,否则回覆状态代码400
这段程序在bot server里处理接收的讯息跟回复的讯息
@handler.add(MessageEvent, message=TextMessage)
def handle_message(event):
line_bot_api.reply_message(
event.reply_token,
TextSendMessage(text=event.message.text))
@handler.add(MessageEvent, message=TextMessage)
用来监听接收到的MessageEvent这个Webhook事件中类型为TextMessage的讯息
def handle_message(event):
建立一个处理讯息的函式,处理接收到的event
line_bot_api.reply_message(event.reply_token,TextSendMessage(text=event.message.text))
line_bot_api.reply_message():为回覆讯息的函式,前面的参数是reply_token,可以从Webhook事件中获得,後面的参数为要传送的讯息
参考:
https://developers.line.biz/en/reference/messaging-api/#webhook-event-objects
接下来介绍各种运算子,也是用程序码跟注解做说明 以下是执行程序 ...
前情提要 一般我们在做传值动作的时候,会有好几种方式可以做,像是用 Segue、Closure、De...
这是 Roblox 从零开始系列,效果章节的第六个单元,今天你将开始学习制作光束效果 Part.1 ...
上一篇整理了 JavaScript 操纵网页元件事件的基本流程: 指定网页元件,可用 getElem...
1.Grid_Optimizer: 原本使用4年资料回测,改成5年,00646改00662。 2.G...