Files
beavergram/backend/scripts/session/create.py
T
2026-05-29 16:11:41 +02:00

37 lines
912 B
Python

import asyncio
from pathlib import Path
from userbot.modules.client import PyroClient
from utils.env import env
from utils.logging import logger, setup_logging
setup_logging()
def _prepare_sessions_dir() -> Path:
sessions_dir = Path(env.tg.sessions_dir)
sessions_dir.mkdir(parents=True, exist_ok=True)
return sessions_dir
def _finalize_session(sessions_dir: Path, name: str) -> Path:
target = sessions_dir / f"{name}.session"
(sessions_dir / "generated.session").rename(target)
return target
async def main() -> None:
sessions_dir = _prepare_sessions_dir()
client = PyroClient("generated", workdir=str(sessions_dir))
await client.start()
me = client.me
await client.stop()
target = _finalize_session(sessions_dir, str(me.id) if me else "unknown")
logger.info(f"[green]Session saved:[/] {target}")
if __name__ == "__main__":
asyncio.run(main())