Задать вопрос
@kr1ep

Как сделать так, что бы бот работал то время, пока у меня запущена программа на пк?

есть бот, и я хочу его протестировать. Всё работает исправно, но только один раз. Суть бота в том, что он отправляет фото/видео когда я нажимаю определённую кнопку. Вот к примеру я нажал кнопку "Фото", он (бот) мне отправил фото, я нажимаю опять кнопку и он ничего не отправляет не смотря на то, что программа на пк запущена и ошибку не выдаёт
import telebot
import random
from telebot import types

token = ''

menuKeyboard = types.ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True, row_width=2)
menuKeyboard.add(telebot.types.KeyboardButton(text='Фото'),
                telebot.types.KeyboardButton(text='Видео'))

bot = telebot.TeleBot(token)

@bot.message_handler(commands=['start'])

def meet_user(message):

    bot.send_message(message.from_user.id, '''Привет, я могу отправлять разные картинки и видео!''')
    bot.send_message(message.from_user.id, 'Используй кнопки снизу, что бы управлять мной!', reply_markup=menuKeyboard)

    bot.register_next_step_handler(message, functions)

def functions(message):
    if message.text == 'Фото':
        with open(r"C:\Users\mklim\OneDrive\Рабочий стол\Бот\images\{}.jpg".format(random.randint(1, 3)), 'rb') as photo:
            bot.send_photo(message.from_user.id, photo)

    elif message.text == 'Видео':
        with open(r"C:\Users\mklim\OneDrive\Рабочий стол\Бот\videos\{}.mp4".format(random.randint(1, 9)), 'rb') as video:
            bot.send_video(message.from_user.id, video)

bot.polling(non_stop=True, interval=0)
  • Вопрос задан
  • 134 просмотра
Подписаться 2 Простой Комментировать
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
register_next_step_handler() нужен для сценариев из нескольких шагов, где каждый шаг выполняется один раз.
В твоем случае достаточно простого обработчика текстовых сообщений.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Keffmen
@Keffmen
Изучаю Python , C# , HTML и многое другое
ты создал порядок действий который будет запускаться когда нажмется кнопка старт , а вот когда ты просто оправишь ему сообщение или нажмешь кнопку , на такое действие у тебя проверки нет. И Заголовок не совпадает с сутью которую ты описал
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы