From a2e1d162895290a10e60e07daf228857d0fd52df Mon Sep 17 00:00:00 2001
From: Tulir Asokan <tulir@maunium.net>
Date: Thu, 11 Jun 2020 19:04:26 +0300
Subject: [PATCH] Use join_room instead of ensure_joined for custom puppet
 after creating portal. Fixes #68

---
 mautrix_facebook/portal.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/mautrix_facebook/portal.py b/mautrix_facebook/portal.py
index c33c0b9..a894786 100644
--- a/mautrix_facebook/portal.py
+++ b/mautrix_facebook/portal.py
@@ -439,7 +439,11 @@ class Portal(BasePortal):
             else:
                 puppet = p.Puppet.get_by_custom_mxid(source.mxid)
                 if puppet:
-                    await puppet.intent.ensure_joined(self.mxid)
+                    try:
+                        await puppet.intent.join_room_by_id(self.mxid)
+                    except MatrixError:
+                        self.log.debug("Failed to join custom puppet into newly created portal",
+                                       exc_info=True)
 
             in_community = await source._community_helper.add_room(source._community_id, self.mxid)
             DBUserPortal(user=source.fbid, portal=self.fbid, portal_receiver=self.fb_receiver,
-- 
GitLab