Tishka17 / aiogram_dialog

GUI framework on top of aiogram
https://aiogram-dialog.readthedocs.io
Apache License 2.0
662 stars 103 forks source link

Start dialog if i have only user/chat id #263

Open j0ker opened 1 year ago

j0ker commented 1 year ago

Добрый день, вот такая история: Есть сайт, на котором регистрируются пользователи через виджет телеграма, у пользователя есть некий профиль, он заполняется в автоматическом режиме. Как только профиль заполнен, нужно отправить оповещение пользователю (начать диалог) в телеге. Из входных данных имеется user / chat id и инстанс бота.

Полагаю, что нужно сделать: bot.send_message(user_id, ...) Но не понимаю как сюда диалог приспособить.

Подскажите пожалуйста как стартануть диалог?

Спасибо


Hello, how start dialog with user if i have only user id? Need send notification in telegram after update information about user on site.

Thanks

j0ker commented 1 year ago

Сделал так:

from aiogram_dialog.manager.bg_manager import BgManager
from aiogram.types import Chat, User
from aiogram_dialog import StartMode, ShowMode
from app.states import MainSG

...

user = User(id=<telegram_id>, is_bot=False, first_name="First name")
chat = Chat(id=<telegram_id>, type="private")
manager = BgManager(user=user, chat=chat, bot=<bot>, router=<router>, intent_id=None, stack_id="")

await manager.start(MainSG.start, mode=StartMode.RESET_STACK, show_mode=ShowMode.SEND)