Package nbxmpp :: Module transports_nb |
[hide private]
[frames] | no frames]

# Module transports_nb

source code

Transports are objects responsible for connecting to XMPP server and putting data to wrapped sockets in in desired form (SSL, TLS, TCP, for HTTP proxy, for SOCKS5 proxy...)

Transports are not aware of XMPP stanzas and only responsible for low-level connection handling.

Classes | [hide private]
| NonBlockingTransport Abstract class representing a transport
| NonBlockingTCP Non-blocking TCP socket wrapper
| NonBlockingHTTP Socket wrapper that creates HTTP message out of sent data and peels-off HTTP headers from incoming messages
| NonBlockingHTTPBOSH Class for BOSH HTTP connections. Slightly redefines HTTP transport by calling bosh bodytag generating callback before putting data on wire

Functions | [hide private]
urisplit(uri) Function for splitting URI string to tuple (protocol, host, port, path). e.g. urisplit('http://httpcm.jabber.org:123/webclient') returns ('http', 'httpcm.jabber.org', 123, '/webclient') return 443 as default port if proto is https else 80 | source code
get_proxy_data_from_dict(proxy) | source code

Variables | [hide private]
| log = `logging.getLogger('nbxmpp.transports_nb')`
| CONNECT_TIMEOUT_SECONDS = `30` timeout to connect to the server socket, it doesn't include auth
| DISCONNECT_TIMEOUT_SECONDS = `5` how long to wait for a disconnect to complete
| RECV_BUFSIZE = `32768` size of the buffer which reads data from server
| DATA_RECEIVED = ``'``DATA RECEIVED``'``
| DATA_SENT = ``'``DATA SENT``'``
| DATA_ERROR = ``'``DATA ERROR``'``
| DISCONNECTED = ``'``DISCONNECTED``'``
| DISCONNECTING = ``'``DISCONNECTING``'``
| CONNECTING = ``'``CONNECTING``'``
| PROXY_CONNECTING = ``'``PROXY_CONNECTING``'``
| CONNECTED = ``'``CONNECTED``'``
| STATES = ``(``'``DISCONNECTED``'``,` `'``CONNECTING``'``,` `'``PROXY_CONNECTING``'``,` `'``C``...``
| __package__ = ``'``nbxmpp``'``

Imports: ustr, PlugIn, IdleObject, proxy_connectors, tls_nb, socket, errno, time, traceback, base64, urlparse, logging

Function Details | [hide private]

### urisplit(uri) | source code
Function for splitting URI string to tuple (protocol, host, port, path). e.g. urisplit('http://httpcm.jabber.org:123/webclient') returns ('http', 'httpcm.jabber.org', 123, '/webclient') return 443 as default port if proto is https else 80

### get_proxy_data_from_dict(proxy) | source code

Variables Details | [hide private]

  ### log Value:
      logging.getLogger('nbxmpp.transports_nb')

  ### CONNECT_TIMEOUT_SECONDS timeout to connect to the server socket, it doesn't include auth Value:
      30

  ### DISCONNECT_TIMEOUT_SECONDS how long to wait for a disconnect to complete Value:
      5

  ### RECV_BUFSIZE size of the buffer which reads data from server Value:
      32768

  ### DATA_RECEIVED Value:
      'DATA RECEIVED'

  ### DATA_SENT Value:
      'DATA SENT'

  ### DATA_ERROR Value:
      'DATA ERROR'

  ### DISCONNECTED Value:
      'DISCONNECTED'

  ### DISCONNECTING Value:
      'DISCONNECTING'

  ### CONNECTING Value:
      'CONNECTING'

  ### PROXY_CONNECTING Value:
      'PROXY_CONNECTING'

  ### CONNECTED Value:
      'CONNECTED'

  ### STATES Value:
      ('DISCONNECTED',
       'CONNECTING',
       'PROXY_CONNECTING',
       'CONNECTED',
       'DISCONNECTING')

  ### __package__ Value:
      'nbxmpp'