This page describes the interserver protocol currently used for bidirectionally subscribing to the presence of a user.
It will be merged into the more generic Subscription protocol in the future. Client developers please use the _request_do_friend command instead of this. See also Presence.
Contents |
1 Establishing a friendship
The equivalent group communication action is a bidirectional permanent membership. It looks similar to the process of entering a group but is something different. For example a group enter requires tagging, these subscriptions do not, as the subscription state is stored by the UNI.
psyc://host1/~user seeks to establish a friendship with psyc://host2/~anotheruser :
:_source psyc://host1/~user :_target psyc://host2/~anotheruser :_nick user _request_friendship .
und natürlich muss sich die UNI von ~user merken, dass sie dem die Freundschaft angeboten hat (subscription state -> 'offered')
If psyc://host2/~anotheruser decides to accept the request, he will send back a
:_source psyc://host2/~anotheruser :_target psyc://host1/~user :_nick user _notice_friendship_established .
das ganze hat nur dann auswirkungen, wenn der subscription state auch 'offered' oder höher ist.
2 Cancelling a friendship
:_source psyc://host2/~anotheruser :_target psyc://host1/~user :_nick user _notice_friendship_removed .
In return, anotheruser sends
:_source psyc://host2/~anotheruser :_target psyc://host1/~user :_nick anotheruser _notice_friendship_removed_implied .
wieso issn das kein _echo_friendship_removed_implied
3 multicasted presence announcements
See presence.
4 shouting to your friends
See friendcast.