Эх сурвалжийг харах

Move filter_matrix_event logic to mautrix-python

Tulir Asokan 3 жил өмнө
parent
commit
d6afaa46c3

+ 4 - 14
mautrix_instagram/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, RoomID, EventID, UserID, ReactionEventContent,
+                           RelationType, EventType, ReceiptEvent, TypingEvent, PresenceEvent,
+                           RedactionEvent, SingleReceiptEventContent)
 
 from .db import Message as DBMessage
-from . import puppet as pu, portal as po, user as u
+from . import portal as po, user as u
 
 if TYPE_CHECKING:
     from .__main__ import InstagramBridge
@@ -37,15 +36,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:

+ 1 - 5
mautrix_instagram/portal.py

@@ -191,11 +191,7 @@ 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
-        elif not sender.is_connected:
+        if not sender.is_connected:
             await self._send_bridge_error(
                 sender,
                 Exception("You're not connected to Instagram"),

+ 1 - 1
requirements.txt

@@ -4,7 +4,7 @@ commonmark>=0.8,<0.10
 aiohttp>=3,<4
 yarl>=1,<2
 attrs>=20.1
-mautrix>=0.11.2,<0.12
+mautrix>=0.11.4,<0.12
 asyncpg>=0.20,<0.25
 pycryptodome>=3,<4
 paho-mqtt>=1.5,<2