ClientXMPP#

class slixmpp.clientxmpp.ClientXMPP(jid, password, plugin_config=None, plugin_whitelist=None, escape_quotes=True, sasl_mech=None, lang='en', **kwargs)[source]#

Slixmpp’s client class. (Use only for good, not for evil.)

Typical use pattern:

xmpp = ClientXMPP('user@server.tld/resource', 'password')
# ... Register plugins and event handlers ...
xmpp.connect()
xmpp.process(block=False) # block=True will block the current
                          # thread. By default, block=False
Parameters
  • jid (Union[str, JID]) – The JID of the XMPP user account.

  • password (str) – The password for the XMPP user account.

  • plugin_config – A dictionary of plugin configurations.

  • plugin_whitelist – A list of approved plugins that will be loaded when calling register_plugins().

  • escape_quotesDeprecated.

connect(address=None, use_ssl=False, force_starttls=True, disable_starttls=False)[source]#

Connect to the XMPP server.

When no address is given, a SRV lookup for the server will be attempted. If that fails, the server user in the JID will be used.

Parameters
  • address (Optional[Tuple[str, int]]) – A tuple containing the server’s host and port.

  • force_starttls (bool) – Indicates that negotiation should be aborted if the server does not advertise support for STARTTLS. Defaults to True.

  • disable_starttls (bool) – Disables TLS for the connection. Defaults to False.

  • use_ssl (bool) – Indicates if the older SSL connection method should be used. Defaults to False.

Return type

None

del_roster_item(jid)[source]#

Remove an item from the roster.

This is done by setting its subscription status to 'remove'.

Parameters

jid – The JID of the item to remove.

get_roster(callback=None, timeout=None, timeout_callback=None)[source]#

Request the roster from the server.

Parameters

callback – Reference to a stream handler function. Will be executed when the roster is received.

register_feature(name, handler, restart=False, order=5000)[source]#

Register a stream feature handler.

Parameters
  • name (str) – The name of the stream feature.

  • handler (Callable) – The function to execute if the feature is received.

  • restart (bool) – Indicates if feature processing should halt with this feature. Defaults to False.

  • order (int) – The relative ordering in which the feature should be negotiated. Lower values will be attempted earlier when available.

Return type

None

update_roster(jid, **kwargs)[source]#

Add or change a roster item.

Parameters
  • jid (JID) – The JID of the entry to modify.

  • name – The user’s nickname for this JID.

  • subscription – The subscription status. May be one of 'to', 'from', 'both', or 'none'. If set to 'remove', the entry will be deleted.

  • groups – The roster groups that contain this item.

  • timeout – The length of time (in seconds) to wait for a response before continuing if blocking is used. Defaults to response_timeout.

  • callback – Optional reference to a stream handler function. Will be executed when the roster is received. Implies block=False.

Return type

None