IQ, these special messages

Hi there, I just started using smack APIs and I already made an xmpp chat. Problem is with iq packets, in particular I have a couple of questions:

1)When I login to server according to packet listener I receive an IQ packet with no body, from myself to myself. I can’t understand what is for , but the real problem is that, looking at the debugger, I actually get THREE IQ packets whom mine is the last one : why do the packet listener only notices the third one?

2)I dunno how to process IQ packets…they aren’t all the same: openfire sends me some kind of IQ, a public xmpp server some other kind, a packet has a certain child element, other packets haven’t, some IQ always have the “type” attribute in root element…do smack library have any better mechanisms to handle IQ packets?

3)I need to make a game using xmpp and I’ll have to define my own IQ packets, how can I do this?

Thanks in advance, even if you can answer to just one of the questions is a big help for me!