You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It seems like a few server messages related to privileges are no longer in use. When I purchased privileges and attempted a few transfers, I never saw the following messages, even with the official client:
The documentation for NotifyPrivileges and AckNotifyPrivileges seems to be quite inconsistent and incorrect in some cases, and Nicotine+ previously sent a NotifyPrivileges message to the server, while the official client didn't.
Yep, a lot of this has been deprecated. I coded it all up based on the museek documentation the Nicotine+ source, then bought privileges to test and found out that not much of it actually works.
You can check your own privileges with code 92, someone else with 122, and gift privileges with code 123. The behavior of the grant operation is a pretty big departure from the rest of the API (all of this functionality is, really); my notes are here.
It still seems odd to me that the server doesn't bother sending a message to notify everyone when new privileges are granted, yet retains the initial PrivilegedUsers list upon login, but I just tested it by gifting a few days to a couple clients and nothing is sent to the recipient or anyone else.
It still seems odd to me that the server doesn't bother sending a message to notify everyone when new privileges are granted, yet retains the initial PrivilegedUsers list upon login.
It's strange indeed. I can see why AddToPrivileged was deprecated, as it doesn't provide a way of notifying clients of expired privileges. I'm assuming 122, 124 and 125 were mostly failed experiments that were eventually embedded into the AddUser watch system.
I ended up sending a GetUserStatus message in addition to AddUser when watching a user. This way, I can be informed of the user's privilege status even if their privileges were granted after the initial PrivilegedUsers list was received, The server should automatically send GetUserStatus updates in the future.
SoulseekQt also seems to send a AddUser/GetUserStatus combo when watching users.