Как работает handlers в python из библиотеки telebot?
Очень интересно и не понятно работают хендлеры. Вроде есть класс под хендлеры родительский, есть дочерние, которые берут функции родительского.
register_next_step_handler принимает 2 аргумента, функцию и объект . Так вот, он как и обычный хендлер добавляет в словарь chat_id и функцию (если не ошибаюсь), и вот тут для меня честно говоря не состыковка выходит. функция polling работает, и за счет этого в принципе скрипт непрерывно получает эвенты, потом регистрирует там все, как итог: в словаре появляется ключ в виде айди чата и callable функция в виде значения(но могу ошибаться насчет подобного), и вот как все происходит, что эта функция срабатывает только после следующего сообщения?
Хотел сделать подобное для вк, ибо не нашел никакой библиотеки, которая повторяла бы подобную функцию.
Даже если я скопирую большую часть кода, я все равно не разберусь в данной теме, поэтому хотел бы услышать ответ от того, кто знает насчет этого всего...
register_next_step_handler принимает 2 аргумента, функцию и объект
Ну типо да, но и нет, если глянуть глубже, то можно увидеть, что он принимает две функции, первая это "объект, так сказать",но в нем лежит функция которую надо выполнить, к примеру спросить как тебя зовут, после чего бот ждет ответ, ты отвечаешь"Сергей", и он выполняет функцию из второго аргумента, а аргументом в эту функцию передает твой ответ. Но он передает не просто "Сергей", он передает сообщение полностью, в виде словаря. И естественно в нем есть вся инфа...Но проще запринтовать, чтоб понять, что именно приходит. Поэксперементируй, а по поводу того как это работает, ну почитай в коде, все что надо боту он сохраняет во временный файл. А для адаптации с вк, придется попотеть. Первое, что приходит в голову, унаследовать бота и расширить функционал, для этого подробнее изучи ООП в питоне...оооочень подробнее