私はPython-Telegram-botモジュールを使ってテレグラムボットを構築しましたが、今は30日しか働かないように設定したい、つまりユーザーが/start
をボットに送信すると、ボットは30日間停止します.MYコード:ユーザーごとに30日間しか動作しないで、そこで停止するテレグラムボットを作成するにはどうすればいいですか?
# -*- coding: utf-8 -*-
from telegram.ext import Updater, MessageHandler, Filters, CommandHandler
import re
def delete_method(bot, update):
if not update.message.text:
print("it does not contain text")
return
mlist=['hello', 'by', 'world']
for i in mlist:
if re.search(i, update.message.text):
bot.delete_message(chat_id=update.message.chat_id, message_id=update.message.message_id)
def start_method(bot, update):
bot.send_message(chat_id=update.message.chat_id, "This bot only works for 30 days")
def main():
updater = Updater(token = 'TOKEN')
dispatcher = updater.dispatcher
dispatcher.add_handler(MessageHandler(Filters.all, delete_method))
start_command = CommandHandler('start', start_method)
dispatcher.add_handler(start_command)
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()
# for exit
# updater.idle()
私は何をすべきか、ボットは、各ユーザーの30日後に作業を停止するように私は私のコードに何を追加する必要があります?
chat_id(これはユーザーを識別します)とデータベースへの登録日を格納し、30日が経過した場合にはメッセージのチェックを送信します。 30日が経過してもメッセージを送信しないでください(または「このボットをもう使用できません」)。 – newsha
@newsha \t 私の英語は良くありません。あなたが言ったあなたのコミントを読むことができません。私のコードを修正してください。 - – Sajjad