Mxit

Mxit Transport

class vumi.transports.mxit.mxit.MxitTransport(options, config=None)

Bases: vumi.transports.httprpc.httprpc.HttpRpcTransport

HTTP Transport for MXit, implemented using the MXit Mobi Portal (for inbound messages and replies) and the Messaging API (for sends that aren’t replies).

CONFIG_CLASS

alias of MxitTransportConfig

html_decode(html)

Turns ‘&lt;b&gt;foo&lt;/b&gt;’ into u’<b>foo</b>’

class vumi.transports.mxit.mxit.MxitTransportConfig(config_data, static=False)

Bases: vumi.transports.httprpc.httprpc.HttpRpcTransportConfig

Configuration options:

Parameters:
  • amqp_prefetch_count (int) – The number of messages fetched concurrently from each AMQP queue by each worker instance.
  • transport_name (str) – The name this transport instance will use to create its queues.
  • publish_status (bool) – Whether status messages should be published by the transport
  • web_path (str) – The path to listen for requests on.
  • web_port (int) – The port to listen for requests on, defaults to 0.
  • web_username (str) – The username to require callers to authenticate with. If None then no authentication is required. Currently only HTTP Basic authentication is supported.
  • web_password (str) – The password to go with web_username. Must be None if and only if web_username is None.
  • web_auth_domain (str) – The name of authentication domain.
  • health_path (str) – The path to listen for downstream health checks on (useful with HAProxy)
  • request_cleanup_interval (int) – How often should we actively look for old connections that should manually be timed out. Anything less than 1 disables the request cleanup meaning that all request objects will be kept in memory until the server is restarted, regardless if the remote side has dropped the connection or not. Defaults to 5 seconds.
  • request_timeout (int) – How long should we wait for the remote side generating the response for this synchronous operation to come back. Any connection that has waited longer than request_timeout seconds will manually be closed. Defaults to 4 minutes.
  • request_timeout_status_code (int) – What HTTP status code should be generated when a timeout occurs. Defaults to 504 Gateway Timeout.
  • request_timeout_body (str) – What HTTP body should be returned when a timeout occurs. Defaults to ‘’.
  • noisy (bool) – Defaults to False set to True to make this transport log verbosely.
  • validation_mode (str) – The mode to operate in. Can be ‘strict’ or ‘permissive’. If ‘strict’ then any parameter received that is not listed in EXPECTED_FIELDS nor in IGNORED_FIELDS will raise an error. If ‘permissive’ then no error is raised as long as all the EXPECTED_FIELDS are present.
  • response_time_down (float) – The maximum time allowed for a response before the service is considered down
  • response_time_degraded (float) – The maximum time allowed for a response before the service is considered degraded
  • client_id (str) – The OAuth2 ClientID assigned to this transport.
  • client_secret (str) – The OAuth2 ClientSecret assigned to this transport.
  • timeout (int) – Timeout for outbound Mxit HTTP API calls.
  • redis_manager (dict) – How to connect to Redis
  • api_send_url (str) – The URL for the Mxit message sending API.
  • api_auth_url (str) – The URL for the Mxit authentication API.
  • api_auth_scopes (list) – The list of scopes to request access to.
exception vumi.transports.mxit.mxit.MxitTransportException

Bases: exceptions.Exception

Raised when the Mxit API returns an error