Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XEP-0184: Message Delivery Receipts - ACK only sent to the message sender #339

Closed
Tracked by #322
marmistrz opened this issue Jan 8, 2020 · 9 comments
Closed
Tracked by #322
Labels
📑 XEP Refers to relevant or issued XEPs 🚫 Bug / Stability Releated directly to bugs or instability issues

Comments

@marmistrz
Copy link
Contributor

marmistrz commented Jan 8, 2020

I'm using two clients: Conversations & gajim. My contact is using Monal. When I send him a message, I only get the ACK on the device I sent it from, i.e.

  • if I send a message from gajim, then only gajim shows the ACK, Conversations doesn't
  • if I send a message from Conversations, then only Conversations shows the ACK, gajim doesn't

This looks like the ACK were sent to the full JID, whereas the bare JID should probably be preferred in this case - but this hypothesis may be wrong.

Edit by maintainer:
XEP-0184: Message Delivery Receipts
https://xmpp.org/extensions/xep-0184.html

@anurodhp
Copy link
Contributor

anurodhp commented Jan 8, 2020

ill check the xep and look at the code to see what it is doing. probably won't be fixed in 4.2.2 but will be in 4.3 in feb .

@anurodhp anurodhp added the 🚫 Bug / Stability Releated directly to bugs or instability issues label Jan 8, 2020
@Echolon Echolon added the 📑 XEP Refers to relevant or issued XEPs label Jan 8, 2020
@Echolon Echolon changed the title XEP-0184 ack only sent to the message sender XEP-0184: Message Delivery Receipts - ack only sent to the message sender Jan 8, 2020
@Echolon Echolon changed the title XEP-0184: Message Delivery Receipts - ack only sent to the message sender XEP-0184: Message Delivery Receipts - ACK only sent to the message sender Jan 8, 2020
@Echolon Echolon mentioned this issue Jan 8, 2020
65 tasks
@Alexmark1
Copy link

I never got any delivery receipt when the receiver was using Monal (sender was either Gajim or Conversations). Do I need to enable sending of delivery receipts in Monal somehow?

@anurodhp
Copy link
Contributor

anurodhp commented Jan 27, 2020 via email

@foss-
Copy link
Contributor

foss- commented Jan 27, 2020

Delivery receipt seems to work in a Test Monal to Monal. Or at least I do see "Delivered" info for new sent messages when sent from Monal Catalyst latest beta.

@Alexmark1
Copy link

Alexmark1 commented Feb 4, 2020

Confirmed, delivery receipt works Monal-Monal, but not for messages sent from Gajim->Monal (while it does work Gajim->Conversations). What makes this more problematic is the fact that when the receiver does not open Monal quickly after receiving the notification, the sender will get an error; and even if the receiver opens Monal later and sees the message, the sender will still believe the message was lost. Not a huge problem, but users get frustrated and lose trust in the app and XMPP in general.

@anurodhp
Copy link
Contributor

I think this is a problem with gajim. Ive seen this error too and sometimes hava gajim users send me multiple messages. The problem is that gajim likely thinks the "error" user unavailable means the message didn't arrive. This is part of the 90s legacy where when a user was offline they didn't get the message. With push there is a notification that goes to the user and they do eventually see it.

@tmolitor-stud-tu
Copy link
Member

The receipts from prosody were not stored in the mam archive because the type of the message stanza was not set at all (should be "chat").
Maybe this is the reason for this bug.
(I fixed this a few hours ago, pull request is on its way)

@marmistrz
Copy link
Contributor Author

Why would then Conversations miss the ACKs when the messages are sent from gajim?

@tmolitor-stud-tu
Copy link
Member

@marmistrz you are right, in the code I can see that the receipt is sent to the full jid, not the bare one. usually this should be "fixed" by carbons, maybe you have carbons turned off somehow?

Monal 4.6 will have a fix for that.

The other thing you mentioned (errors) has some other reason, I described here: https://github.com/anurodhp/Monal/issues/352#issuecomment-614393801

@anurodhp

I think this is a problem with gajim. Ive seen this error too and sometimes hava gajim users send me multiple messages. The problem is that gajim likely thinks the "error" user unavailable means the message didn't arrive. This is part of the 90s legacy where when a user was offline they didn't get the message. With push there is a notification that goes to the user and they do eventually see it.

--> no, the reason is this: https://github.com/anurodhp/Monal/issues/352#issuecomment-614393801

anurodhp pushed a commit that referenced this issue Apr 17, 2020
* Add debug attributes to smacks requests

* Revert "dont block main thread"

This reverts commit 2ffc1a5.

* Revert "text fix"

This reverts commit c30f81f.

* Fix thread switch in between of transactions

* Fix DISABLE_OMEMO define functionality

* Send XEP-0184 receipts to the bare jid, fixes #339
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📑 XEP Refers to relevant or issued XEPs 🚫 Bug / Stability Releated directly to bugs or instability issues
Projects
None yet
Development

No branches or pull requests

6 participants