IQ response tracker interface.
The XMPP stanza iq has a request-response nature that fits naturally with deferreds. You send out a request and when the response comes back a deferred is fired.
twisted.words.protocols.jabber.client.IQ class implements a send method that returns a deferred. This deferred is put in a dictionary that is kept in an
XmlStream object, keyed by the request stanzas id attribute.
An object providing this interface (usually an instance of
XmlStream), keeps the said dictionary and sets observers on the iq stanzas of type result and error and lets the callback fire the associated deferred.
|Dictionary of deferreds waiting for an iq response