前一篇談到了如何用PYTHON與LINE BOT串接
在這一篇中,我們將著重於 LINE Bot 的基本功能,特別是處理圖片、影片和音訊訊息。這些功能將使您的股市LINE機器人更具互動性和多媒體性。
圖片訊息
在 LINE Bot 中,您可以接收和發送圖片訊息。這些圖片可以用於傳達股市趨勢圖、股票圖表或其他視覺化信息。以下是如何處理圖片訊息的範例:
from linebot.models import ImageSendMessage
# 創建 ImageSendMessage
image_message = ImageSendMessage(
original_content_url='https://example.com/original.jpg',
preview_image_url='https://example.com/preview.jpg'
)
# 發送圖片訊息給用戶
line_bot_api.push_message(user_id, image_message)
影片訊息
LINE Bot 也支援影片訊息,這可用於分享影片新聞、教育內容或其他影片相關資訊。以下是如何處理影片訊息的示例:
from linebot.models import VideoSendMessage
# 創建 VideoSendMessage
video_message = VideoSendMessage(
original_content_url='https://example.com/original.mp4',
preview_image_url='https://example.com/preview.jpg'
)
# 發送影片訊息給用戶
line_bot_api.push_message(user_id, video_message)
音訊訊息
除了圖片和影片,LINE Bot 還支援音訊訊息。這可用於播放股市相關的音訊新聞、分析報告或其他音訊內容。以下是如何處理音訊訊息的示例:
from linebot.models import AudioSendMessage
# 創建 AudioSendMessage
audio_message = AudioSendMessage(
original_content_url='https://example.com/original.m4a',
duration=240000
)
# 發送音訊訊息給用戶
line_bot_api.push_message(user_id, audio_message)
有了這些多媒體方式的呈現 接著 我們就可以用 LINE的快速回覆功能 將這些merge在一起
LINE Bot 提供了 Quick Reply 功能,可以讓您在 LINE 聊天中更輕鬆地提供用戶預定的快速回覆選項。以下是一個範例 Python 程式,演示如何使用 LINE Bot SDK 中的 Quick Reply 功能:
簡單提供一個快速回覆的sample
from linebot import LineBotApi
from linebot.models import TextSendMessage, QuickReply, QuickReplyButton, MessageAction
from linebot.exceptions import LineBotApiError
# 替換為您的 Channel Access Token
channel_access_token = 'YOUR_CHANNEL_ACCESS_TOKEN'
# 初始化 Line Bot API
line_bot_api = LineBotApi(channel_access_token)
# 處理快速回覆事件
def handle_quick_reply(event):
# 設定快速回覆選項
quick_reply = QuickReply(
items=[
QuickReplyButton(
action=MessageAction(label="Hello", text="Hello")
),
QuickReplyButton(
action=MessageAction(label="How are you?", text="How are you?")
),
]
)
# 創建回覆訊息,並將快速回覆選項附加到訊息中
reply_message = TextSendMessage(text="Please select an option:", quick_reply=quick_reply)
# 使用回覆訊息
try:
line_bot_api.reply_message(event.reply_token, reply_message)
except LineBotApiError as e:
print(e)
# 設定 Webhook 路由
if __name__ == "__main__":
app.run()
TextSendMessage中的text : 輸入關鍵字後,LINEBOT回覆的訊息
QuickReplyButton : 快速回覆的選項按鈕
QuickReply : LINE提供的快速回覆函式
label : 選項按鈕顯式的文字
text : 選項選擇後所輸出的文字