Kaynağa Gözat

Move filter_matrix_event logic to mautrix-python

Tulir Asokan 3 yıl önce
ebeveyn
işleme
2b7fb8f18d
3 değiştirilmiş dosya ile 5 ekleme ve 20 silme
  1. 4 14
      mautrix_signal/matrix.py
  2. 0 5
      mautrix_signal/portal.py
  3. 1 1
      requirements.txt

+ 4 - 14
mautrix_signal/matrix.py

@@ -16,13 +16,12 @@
 from typing import List, Union, TYPE_CHECKING
 
 from mautrix.bridge import BaseMatrixHandler
-from mautrix.types import (Event, ReactionEvent, MessageEvent, StateEvent, EncryptedEvent, RoomID,
-                           EventID, UserID, ReactionEventContent, RelationType, EventType,
-                           ReceiptEvent, TypingEvent, PresenceEvent, RedactionEvent,
-                           SingleReceiptEventContent)
+from mautrix.types import (Event, ReactionEvent, StateEvent, RoomID, EventID, UserID, TypingEvent,
+                           ReactionEventContent, RelationType, EventType, ReceiptEvent,
+                           PresenceEvent, RedactionEvent, SingleReceiptEventContent)
 
 from .db import Message as DBMessage
-from . import puppet as pu, portal as po, user as u, signal as s
+from . import portal as po, user as u, signal as s
 
 if TYPE_CHECKING:
     from .__main__ import SignalBridge
@@ -40,15 +39,6 @@ class MatrixHandler(BaseMatrixHandler):
 
         super().__init__(bridge=bridge)
 
-    def filter_matrix_event(self, evt: Event) -> bool:
-        if isinstance(evt, (ReceiptEvent, TypingEvent)):
-            return False
-        elif not isinstance(evt, (ReactionEvent, MessageEvent, StateEvent, EncryptedEvent,
-                                  RedactionEvent)):
-            return True
-        return (evt.sender == self.az.bot_mxid
-                or pu.Puppet.get_id_from_mxid(evt.sender) is not None)
-
     async def send_welcome_message(self, room_id: RoomID, inviter: 'u.User') -> None:
         await super().send_welcome_message(room_id, inviter)
         if not inviter.notice_room:

+ 0 - 5
mautrix_signal/portal.py

@@ -251,11 +251,6 @@ class Portal(DBPortal, BasePortal):
 
     async def handle_matrix_message(self, sender: 'u.User', message: MessageEventContent,
                                     event_id: EventID) -> None:
-        if ((message.get(self.bridge.real_user_content_key, False)
-             and await p.Puppet.get_by_custom_mxid(sender.mxid))):
-            self.log.debug(f"Ignoring puppet-sent message by confirmed puppet user {sender.mxid}")
-            return
-
         orig_sender = sender
         sender, is_relay = await self._get_relay_sender(sender, f"message {event_id}")
         if not sender:

+ 1 - 1
requirements.txt

@@ -4,5 +4,5 @@ commonmark>=0.8,<0.10
 aiohttp>=3,<4
 yarl>=1,<2
 attrs>=19.1
-mautrix>=0.11.2,<0.12
+mautrix>=0.11.4,<0.12
 asyncpg>=0.20,<0.25