因為是程式初心者,有很多不太了解的地方,想請問line機器人推播的問題
主要想製作2小時一次的推播和關鍵字回覆的line機器人。
而推播及回覆的文字想以3~5個字串隨機發送,目前僅寫了隨機回覆部分,但在line bot上沒有效果,想請問要怎麼修改呢?
程式碼如下,是參考https://badgameshow.com/steven/line/line-bot-%E6%95%99%E5%AD%B8/
import re
@handler.add(MessageEvent, message=TextMessage)
def handle_message(event):
message = event.message.text
if message == "你是誰":
message = TextSendMessage(
text = "才不告訴你勒~~"
)
line_bot_api.reply_message(event.reply_token,message)
elif message == "測試":
message = TextSendMessage(
text = DrawStraws()
)
line_bot_api.reply_message(event.reply_token,message)
else:
line_bot_api.reply_message(event.reply_token,TextSendMessage(message))
def DrawStraws():
DrawStrawsList = ["A", "B", "C", "D", "E"]
return DrawStrawsList[random.Randint(0, len(DrawStrawsList) - 1)]
以及使用APScheduler定時
參考https://suyenting.github.io/post/linebot-ceb102-class-helper-heroku/
建立了clock.py
但不太了解推播的部分要如何定時
from apscheduler.schedulers.blocking import BlockingScheduler
import requests
sched = BlockingScheduler()
# 防止睡眠
def DoNotSleep():
url = "https://xxxxx.herokuapp.com/"
r = requests.get(url)
# 防止自動休眠
sched.add_job(DoNotSleep, trigger='interval', id='doNotSleeps_job', minutes=20)
sched.start()
希望能有大大解答><!