#include <vcardmanager.h>
Inherits IqHandler.
Inheritance diagram for VCardManager:


Public Member Functions | |
| VCardManager (ClientBase *parent, Disco *disco) | |
| virtual | ~VCardManager () |
| void | fetchVCard (const JID &jid, VCardHandler *vch) |
| void | storeVCard (const VCard *vcard, VCardHandler *vch) |
| virtual bool | handleIq (Stanza *stanza) |
| virtual bool | handleIqID (Stanza *stanza, int context) |
You need only one VCardManager per Client/ClientBase.
class MyClass : public VCardHandler { public: MyClass() { m_myClass = new MyClass(); m_vcardManager = new VCardManager( m_client, m_client->disco() ); }; ... void fetchVCard( const JID& jid ) { m_vcardManager->fetchVCard( jid, this ); }; virtual void handleVCard( const JID& jid, const VCard *vcard ); { printf( "received vcard\n" ); }; virtual void handleVCardResult( VCardContext context, const JID& jid, StanzaError se ) { printf( "vcard operation result received\n" ); }; ... private: VCardManager *m_vcardManager; };
void storeMyVCard() { VCard *v = new VCard(); v->setFormattedname( "Me" ); v->setNickname( "Myself" ); ... m_vcardManager->storeVCard( v, this ); };
This implementation supports more than one address, address label, email address and telephone number.
Definition at line 99 of file vcardmanager.h.
| VCardManager | ( | ClientBase * | parent, | |
| Disco * | disco | |||
| ) |
Constructor.
Definition at line 23 of file vcardmanager.cpp.
| ~VCardManager | ( | ) | [virtual] |
Virtual destructor.
Definition at line 33 of file vcardmanager.cpp.
| void fetchVCard | ( | const JID & | jid, | |
| VCardHandler * | vch | |||
| ) |
Use this function to fetch the VCard of a remote entity or yourself. The result will be announced by calling handleVCard() the VCardHandler.
| jid | The entity's JID. | |
| vch | The VCardHandler that will receive the result of the VCard fetch. |
Definition at line 39 of file vcardmanager.cpp.
| bool handleIq | ( | Stanza * | stanza | ) | [virtual] |
Reimplement this function if you want to be notified about incoming IQs.
| stanza | The complete Stanza. |
Implements IqHandler.
Definition at line 77 of file vcardmanager.cpp.
| bool handleIqID | ( | Stanza * | stanza, | |
| int | context | |||
| ) | [virtual] |
Reimplement this function if you want to be notified about incoming IQs with a specific value of the id attribute. You have to enable tracking of those IDs using Client::trackID(). This is usually useful for IDs that generate a positive reply, i.e. <iq type='result' id='reg'/> where a namespace filter wouldn't work.
| stanza | The complete Stanza. | |
| context | A value to restore context, stored with ClientBase::trackID(). |
Implements IqHandler.
Definition at line 82 of file vcardmanager.cpp.
| void storeVCard | ( | const VCard * | vcard, | |
| VCardHandler * | vch | |||
| ) |
Use this function to store or update your own VCard on the server. Remember to always send a full VCard, not a delta of changes. If you, for any reason, pass a foreign VCard to this function, your own will be overwritten.
| vcard | Your VCard to store. | |
| vch | The VCardHandler that will receive the result of the VCard store. |
Definition at line 61 of file vcardmanager.cpp.
1.4.7