Mercurial > libervia-backend
changeset 2848:b9da74c9d46e
quick_frontend(app): fixed use of bare jid for target when getting a new message:
in newMessage handler, full jid was sometime used for target, while is should always be bare jid. Full jid is used in the messageNew method of each widget.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sun, 10 Mar 2019 18:02:56 +0100 |
parents | c055a3a4ecb0 |
children | c2858e63cd82 |
files | sat_frontends/quick_frontend/quick_app.py |
diffstat | 1 files changed, 7 insertions(+), 15 deletions(-) [+] |
line wrap: on
line diff
--- a/sat_frontends/quick_frontend/quick_app.py Sun Mar 10 18:02:54 2019 +0100 +++ b/sat_frontends/quick_frontend/quick_app.py Sun Mar 10 18:02:56 2019 +0100 @@ -702,32 +702,24 @@ from_jid = jid.JID(from_jid_s) to_jid = jid.JID(to_jid_s) if not self.trigger.point( - "messageNewTrigger", - uid, - timestamp, - from_jid, - to_jid, - msg, - subject, - type_, - extra, - profile=profile, - ): + "messageNewTrigger", uid, timestamp, from_jid, to_jid, msg, subject, type_, + extra, profile=profile,): return from_me = from_jid.bare == self.profiles[profile].whoami.bare - target = to_jid if from_me else from_jid + mess_to_jid = to_jid if from_me else from_jid + target = mess_to_jid.bare contact_list = self.contact_lists[profile] try: - is_room = contact_list.isRoom(target.bare) + is_room = contact_list.isRoom(target) except exceptions.NotFound: is_room = False if target.resource and not is_room: # we avoid resource locking, but we must keep resource for private MUC # messages - target = target.bare + target = target # we want to be sure to have at least one QuickChat instance self.widgets.getOrCreateWidget( quick_chat.QuickChat, @@ -750,7 +742,7 @@ quick_chat.QuickChat, target=target, profiles=(profile,) ): widget.messageNew( - uid, timestamp, from_jid, target, msg, subject, type_, extra, profile + uid, timestamp, from_jid, mess_to_jid, msg, subject, type_, extra, profile ) def messageEncryptionStartedHandler(self, destinee_jid_s, plugin_data, profile):