diff --git a/db/migrations/0005-clear-member-cache.sql b/db/migrations/0005-clear-member-cache.sql new file mode 100644 index 0000000..6899fe6 --- /dev/null +++ b/db/migrations/0005-clear-member-cache.sql @@ -0,0 +1,5 @@ +BEGIN TRANSACTION; + +DELETE FROM member_cache; + +COMMIT; diff --git a/m2d/event-dispatcher.js b/m2d/event-dispatcher.js index 48add81..f7e5e1b 100644 --- a/m2d/event-dispatcher.js +++ b/m2d/event-dispatcher.js @@ -147,6 +147,6 @@ sync.addTemporaryListener(as, "type:m.room.member", guard("m.room.member", */ async event => { if (event.state_key[0] !== "@") return - if (utils.eventSenderIsFromDiscord(event.sender)) return - db.prepare("REPLACE INTO member_cache (room_id, mxid, displayname, avatar_url) VALUES (?, ?, ?, ?)").run(event.room_id, event.sender, event.content.displayname || null, event.content.avatar_url || null) + if (utils.eventSenderIsFromDiscord(event.state_key)) return + db.prepare("REPLACE INTO member_cache (room_id, mxid, displayname, avatar_url) VALUES (?, ?, ?, ?)").run(event.room_id, event.state_key, event.content.displayname || null, event.content.avatar_url || null) }))