後面的課程再仔細介紹Imagemap Message、Template Message、Flex Message
from linebot.v3.messaging import (
TextMessage,
StickerMessage,
ImageMessage,
VideoMessage,
AudioMessage,
LocationMessage
)
最基本的Message API類型之一,只傳遞文字。
規則:
程式碼:
TextMessage(text="這是文字訊息")
透過TextMessage(text="這是文字訊息")把特定文字傳入聊天室。
#設定表情符號,index為表情符號在文字訊息的字元位置(從0開始算);product_id為表情包編號;emoji_id為特定表情符號編號
emojis = [Emoji(index=0, product_id="5ac1bfd5040ab15980c9b435", emoji_id="001"),
Emoji(index=12, product_id="5ac1bfd5040ab15980c9b435", emoji_id="002")]
#$代表我們的表情符號
messages=[TextMessage(text='$ LINE 表情符號 $', emojis=emojis)]
emoji 對應的編號 : https://developers.line.biz/en/docs/messaging-api/emoji-list/#line-emoji-definitions
效果展示:
Reference:https://developers.line.biz/en/docs/messaging-api/message-types/#text-messages
最基本的Message API類型之一,只傳遞貼圖。
規則:
程式碼:
StickerMessage(
package_id="446",
sticker_id="1988"
)
package_id是貼圖包的編號,sticker_id是特定貼圖的編號。
連結是Line官方提供的貼圖包和特定貼圖的id,可以查詢想用的貼圖使用:
https://developers.line.biz/en/docs/messaging-api/sticker-list/#sticker-definitions
效果展示:
Reference: https://developers.line.biz/en/docs/messaging-api/message-types/#sticker-messages
最基本的Message API類型之一,只傳遞圖片。
規則:
程式碼:
ImageMessage(
original_content_url=url,
preview_image_url=url
)
original_content_url=url是要傳送的圖片的位置, preview_image_url=url是預覽圖片的位置。
效果展示:
url要提供想要傳送的圖片的位置,可以使用本地端的圖片或網路上的圖:
輸入圖片網址,例如:
url = "https://example.com/original.jpg"
抓取本地圖片到架設好的伺服器上。
#伺服器的url+圖片在本地端的位置
url = request.url_root + '/static/Logo.jpg'
#把https前綴改成http
url = url.replace("http", "https")
app.logger.info("url=" + url)
Reference: https://developers.line.biz/en/docs/messaging-api/message-types/#image-messages
最基本的Message API類型之一,只傳遞影片。
規則:
程式碼:
VideoMessage(
original_content_url=url,
preview_image_url=url
)
影片的程式內容和圖片相似,可參考<3. Image message 圖片訊息>
效果展示:
Reference: https://developers.line.biz/en/docs/messaging-api/message-types/#video-messages
最基本的Message API類型之一,只傳遞音訊。
規則:
程式碼:
AudioMessage(
original_content_url=url,
duration=duration
)
音訊的程式內容和圖片相似,可參考<3. Image message 圖片訊息>
效果展示:
Reference: https://developers.line.biz/en/docs/messaging-api/message-types/#audio-messages
最基本的Message API類型之一,只傳遞地點。
規則:
程式碼:
LocationMessage(
title='Location',
address="Taipei",
latitude=25.0475,
longitude=121.5173
)
title是位置訊息的標題, address放你想說明的位置,latitude、longitude是位置的座標。
效果展示:
Reference: https://developers.line.biz/en/docs/messaging-api/message-types/#location-messages