Parse custom response for default Roster IQ callback - smack

I have an idea to get the roster with VCard for profile related information.

I have customized the Roster response as like below,

IQ request:

IQ Response:


I can able to get the name and jid from the RosterEntry but not able to get the vCard.

RosterEntry Roster roster = Roster.getInstanceFor(connection); Collection<RosterEntry> entries = roster.getEntries(); for (RosterEntry entry : entries) { System.out.println(entry);//I would like to get the vCard information from here }

Can any one give me the idea about this?

I really recommend not extending Roter’s with additional data not specified in RFC 6121. If you want to link additional data with a given XMPP address, then use an extra IQ for that.