'Process any uncaught exceptions, notably
:class:`~sleekxmpp.exceptions.IqError` and
:class:`~sleekxmpp.exceptions.IqTimeout` exceptions.
:param exception: An unhandled :class:`Exception` object.'

def exception(self, exception):

    if isinstance(exception, IqError):
        iq = exception.iq
        log.error(u'%s:    %s', iq[u'error'][u'condition'], iq[u'error'][u'text'])
        log.warning(u'You    should    catch    IqError    exceptions')
    elif isinstance(exception, IqTimeout):
        iq = exception.iq
        log.error(u'Request    timed    out:    %s', iq)
        log.warning(u'You    should    catch    IqTimeout    exceptions')
    elif isinstance(exception, SyntaxError):
        pass
    else:
        log.exception(exception)
