onadata.apps.messaging.backends package¶
Submodules¶
onadata.apps.messaging.backends.base module¶
Messaging notification base module.
- class onadata.apps.messaging.backends.base.BaseBackend(options=None)¶
Bases:
object
Base class for notification backends
- send(instance)¶
This method actually sends the message
- onadata.apps.messaging.backends.base.call_backend(backend, instance_id, backend_options=None)¶
Call notification backends like MQTT to send messages
onadata.apps.messaging.backends.mqtt module¶
Messaging notification backend for MQTT
- class onadata.apps.messaging.backends.mqtt.MQTTBackend(options=None)¶
Bases:
BaseBackend
Notification backend for MQTT
- get_topic(instance)¶
Constructs the message topic
- For sending messages it should look like:
/onadata/xform/[pk or uuid]/[verb]/messages/publish /onadata/projects/[pk or uuid]/[verb]/messages/publish /onadata/users/[pk or uuid]/[verb]/messages/publish
- send(instance)¶
Sends the message to appropriate MQTT topic(s)
- onadata.apps.messaging.backends.mqtt.get_payload(instance, verbose_payload: bool = False)¶
Constructs the message payload
- onadata.apps.messaging.backends.mqtt.get_target_metadata(target_obj)¶
Gets the metadata of a Target object