-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
status_msg is overwritten when presence is changed (user goes offline) #2245
Comments
Is this a spec issue? (to specify that |
I wouldn't say so. There is no status update function called client side. It is simply synapse, that marks the client as offline, because it does not call |
Is this issue still relevant? I have set a status. Logged out. user goes offline. Status is still existent and has not changed. |
@dklimpel You probably didn't set a status_msg but an im.vector.status state event. Which is not part of the presence module or even the spec. At least here my status_msg still vanishes regularly, but I last tested it 2 weeks ago. |
Yes you are right. I did a second check. This is |
IMO it is not a spec issue: |
I think in this part Synapse sets synapse/synapse/handlers/presence.py Lines 1186 to 1188 in 8ae0bdc
Introduced in #582 with b31ec21 |
It's not clear to me if this is expected behaviour or not, and I think depends on the use case a bit (e.g. how ephemeral is the status message meant to be?) |
Imo it is pretty annoying having to manually set the status_msg every morning, but yeah, I guess it depends on the use case. I am fine with not sending it when offline, but having to restore it after going online seems wrong to me. |
This is compelling: the spec does not require clearing (nor persisting!) the status_msg when state changes, so Synapse's decision to proactively clear the state is arbitrary, and on balance, seems more harmful than allowing it to persist. Tagging as a bug; patches are welcome. A patch is likely as simple as removing the synapse/synapse/handlers/presence.py Lines 1186 to 1188 in 05111f8
(and adding / adjusting some tests) |
I will create a PR. It is not only this one line. :( |
I was testing the status and presence features of Matrix, and noticed this:
My status_msg appears to be overwritten when my status changes to "offline" due to inactivity. Needless to say, this makes status_msg not so useful.
This is using matrix-python-sdk (with my presence changes), and the only active client at the time for that user was the SDK I was using to enter those function calls above.
The text was updated successfully, but these errors were encountered: