Unable to receive self messages from other clients (#90)
Unknown opened 3 years ago

Describe the bug Occasionally I want to share text or files between devices. With Gajim and Conversations this works just fine, however, with BeagleIM this is only possible one-way. Messages sent by BeagleIM show up in other clients but messages sent from Gajim or Conversations never show up.

To Reproduce Steps to reproduce the behavior:

  1. Start a converstation in another client to your own JID
  2. Send a text message
  3. Message shows up in other connected clients but not on BeagleIM

Expected behavior Messages should show up in BeagleIM as well.

Desktop (please complete the following information):

  • OS: macOS 11.5.2
  • Version: 5.0 (132) and stable app store version, not sure which version that was as it seems that the stable version isn't usable anymore after launching the beta.

Additional context In BeagleIM the chat shows up in the From unknown section below Direct messages if you explicitly open such a chat.

Unknown commented 3 years ago

The same as issue #521

I've just checked and this works as expected. Messages from "self" are in "From unknown" and are delivered and shown there. All conversations which are not MUC rooms or MIX channels or are not with people from Contacts window are shown in From unknown section.

If you will to received notifications for those messages please go to Preferences and in General check Show for messages from unknown senders in Notifications section.

Unknown commented 3 years ago

Thanks for the quick response.

As far as I understand the setting should only affect whether I receive notifications for those, not whether they are visible in general.

I do unfortunately not see any messages in the chat window, I'm not just missing notifications.

I did check if it makes any difference if I check the checkbox and also restarted BeagleIM just to be sure but it does not appear to make any difference.

<!--   2021-08-26T16:38:06Z   <<<<   -->
<message to='nothing4you@w.tf-w.tf/DAv78hRC' type='chat' from='nothing4you@w.tf-w.tf'>
<sent xmlns='urn:xmpp:carbons:2'>
<forwarded xmlns='urn:xmpp:forward:0'>
<message from='nothing4you@w.tf-w.tf/gajim.PXS83LRHWOGD8I9M' type='chat' xmlns='jabber:client' id='7b6c4735-145b-41b3-a45f-48c3653fd34f'>
<body>this does not show up</body>
<origin-id id='7b6c4735-145b-41b3-a45f-48c3653fd34f' xmlns='urn:xmpp:sid:0'/>
<markable xmlns='urn:xmpp:chat-markers:0'/>
<stanza-id by='nothing4you@w.tf-w.tf' xmlns='urn:xmpp:sid:0' id='99bcee4b-7ab9-4560-9cf2-2020590fb1b7'/>
</message>
</forwarded>
</sent>
</message>

<!--   2021-08-26T16:38:06Z   <<<<   -->
<message type='chat' from='nothing4you@w.tf-w.tf/gajim.PXS83LRHWOGD8I9M' id='7b6c4735-145b-41b3-a45f-48c3653fd34f'>
<body>this does not show up</body>
<origin-id xmlns='urn:xmpp:sid:0' id='7b6c4735-145b-41b3-a45f-48c3653fd34f'/>
<markable xmlns='urn:xmpp:chat-markers:0'/>
<stanza-id xmlns='urn:xmpp:sid:0' id='1add16b0-c5b7-494c-905e-721d9365b553' by='nothing4you@w.tf-w.tf'/>
</message>

<!--   2021-08-26T16:38:06Z   <<<<   -->
<r xmlns='urn:xmpp:sm:3'/>

<!--   2021-08-26T16:38:06Z   >>>>   -->
<a xmlns='urn:xmpp:sm:3' h='2371'/>
Screenshot 2021-08-26 at 18 41 41
Unknown commented 3 years ago

btw, to add to that, as visible in the bottom of the screenshot, pubsub messages do show up.

Unknown commented 3 years ago

What server do you use? I'm asking as incoming message is missing to attribute and that is most likely causing the issue in your case.

Unknown commented 3 years ago

this is on Prosody 0.11 nightly build 133 (2021-07-23, d117b92fd8e4)

Unknown commented 3 years ago

According to RFC 6120 https://datatracker.ietf.org/doc/html/rfc6120#section-8.1.1.1 states that for incoming stanza:

  1. A stanza with a specific intended recipient (e.g., a conversation partner, a remote service, the server itself, even another resource associated with the user's bare JID) MUST possess a 'to' attribute whose value is an XMPP address.

and for processing stanzas before sending them back to client:

  1. If the server has received the stanza from another connected client or from a peer server, the server MUST NOT modify the 'to' address before delivering the stanza to the client.

I'm pretty sure that your other clients are sending to attribute in messages sent to self and your server is removing this to attribute which is not ok according to this RFC.

@mwild1 Am I correct? I know that client may "ignore" checking to but it still may be checking and without to there is an issue.

Unknown commented 2 years ago

I don't know what changed since last time but it seems that this is working now with BeagleIM 5.3.1 (162) and Prosody 0.12.1.

issue 1 of 1
Type
Duplicate
Issue Votes (0)
Watchers (0)
Reference
tigase/_clients/beagle-im#90
Please wait...
Page is in error, reload to recover