169 похожих чатов

Хелпаните, можно ли поменять state в middleware?

23 ответов

68 просмотров

можно, но точно ли нужно?

Hari- Автор вопроса

зачем.. мидлварь все равно к хендлеру цепляется только меняй Стейт в хендлере а то че за бомба скрытого действия, потом сам код не поймёшь, запутаешься, долго будешь разбираться а ещё, хуже того, привыкнешь таких дохлых крыс в коде оставлять, тебе никто потом спасибо не скажет, только за углом, пёрышком погладит по ребру оно тебе не надо соблюдай одно из правил хотя бы Явное лучше, чем неявное

Какую задачу ты решаешь?

Hari- Автор вопроса
but'wha
зачем.. мидлварь все равно к хендлеру цепляется то...

Мне просто нужно установить определенный стейт, если в бд появляется запись. И сразу же перенаправить сообщение в хендлер с этим стейтом. А в каждом хендлере впадлу прописывать))

Hari- Автор вопроса
Ilya Lyapin (Nestyreff)
Какую задачу ты решаешь?

Чат между двумя пользователями

Hari
Чат между двумя пользователями

Так погоди, зачем тебе много хендлеров. Если ты имеешь ввиду, что когда был найден собеседник ты хочешь переключить человека на state общения, то у тебя только один хендлер должен быть.

Hari- Автор вопроса
Ilya Lyapin (Nestyreff)
Так погоди, зачем тебе много хендлеров. Если ты им...

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

Hari
Я хочу, чтобы когда пользователь нажимает кнопочку...

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

Hari- Автор вопроса
Ilya Lyapin (Nestyreff)
Ну так у тебя получается кнопка и должна перекидыв...

Ну как у меня кнопка перекинет на этот стейт другого пользователя, так можно разве?

Hari
Ну как у меня кнопка перекинет на этот стейт друго...

просто в Стейт засовывай отправителя, и получателю в любом стейте кидай сразу же отправленное сообщение.....

Hari- Автор вопроса
but'wha
просто в Стейт засовывай отправителя, и получателю...

Я кидаю ему сообщение в любом стейте, но он же должен еще отвечать

Hari
Я кидаю ему сообщение в любом стейте, но он же дол...

так пусть выйдет из стейта и зайдет в раздел ответа сообщений, тоже стейт какой-нибудь

Hari
2.21

(FSM context).get_state(user_id).set_state(...)

Hari- Автор вопроса
Ilya Lyapin (Nestyreff)
(FSM context).get_state(user_id).set_state(...)

А лол, я не знал, что так можно)))))))))))))))))))))))

Hari- Автор вопроса
but'wha
так пусть выйдет из стейта и зайдет в раздел ответ...

Мне над, чтоб без всяких разделов сразу мог отвечать

Hari
Мне над, чтоб без всяких разделов сразу мог отвеча...

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

Hari- Автор вопроса
Ilya Lyapin (Nestyreff)
(FSM context).get_state(user_id).set_state(...)

Это не сработало, но я нашел, как можно. state = dp.current_state(chat=chat_id, user=user_id) await state.set_state(My.state) Все равно спасибо большое)))

Hari
Это не сработало, но я нашел, как можно. state = ...

Я сначала это и хотел написать, но ввиду того, что у меня 12 ночи, написал не то)

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

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта