Update mautrix-python

This commit is contained in:
Tulir Asokan
2021-12-15 14:14:42 +02:00
parent 8603c67347
commit 9c14c86358
5 changed files with 12 additions and 12 deletions
-1
View File
@@ -53,7 +53,6 @@ class TelegramBridge(Bridge):
command = "python -m mautrix-telegram"
description = "A Matrix-Telegram puppeting bridge."
repo_url = "https://github.com/mautrix/telegram"
real_user_content_key = "net.maunium.telegram.puppet"
version = version
markdown_version = linkified_version
config_class = Config
+3 -4
View File
@@ -479,14 +479,13 @@ class BasePortal(MautrixBasePortal, ABC):
async def update_matrix_room(self, user: 'AbstractUser', entity: Union[TypeChat, User],
direct: bool, puppet: p.Puppet = None,
levels: PowerLevelStateEventContent = None,
users: List[User] = None,
participants: List[TypeParticipant] = None) -> None:
users: List[User] = None) -> None:
pass
@abstractmethod
async def create_matrix_room(self, user: 'AbstractUser', entity: TypeChat = None,
invites: InviteList = None, update_if_exists: bool = True,
synchronous: bool = False) -> Optional[str]:
invites: InviteList = None, update_if_exists: bool = True
) -> Optional[RoomID]:
pass
@abstractmethod
+5 -4
View File
@@ -33,7 +33,8 @@ from mautrix.errors import MForbidden
from mautrix.types import (RoomID, UserID, RoomCreatePreset, EventType, Membership,
PowerLevelStateEventContent, RoomTopicStateEventContent,
RoomNameStateEventContent, RoomAvatarStateEventContent,
StateEventContent, EventID)
StateEventContent, EventID, JoinRule)
from mautrix.appservice import DOUBLE_PUPPET_SOURCE_KEY
from ..types import TelegramID
from ..context import Context
@@ -710,9 +711,9 @@ class PortalMetadata(BasePortal, ABC):
if self.username:
await self.main_intent.add_room_alias(self.mxid, self.alias_localpart, override=True)
if self.public_portals:
await self.main_intent.set_join_rule(self.mxid, "public")
await self.main_intent.set_join_rule(self.mxid, JoinRule.PUBLIC)
else:
await self.main_intent.set_join_rule(self.mxid, "invite")
await self.main_intent.set_join_rule(self.mxid, JoinRule.INVITE)
if save:
await self.save()
@@ -724,7 +725,7 @@ class PortalMetadata(BasePortal, ABC):
try:
intent = sender.intent_for(self)
if sender.is_real_user:
content[self.az.real_user_content_key] = True
content[DOUBLE_PUPPET_SOURCE_KEY] = self.bridge.name
await intent.send_state_event(self.mxid, evt_type, content)
except MForbidden:
await self.main_intent.send_state_event(self.mxid, evt_type, content)
+3 -2
View File
@@ -34,6 +34,7 @@ from telethon.errors import AuthKeyDuplicatedError, RPCError, UnauthorizedError
from mautrix.client import Client
from mautrix.errors import MatrixRequestError, MNotFound
from mautrix.types import UserID, RoomID, PushRuleScope, PushRuleKind, PushActionType, RoomTagInfo
from mautrix.appservice import DOUBLE_PUPPET_SOURCE_KEY
from mautrix.bridge import BaseUser
from mautrix.util.bridge_state import BridgeState, BridgeStateEvent
from mautrix.util.logging import TraceLogger
@@ -475,9 +476,9 @@ class User(AbstractUser, BaseUser):
tag_info = await puppet.intent.get_room_tag(portal.mxid, tag)
if active and tag_info is None:
tag_info = RoomTagInfo(order=0.5)
tag_info[self.bridge.real_user_content_key] = True
tag_info[DOUBLE_PUPPET_SOURCE_KEY] = self.bridge.name
await puppet.intent.set_room_tag(portal.mxid, tag, tag_info)
elif not active and tag_info and tag_info.get(self.bridge.real_user_content_key, False):
elif not active and tag_info and tag_info.get(DOUBLE_PUPPET_SOURCE_KEY) == self.bridge.name:
await puppet.intent.remove_room_tag(portal.mxid, tag)
@staticmethod
+1 -1
View File
@@ -5,7 +5,7 @@ python-magic>=0.4,<0.5
commonmark>=0.8,<0.10
aiohttp>=3,<4
yarl>=1,<2
mautrix>=0.13.1,<0.14
mautrix>=0.13.2,<0.14
telethon>=1.24,<1.25
telethon-session-sqlalchemy>=0.2.14,<0.3
# Temporarily always depend on aiosqlite to prevent breaking old installs