浏览代码

relaybot power level changes if possible

Malte E 3 年之前
父节点
当前提交
45dd844e21
共有 1 个文件被更改,包括 6 次插入3 次删除
  1. 6 3
      mautrix_signal/matrix.py

+ 6 - 3
mautrix_signal/matrix.py

@@ -196,13 +196,16 @@ class MatrixHandler(BaseMatrixHandler):
         ):
             return
 
-        user = await u.User.get_by_mxid(evt.sender)
-        if not user:
-            return
         portal = await po.Portal.get_by_mxid(evt.room_id)
         if not portal:
             return
 
+        user = await u.User.get_by_mxid(evt.sender)
+        if not await user.is_logged_in() and portal.has_relay:
+            user = portal.relay_user_id
+        if not user:
+            return
+
         if evt.type == EventType.ROOM_NAME:
             await portal.handle_matrix_name(user, evt.content.name)
         elif evt.type == EventType.ROOM_AVATAR: