覺得你的機器人只有對話覺得太單調?想要跟他來場貼圖戰?那就可以來看看 Sticker message。
StickerSendMessage 參數如下
package_id 貼圖包的 id
sticker_id package中的第幾個貼圖
package 跟 sticker 的 id 可以參照此對照表
範例程式碼
@handler.add(MessageEvent)
def handle_message(event):
line_bot_api.reply_message(event.reply_token,StickerSendMessage(package_id=1, sticker_id=2))
如果覺得這樣寫死,會使對話過於制式化,或是想讓跟使用者之間的貼圖戰有來有往的感覺,可以將默認的貼圖照關鍵字分類,再利用從使用者收到的 Sticker message 內的 message.keywords 來判斷使用者的貼圖類型,就可以在對應的類型中,透過使用 random 來隨機選出一個貼圖回復了。
{
"message":
{
"id": "14885788780170",
"keywords": ["Affirmative", "OK"],
"packageId": "1021884",
"stickerId": "949915",
"stickerResourceType": "STATIC",
"type": "sticker"
},
"mode": "active",
"replyToken": "7de6eb26c06041da9911d4bb186e4841",
"source":
{
"type": "user",
"userId": "Ub8c776653b3d290b3c3f9d1b9c852cb9"
},
"timestamp": 1633784023730,
"type": "message"
}