#include <rosterlistener.h>
Public Types | |
typedef std::map< const std::string, RosterItem * > | Roster |
Public Member Functions | |
virtual | ~RosterListener () |
virtual void | itemAdded (const std::string &jid)=0 |
virtual void | itemSubscribed (const std::string &jid)=0 |
virtual void | itemRemoved (const std::string &jid)=0 |
virtual void | itemUpdated (const std::string &jid)=0 |
virtual void | itemUnsubscribed (const std::string &jid)=0 |
virtual void | roster (Roster &roster)=0 |
virtual void | itemChanged (RosterItem &item, int status, const std::string &msg)=0 |
virtual void | itemAvailable (RosterItem &item, const std::string &msg)=0 |
virtual void | itemUnavailable (RosterItem &item, const std::string &msg)=0 |
virtual bool | subscriptionRequest (const std::string &jid, const std::string &msg)=0 |
virtual bool | unsubscriptionRequest (const std::string &jid, const std::string &msg)=0 |
A class implementing this interface and being registered as RosterListener with the Roster object receives notifications about all the changes in the server-side roster. Only one RosterListener per Roster at a time is possible.
Definition at line 33 of file rosterlistener.h.
|
A map of JID/RosterItem pairs. Definition at line 40 of file rosterlistener.h. |
|
Virtual Destructor. Definition at line 45 of file rosterlistener.h. |
|
Reimplement this function if you want to be notified about new items on the server-side roster (items subject to a so-called Roster Push). This function will be called regardless who added the item, either this resource or another. However, it will not be called for JIDs for which presence is received without them being on the roster.
|
|
This function is called whenever a roster item comes online (is available). However, it will not be called for status changes form Away (or any other status which is not Unavailable) to Available.
Referenced by RosterManager::handlePresence(). |
|
This function is called on every status change of an item in the roster.
Referenced by RosterManager::handlePresence(). |
|
Reimplement this function if you want to be notified about items that were removed from the server-side roster (items subject to a so-called Roster Push). This function will be called regardless who deleted the item, either this resource or another.
|
|
Reimplement this function if you want to be notified about items which authorised subscription.
|
|
This function is called whenever a roster item goes offline (is unavailable).
Referenced by RosterManager::handlePresence(). |
|
Reimplement this function if you want to be notified about items which removed subscription authorization.
|
|
Reimplement this function if you want to be notified about items that were modified on the server-side roster (items subject to a so-called Roster Push). A roster push is initiated if a second resource of this JID modifies an item stored on the server-side contact list. This can include modifying the item's name, its groups, or the subscription status. These changes are pushed by the server to all connected resources. This is why this function will be called if you modify a roster item locally and synchronize it with teh server.
|
|
Reimplement this function if you want to receive the whole server-side roster on the initial roster push. After successful authentication, RosterManager asks the server for the full server-side roster. Invocation of this method announces its arrival. Roster item status is set to 'unavailable' until incoming presence info updates it. A full roster push only happens once per connection.
Referenced by RosterManager::handleIq(). |
|
This function is called when an entity wishes to subscribe to this entity's presence. If the handler is registered as a asynchronous handler for subscription requests, the return value of this function is ignored. In async mode, you should use RosterManager::ackSubscriptionRequest() to answer the request.
Referenced by RosterManager::handleSubscription(). |
|
This function is called when an entity unsubscribes from this entity's presence. If the handler is registered as a asynchronous handler for subscription requests, the return value of this function is ignored. In async mode, you should use RosterManager::unsubscribe() if you want to unsubscribe yourself from the contct's presence and to remove the contact from the roster.
|