flexget.components.notify.notifiers.mqtt module#

class flexget.components.notify.notifiers.mqtt.MQTTNotifier[source]#

Bases: object

Send messages via MQTT.

Example:

notify:
  entries:
    via:
      - mqtt:
          broker_address: "iot.eclipse.org"
          topic: "flexget/notifications"
          [broker_port: 1883]
          [broker_timeout: 30]
          [broker_transport: ['tcp','websockets'] ]
          [broker_protocol: ['MQTTv31', 'MQTTv311'] ]
          [username: yourUsernameHere]
          [password: yourPasswordHere]
          [encrypted_communication: True/False]
          [certificates:
              broker_ca_cert: /path/to/pem/encoded/broker_ca_certificate.crt
              client_cert: /path/to/pem/encoded/client_certificate.crt
              client_key: /path/to/pem/encoded/client_certificate.key
              validate_broker_cert: True/False
              tls_version: ['tlsv1.2', 'tlsv1.1', 'tlsv1']
          ]
          [qos: [0,1,2] ]
          [retain: True/False]
notify(title, message, config)[source]#

Publish to an MQTT topic.

schema = {'additionalProperties': False, 'dependentRequired': {'password': ['username']}, 'properties': {'broker_address': {'type': 'string'}, 'broker_port': {'default': 1883, 'type': 'integer'}, 'broker_protocol': {'default': 'MQTTv311', 'enum': ['MQTTv31', 'MQTTv311'], 'type': 'string'}, 'broker_timeout': {'default': 30, 'type': 'integer'}, 'broker_transport': {'default': 'tcp', 'enum': ['tcp', 'websockets'], 'type': 'string'}, 'certificates': {'additionalProperties': False, 'properties': {'broker_ca_cert': {'type': 'string'}, 'client_cert': {'type': 'string'}, 'client_key': {'type': 'string'}, 'tls_version': {'enum': ['tlsv1.2', 'tlsv1.1', 'tlsv1', ''], 'type': 'string'}, 'validate_broker_cert': {'default': True, 'type': 'boolean'}}, 'type': 'object'}, 'encrypted_communication': {'default': False, 'type': 'boolean'}, 'password': {'type': 'string'}, 'qos': {'default': 0, 'maximum': 2, 'minimum': 0, 'type': 'integer'}, 'retain': {'default': False, 'type': 'boolean'}, 'topic': {'type': 'string'}, 'username': {'type': 'string'}}, 'required': ['broker_address', 'topic'], 'type': 'object'}#
flexget.components.notify.notifiers.mqtt.register_plugin()[source]#