Split find_and_create_room out of send_msg
This commit is contained in:
parent
9fefb730a9
commit
528a596d68
17
bot.py
17
bot.py
|
@ -236,7 +236,16 @@ class Bot:
|
||||||
:return bool: Success upon sending the message
|
:return bool: Success upon sending the message
|
||||||
"""
|
"""
|
||||||
# Sends private message to user. Returns true on success.
|
# Sends private message to user. Returns true on success.
|
||||||
|
msg_room = await self.find_or_create_private_msg(mxid, roomname)
|
||||||
|
if not msg_room or (type(msg_room) is RoomCreateError):
|
||||||
|
self.logger.error(f'Unable to create room when trying to message {mxid}')
|
||||||
|
return False
|
||||||
|
|
||||||
|
# Send message to the room
|
||||||
|
await self.send_text(msg_room, message)
|
||||||
|
return True
|
||||||
|
|
||||||
|
async def find_or_create_private_msg(self, mxid, roomname):
|
||||||
# Find if we already have a common room with user:
|
# Find if we already have a common room with user:
|
||||||
msg_room = None
|
msg_room = None
|
||||||
for croomid in self.client.rooms:
|
for croomid in self.client.rooms:
|
||||||
|
@ -254,14 +263,8 @@ class Bot:
|
||||||
preset=RoomPreset.private_chat,
|
preset=RoomPreset.private_chat,
|
||||||
invite={mxid},
|
invite={mxid},
|
||||||
)
|
)
|
||||||
|
return msg_room
|
||||||
|
|
||||||
if not msg_room or (type(msg_room) is RoomCreateError):
|
|
||||||
self.logger.error(f'Unable to create room when trying to message {mxid}')
|
|
||||||
return False
|
|
||||||
|
|
||||||
# Send message to the room
|
|
||||||
await self.send_text(msg_room, message)
|
|
||||||
return True
|
|
||||||
|
|
||||||
def remove_callback(self, callback):
|
def remove_callback(self, callback):
|
||||||
for cb_object in self.client.event_callbacks:
|
for cb_object in self.client.event_callbacks:
|
||||||
|
|
Loading…
Reference in New Issue