Refactor codebase to by DRY
This commit is contained in:
parent
c925079e8b
commit
83a526c533
13 changed files with 320 additions and 131 deletions
|
|
@ -46,19 +46,18 @@ class MatrixClientSettings(BaseSettings):
|
|||
password: str
|
||||
device_name: str
|
||||
store_path: str
|
||||
join_rooms: Optional[List[str]]
|
||||
verify_ssl: Optional[bool] = True
|
||||
|
||||
class Config:
|
||||
env_prefix = "MATRIX_"
|
||||
secrets_dir = "/run/secrets"
|
||||
case_sensitive = False
|
||||
|
||||
|
||||
class MatrixClient:
|
||||
def __init__(self, settings: MatrixClientSettings):
|
||||
def __init__(self, settings: MatrixClientSettings, join_rooms: List[str]):
|
||||
self.settings = settings
|
||||
self.store_path = pathlib.Path(settings.store_path)
|
||||
self.join_rooms = join_rooms
|
||||
self.credential_store = LocalCredentialStore(
|
||||
self.store_path.joinpath("credentials.json")
|
||||
)
|
||||
|
|
@ -79,9 +78,8 @@ class MatrixClient:
|
|||
if self.client.should_upload_keys:
|
||||
await self.client.keys_upload()
|
||||
|
||||
if self.settings.join_rooms:
|
||||
for room in self.settings.join_rooms:
|
||||
await self.client.join(room)
|
||||
for room in self.join_rooms:
|
||||
await self.client.join(room)
|
||||
|
||||
await self.client.joined_rooms()
|
||||
await self.client.sync_forever(timeout=300000, full_state=True)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue