docs: function request (command, body, expectedResponseType, canHandleStanzaPredicate) {
    debug('request with command "' + command + '" with body ' + body)
  
    var deferred = Q.defer()
    var iq = buildCommandIqStanza(command, body)
    var id = iq.attr('id')
  
    expectedResponseType = expectedResponseType || 'encoded'
    canHandleStanzaPredicate = canHandleStanzaPredicate || defaultCanHandleStanzaPredicate.bind(null, id)
  
    this._responseHandlerQueue.push({
      canHandleStanza: canHandleStanzaPredicate,		 deferred: deferred,		 responseType: expectedResponseType
    })
  
    this._xmppClient.send(iq)
  
    return deferred.promise
  }