Size: a a a

2017 July 25

AR

Alex RootJunior in aiogram [ru]
источник

NG

Nicholas Guriev in aiogram [ru]
Здравствуйте!
источник

AR

Alex RootJunior in aiogram [ru]
Nicholas Guriev
Здравствуйте!
Приветствую 😄
источник
2017 July 31

OA

Oleg A. 🇷🇺 in aiogram [ru]
Всем привет)
источник

OA

Oleg A. 🇷🇺 in aiogram [ru]
Подскажи, планируется ли сделать вариант привязки хэндлеров к стейту, как это в pyton-telegram-bot реализовано (Conversation Handler)
источник

AR

Alex RootJunior in aiogram [ru]
Oleg A. 🇷🇺
Подскажи, планируется ли сделать вариант привязки хэндлеров к стейту, как это в pyton-telegram-bot реализовано (Conversation Handler)
Тут есть реализована стейт машина

Вот простой пример использования:
https://bitbucket.org/illemius/aiogram/src/c94c4e80033cd6ad328b9a481c2212ac9983574a/examples/state_machine.py?at=master&fileviewer=file-view-default
источник

AR

Alex RootJunior in aiogram [ru]
В ближайшее время будет еще пример с использованием внешнего хранилища для состояний (redis/aioredis)
источник

OA

Oleg A. 🇷🇺 in aiogram [ru]
Alex RootJunior
Тут есть реализована стейт машина

Вот простой пример использования:
https://bitbucket.org/illemius/aiogram/src/c94c4e80033cd6ad328b9a481c2212ac9983574a/examples/state_machine.py?at=master&fileviewer=file-view-default
Этот пример я видел. Вопрос в возможности красиво привязать ряд хендлеров к определенному стейту, как это сделано в ptb Conversation Handler
источник

OA

Oleg A. 🇷🇺 in aiogram [ru]
Ты заказал 5 функций

У юзера 3 стейта

В стейт 1 вешаем 4 хендлера, которые при срабатывании вызывают 4 функции из заданных.
В стейт 2 вешаем 3 других хендлера, которые вызывают 3 функции из заданных

В стейт3 ещё 4  других хендлера, которые вызывают 4 функции из списка заданных
источник

OA

Oleg A. 🇷🇺 in aiogram [ru]
Итого задано 5 функций, а вызов их идёт гибкий, хоть по 100 разным хендлерам
источник

AR

Alex RootJunior in aiogram [ru]
Oleg A. 🇷🇺
Этот пример я видел. Вопрос в возможности красиво привязать ряд хендлеров к определенному стейту, как это сделано в ptb Conversation Handler
просмотрел примеры от python-telegram-bot.
понял о чем идет речь.
сейчас именно так как там реализуется это нельзя делать. Хотя аналогичного поведения можно добится.
да, это удобно, подумаю об подобной реализации стейт машины.
источник

OA

Oleg A. 🇷🇺 in aiogram [ru]
Я бы с удовольствием пересел на aiogram, но для меня очень критичен момент с гибкими хендлерами. Не готов переписывать всю логику игры на новый лад
источник

AR

Alex RootJunior in aiogram [ru]
Oleg A. 🇷🇺
Я бы с удовольствием пересел на aiogram, но для меня очень критичен момент с гибкими хендлерами. Не готов переписывать всю логику игры на новый лад
А что ты скажешь об объявлении (регистрации) состояний декораторами, подобно тому, как добавляются обработчики сообщений (в aiogram и pyTelegramBotAPI)?
источник

OA

Oleg A. 🇷🇺 in aiogram [ru]
ммм, не очень понял вопрос
источник

AR

Alex RootJunior in aiogram [ru]
Oleg A. 🇷🇺
ммм, не очень понял вопрос
Строка 29. Объявление/добавление/регистрация состояния.
источник

NG

Nicholas Guriev in aiogram [ru]
s/машина состояний/конечный автомат/
источник

AR

Alex RootJunior in aiogram [ru]
Nicholas Guriev
s/машина состояний/конечный автомат/
справедливо
источник

AR

Alex RootJunior in aiogram [ru]
вот так еще лучше
источник
2017 August 01

OA

Oleg A. 🇷🇺 in aiogram [ru]
Alex RootJunior
А что ты скажешь об объявлении (регистрации) состояний декораторами, подобно тому, как добавляются обработчики сообщений (в aiogram и pyTelegramBotAPI)?
При некоторых кейсах использования - это удобно и лаконично, но не в моем случае.

Вариант с декораторами получается менее прозрачным, когда логика действий у тебя огромная — нужно сидеть и решать между какой и какой функцией ты будешь вставлять новую. Когда в файле больше 1к строк сильно часто не подвигаешь их. Именно поэтому я из telebot в ptb мигрировал.
Ты задаешь функции в удобном тебе порядке, который не влияет на порядок их срабатывания... А потом в конце файла даешь функцию мэйн с хендлерами, где расставляешь по стейтам хэндлеры в правильном порядке с коллбэком функций, которые определил ранее.
источник

AR

Alex RootJunior in aiogram [ru]
Oleg A. 🇷🇺
При некоторых кейсах использования - это удобно и лаконично, но не в моем случае.

Вариант с декораторами получается менее прозрачным, когда логика действий у тебя огромная — нужно сидеть и решать между какой и какой функцией ты будешь вставлять новую. Когда в файле больше 1к строк сильно часто не подвигаешь их. Именно поэтому я из telebot в ptb мигрировал.
Ты задаешь функции в удобном тебе порядке, который не влияет на порядок их срабатывания... А потом в конце файла даешь функцию мэйн с хендлерами, где расставляешь по стейтам хэндлеры в правильном порядке с коллбэком функций, которые определил ранее.
если у тебя вся логика в одном модуле и как говоришь больше 1к строк, то стоит задуматься об изменении архитектуры, как минимум
источник