Skip to content

can't handle requests made by replying, in encrypted rooms #12

@kylrth

Description

@kylrth

In an encrypted room, the bot can edit just fine if asked to edit the message immediately preceding, but it cannot edit if the message is selected by replying:

encrypted room with sedbot

It appears that self.client.get_event returns an EncryptedEvent, which the plugin can't handle:

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/mautrix/client/syncer.py", line 235, in _catch_errors
    await handler(data)
  File "/data/plugins/xyz.maubot.sed-v1.1.0.mbp/sed.py", line 192, in message_handler
    await self.command_handler(evt)
  File "/opt/maubot/maubot/handlers/command.py", line 490, in replacement
    await asyncio.gather(combine(self, evt), orig_replacement(self, evt))
  File "/opt/maubot/maubot/handlers/command.py", line 480, in replacement
    await func(self, evt, val)
  File "/data/plugins/xyz.maubot.sed-v1.1.0.mbp/sed.py", line 205, in command_handler
    await self._command_handler(evt, match)
  File "/data/plugins/xyz.maubot.sed-v1.1.0.mbp/sed.py", line 223, in _command_handler
    await self._try_replace_event(evt.event_id, stmt, reply_evt)
  File "/data/plugins/xyz.maubot.sed-v1.1.0.mbp/sed.py", line 166, in _try_replace_event
    replaced = self._exec(stmt, orig_evt.content.body)
AttributeError: 'EncryptedMegolmEventContent' object has no attribute 'body'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions