Главная страница

Теги. bot теги. Бот создан, настроен, но как его запустить Если сейчас мы перейдём в нашего бота и запустим его, то мы получим Ничего мы и не получим, т к. мы только создали бота


Скачать 1.86 Mb.
НазваниеБот создан, настроен, но как его запустить Если сейчас мы перейдём в нашего бота и запустим его, то мы получим Ничего мы и не получим, т к. мы только создали бота
Дата22.10.2022
Размер1.86 Mb.
Формат файлаodt
Имя файлаbot теги.odt
ТипДокументы
#747707
страница2 из 27
1   2   3   4   5   6   7   8   9   ...   27

И/ИЛИ


Иногда приходится создавать более сложные проверки для обработчиков.

И


Чтобы добавить несколько условий в обработчик - достаточно написать их через запятую:

# Функция выполнится если все проверки вернут True # В примере снизу функция будет вызвана если тип сообщения будет текст, и текст сообщения будет 1 @bot.message_handler(content_types = ['text'], func = lambda message: message.text == '1') def send_something(message): pass

Так обработчик сработает, если выполнятся все условия

Или


Если нам нужно запустить обработчик при выполнении хотя бы одного условия, мы можем просто поставить один обработчик на другой:

# Также обработчики можно «ставить» друг на друга # Функция выполнится если хотя бы один из обработчиков пройдёт проверку. # В примере снизу функция будет вызвана если текст сообщения будет 1 или будет использована команда /hello @bot.message_handler(func = lambda message: message.text == '1') @bot.message_handler(commands=['hello']) def send_something(message): pass ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Виды обработчиков


Существует множество видов обработчиков. Большинство из них довольно специфичные и редко используются, в этом курсе будут использованы только 3 вида обработчиков. Но остальные вам следует знать, так как в будущем могут понадобиться:

 

Message handler

Обратывает сообщения, мы уже его прошли.

@bot.message_handler(filters) # <- передаёт объект Message в вашу функцию

 

Edited Message handler


Обрабатывает отредактированные сообщения. Скоро его пройдём.

@bot.edited_message_handler(filters) # <- передаёт объект Message в вашу функцию

 

Channel Post handler


Обрабатывает сообщения каналов.

@bot.channel_post_handler(filters) # <- передаёт объект Message в вашу функцию

 

Edited Channel Post handler


Обрабатывает отредактированные сообщения каналов

@bot.edited_channel_post_handler(filters) # <- передаёт объект Message в вашу функцию

 

Callback Query Handler


Обрабатывает callback запросы. Это мы пройдём позже в уроке кнопки.

@bot.callback_query_handler(func=lambda call: True) # <- передаёт объект CallbackQuery в вашу функцию

 

Shipping Query Handler


Обрабатывает shipping запросы.

@bot.shipping_query_handeler() # <- передаёт объект ShippingQuery в вашу функцию

 

Pre Checkout Query Handler


Обрабатывает pre checkout запросы

@bot.pre_checkout_query_handler() # <- передаёт объект PreCheckoutQuery в вашу функцию

 

Poll Handler


Обрабатывает обновления опросов

@bot.poll_handler() # <- передаёт объект Poll в вашу функцию

 

Poll Answer Handler


Обрабатывает ответы на опросы

@bot.poll_answer_handler() # <- передаёт объект PollAnswer в вашу функцию

 

My Chat Member Handler


Обрабатывает обновления статуса участника бота в чате

@bot.my_chat_member_handler() # <- передаёт объект ChatMemberUpdated в вашу функцию

 

Chat Member Handler


Обрабатывает обновления статуса пользователя в чате

@bot.chat_member_handler() # <- передаёт объект ChatMemberUpdated в вашу функцию

 

Chat Join Request Handler


Обрабатывает запросы на присоединение к чату

@bot.chat_join_request_handler() # <- передаёт объект ChatInviteLink в вашу функцию

 

Я не понимаю как, где, и для чего можно использовать большинство из этих обработчиков, если вы знаете - напишите пожалуйста в комментариях)

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1   2   3   4   5   6   7   8   9   ...   27


написать администратору сайта