Skip to content

Instantly share code, notes, and snippets.

@it-jia
Created June 5, 2021 00:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save it-jia/620d09ad89ae4b81850b598687d2220e to your computer and use it in GitHub Desktop.
Save it-jia/620d09ad89ae4b81850b598687d2220e to your computer and use it in GitHub Desktop.
LINE Bot 更改顯示圖示、名稱
from flask import Flask, request, abort
from linebot import LineBotApi, WebhookHandler
from linebot.exceptions import InvalidSignatureError
from linebot.models import (
MessageEvent, TextSendMessage, Sender
)
line_bot_api = LineBotApi('<Channel access token>')
handler = WebhookHandler('<Channel secret>')
app = Flask(__name__)
@app.route("/")
def home():
return 'Home OK'
@app.route('/callback', methods=['POST'])
def callback():
signature = request.headers['X-Line-Signature']
body = request.get_data(as_text=True)
# print('Request body: ' + body)
try:
handler.handle(body, signature)
except InvalidSignatureError:
print('Invalid signature. Please check your channel access token/channel secret.')
abort(400)
return 'OK'
@handler.add(MessageEvent)
def handle_message(event):
input_text = event.message.text
# line_bot_api.reply_message(
# event.reply_token,
# TextSendMessage(
# text=f'你說:{input_text}',
# )
# )
# line_bot_api.reply_message(
# event.reply_token,
# TextSendMessage(
# text='這是則文字訊息。',
# sender=Sender(
# name="顯示名稱",
# icon_url="https://res.cloudinary.com/jiablog/coffee.png")
# )
# )
message1 = TextSendMessage(
text=f"以下為\"{input_text}\"的搜尋結果...",
sender=Sender(
name="Google",
icon_url="https://storage.googleapis.com/support-kms-prod/ZAl1gIwyUsvfwxoW9ns47iJFioHXODBbIkrK")
)
message2 = TextSendMessage(
text="請為您的信仰加值",
sender=Sender(
name="Apple",
icon_url="https://www.yusgroup.com.hk/wp-content/uploads/2012/03/Apple-Logo.jpg")
)
message3 = TextSendMessage(
text=f"您想買\"{input_text}\"嗎? 我們都有!",
sender=Sender(
name="Amazon",
icon_url="https://pngimg.com/uploads/amazon/amazon_PNG27.png")
)
message4 = TextSendMessage(
text="[正在蒐集您的資料]",
sender=Sender(
name="Facebook",
icon_url="https://upload.wikimedia.org/wikipedia/commons/0/05/Facebook_Logo_%282019%29.png")
)
messages = [message1, message2, message3, message4]
line_bot_api.reply_message(event.reply_token, messages)
if __name__ == '__main__':
app.run(debug=True)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment