Главная
О нас
Почему онлайн?
Почему мы?
Блог
Вход
Регистрация
Работа с клавиатурой
Метод для создания создания фильтрующих сообщений и кнопок меню RegexHandler
Для создания кнопок используется объект RegexHandler.
Подключите его в строке import
from
telegram.ext
import
Updater, CommandHandler, MessageHandler, Filters, CallbackContext,
RegexHandler
Создайте меню, которое запускается при вызове метода
start
def
start(update: Update, context: CallbackContext) -> None:
____my_keyboard = ReplyKeyboardMarkup ( [ [ ' Прислать котиков ' , ' Прислать собачек ' ] ] )
____update.message.reply_text( 'Рассылка картинок' , reply_markup = my_keyboard )
Настройте
dispatcher.add_handle
и фильтрацию сообщений кнопок.
Для указания фильтрации используется маска
^(Прислать котиков)$.
dispatcher.add_handler(RegexHandler ('^(Прислать котиков)$', send_cat))
dispatcher.add_handler(RegexHandler ('^(Прислать собачек)$', send_dog))
Настройте методы
send_cat
и
send_dog
. Методы присылают случайные картинки из отобранных файлов. (занятие Отправка изображений пользователем)
def
send_cat(update: Update, context: CallbackContext) -> None:
____cat_list = glob('image/cat*.jp*g')
____cat_pic = choice(cat_list)
____context.bot.send_photo(chat_id = update.message.chat_id, photo = open(cat_pic, "rb"))