#python #telegram-bot
#python #telegram-бот
Вопрос:
Я сделал простого бота на python, у которого есть запланированное задание и при необходимости отправляет сообщение. Я добавил команду, которая запускает бота и добавляет повторяющуюся задачу. Я тестирую его в приватном чате и в своем собственном тестовом групповом чате, и он работает. Но когда я пытаюсь запустить бота в другом групповом чате, он не считывает команду. Я включил режим privacy_mode, но он не сработал. Забавно, что раньше это работало до того, как я изменил сообщение (добавил несколько смайликов), но я не думаю, что это так. Ну, вот код:
def send_message(context: telegram.ext.CallbackContext):
context.bot.send_message(chat_id=context.job.context, text="Hey, this bot is working")
def callback_timer(update: telegram.Update, context: telegram.ext.CallbackContext):
context.job_queue.run_once(send_message, 1, context=update.message.chat_id)
context.job_queue.run_repeating(send_message, 60*30, context=update.message.chat_id)
def main():
updater = Updater(config.TOKEN, use_context=True)
dp = updater.dispatcher
updater.dispatcher.add_handler(CommandHandler('start_bot', callback_timer, Filters.user(username="@Test_name")))
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()
Ответ №1:
Проблема заключалась в том, что уже были другие боты, и почему-то мой бот не получил команду. Мне пришлось использовать @my_bot_name, чтобы получить команду, например: /print_hello@my_bot_name