Spec-Zone.ru › Ansible

Модуль community.general.mqtt – Публикация сообщения на MQTT-тему для IoT

Примечание

Этот модуль является частью коллекции community.general (версия 9.5.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить её установку, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install community.general. Для использования этого модуля требуются дополнительные зависимости, см. Требования для подробностей.

Для использования его в книге задач, укажите: community.general.mqtt.

  • Описание
  • Требования
  • Параметры
  • Атрибуты
  • Примечания
  • Примеры

Описание

  • Опубликовать сообщение на MQTT-тему.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • mosquitto

Параметры

Параметр

Комментарии

ca_cert

aliases: ca_certs

путь

Путь к файлам сертификата Центра сертификации, которые должны рассматриваться этим клиентом как доверенные. Если это единственный заданный параметр, клиент будет работать аналогично веб-браузеру. То есть он будет требовать, чтобы у брокера был сертификат, подписанный центрами сертификации в ca_certs, и будет использовать TLS v1 для связи, но не будет пытаться выполнить какую-либо аутентификацию. Это обеспечивает базовую шифрование сети, но может быть недостаточно в зависимости от настроек брокера.

client_cert

aliases: certfile

путь

Путь к PEM-кодированному сертификату клиента. Если это не None, он будет использоваться как информация о клиенте для аутентификации TLS. Поддержка этой функции зависит от брокера.

client_id

строка

Идентификатор MQTT-клиента

Если не указано, будет использовано значение hostname + pid.

client_key

aliases: keyfile

путь

Путь к PEM-кодированному закрытому ключу клиента. Если это не None, он будет использоваться как информация о клиенте для аутентификации TLS. Поддержка этой функции зависит от брокера.

password

строка

Пароль для username аутентификации у брокера.

payload

строка / обязательно

Полезная нагрузка. Специальная строка "None" может быть использована для отправки пустой полезной нагрузки (NULL), что полезно для простого уведомления с помощью topic или для очистки ранее сохранённых сообщений.

port

целое число

Номер порта MQTT-брокера

По умолчанию: 1883

qos

строка

QoS (Качество обслуживания)

Варианты:

  • "0" ← (по умолчанию)
  • "1"
  • "2"

retain

логическое значение

Установка этого флага заставляет брокер сохранять (т. е. хранить) сообщение, чтобы приложения, которые впоследствии подпишутся на тему, могли получить последнее сохранённое сообщение немедленно.

Варианты:

  • false ← (по умолчанию)
  • true

server

строка

Адрес/имя MQTT-брокера

По умолчанию: "localhost"

tls_version

строка

Указывает версию протокола SSL/TLS, который будет использоваться.

По умолчанию (если версия Python её поддерживает) определяется самая высокая версия TLS. Если недоступна, используется TLS v1.

Варианты:

  • "tlsv1.1"
  • "tlsv1.2"

topic

строка / обязательно

Имя MQTT-темы

username

строка

Имя пользователя для аутентификации у брокера.

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогноз состояния изменения без изменения целевого объекта.

diff_mode

Поддержка: отсутствует

Вернёт подробности о том, что изменилось (или, возможно, нуждается в изменении в check_mode), когда используется режим diff.

Примечания

Примечание

  • Для работы с этим модулем необходимо подключение к MQTT-брокеру, например, Mosquitto http://mosquitto.org, и клиент Python Paho mqtt (https://pypi.org/project/paho-mqtt/).
END_OF_DOCUMENT_MARKER

Примеры

- name: Publish a message on an MQTT topic
  community.general.mqtt:
    topic: 'service/ansible/{{ ansible_hostname }}'
    payload: 'Hello at {{ ansible_date_time.iso8601 }}'
    qos: 0
    retain: false
    client_id: ans001
  delegate_to: localhost

Авторы

  • Jan-Piet Mens (@jpmens)

Ссылки на сборник

  • Отслеживание проблем
  • Репозиторий (источники)
  • Задать вопрос
  • Отправить отчет об ошибке
  • Запросить функцию
  • Общение

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/mqtt_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API