Exemplo n.º 1
0
if args.generate_registration:
    config.generate_registration()
    config.save()
    print(f"Registration generated and saved to {config.registration_path}")
    sys.exit(0)

logging.config.dictConfig(copy.deepcopy(config["logging"]))
log = logging.getLogger("mau.init")  # type: logging.Logger
log.debug(f"Initializing mautrix-telegram {__version__}")

db_engine = sql.create_engine(config["appservice.database"] or "sqlite:///mautrix-telegram.db")
Base.metadata.bind = db_engine

session_container = AlchemySessionContainer(engine=db_engine, table_base=Base, session=False,
                                            table_prefix="telethon_", manage_tables=False)
session_container.core_mode = True

try:
    import uvloop

    asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
    log.debug("Using uvloop for asyncio")
except ImportError:
    pass

loop = asyncio.get_event_loop()  # type: asyncio.AbstractEventLoop

state_store = SQLStateStore()
mebibyte = 1024 ** 2
appserv = AppService(config["homeserver.address"], config["homeserver.domain"],
                     config["appservice.as_token"], config["appservice.hs_token"],
Exemplo n.º 2
0
import sqlalchemy as sa
from alchemysession import AlchemySessionContainer
from companion.env_vars import DB_URI, SESSION_NAME

if DB_URI:
    engine = sa.create_engine(DB_URI)
    connection = engine.connect()
    container = AlchemySessionContainer(DB_URI)
    container.core_mode = True
    SESSION = container.new_session(SESSION_NAME)
else:
    engine = None
    metadata = None
    connection = None
    SESSION = SESSION_NAME