前面所講到的 Message event 都是要等使用者做出操作後才會被動的回應,現在要是我們想要推播一個公告給全部好友,或是想要發訊息給特定的使用者時,不能像前面各類型的 message 一樣使用reply_message
,因為reply_message
中所要給的第一個參數 reply token 是有時效性的,無法記錄下來後用同一個 reply token 去發送訊息,所以需要改為使用push_message
來發送消息。push_message
的參數跟reply_message
很類似,只是把 reply token 的部分改為要發送給的使用者或群組的 ID,這部分要注意的一點是使用者/群組的 ID 在不同的 line bot 中是不一樣的,所以不能夠將在 A bot 取得的 ID 拿到 B bot 主動發送訊息使用。
範例程式碼
@handler.add(MessageEvent)
def handle_message(event):
line_bot_api.push_message('Ub8c776653b3d290b3c3f9d1b9c852cb9', TextSendMessage(text='Hello World!'))