я использую. туда траслирую параметры датчиков и состояние выключателей. на телефоне mqtt dash который позволяет взаимодействовать с облаком не подключаясь к vpn домашнего роутера
Что-то я не понял. А вы разве не предлагаете свой облачный сервис заказчикам?
А вы не могли бы рассказать немного про указанные варианты: плюсы и минусы каждого.
Что из этого вы рекомендуете?
SIMP Light SCADA, MasterSCADA - насколько я знаю, у них нет поддержки MQTT-протокола. Почему вы тогда про них пишете? Т. е. нужен еще какой-то шлюз, который будет транслировать данные из MQTT в другой формат?
Помогите пожалуйста получить доступ к WB Cloud.
P.S. Писал эту просьбу в почту 30 октября. Ответа не получил. Будущим пользователям советую учесть скорость реакции компании.
не вижу письма. Напишите пожалуйста снова на support@contactless.ru, обязательно указав серийный номер контроллера.
Добрый день!
Да, извиняюсь, пропустили ваше письмо.
Укажите пожалуйста в описании скрипта https://github.com/contactless/wbmqtt2influx
, что для его запуска требуется указывать параметр топика
Хотя бы “#”.
Не могу найти подходящий способ для автозапуска этого скрипта.
Без параметров ставлю в запуск из /etc/init.d со вставкой
# /etc/init.d/mqtt_to_influxdb.py
### BEGIN INIT INFO
# Provides: mqtt_to_influxdb.py
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time
# Description: Enable service provided by daemon.
### END INIT INFO
А вот как с параметром?
Как сделал я после некоторых мытарств c cron’ом (Debian через systemd). Arcmha5m - имя контроллера, 1 контроллер = 1 скрипт-демон.
/etc/systemd/system/mqtt_arcmha5m.service
[Unit]
Description=manages worker instances as a service
After=multi-user.target
Requires=influxd.service
[Service]
Type=idle
User=root
PIDFile=/var/run/mqtt_arcmha5m.pid
ExecStart=/usr/bin/python3 /usr/local/share/mqtt_to_influxdb.py -h localhost '/client/arcmha5m/#' -u "wirenboard" -P "wirenboard"
Restart=always
TimeoutStartSec=10
RestartSec=10
[Install]
WantedBy=multi-user.target
Alias=mqtt_arcmha5m.service
Далее
sudo systemctl enable mqtt_arcmha5m
sudo systemctl start mqtt_arcmha5m
sudo systemctl daemon-reload
Смотреть запущенный “демонический скрипт” командой:
sudo systemctl -l status mqtt_arcmha5m
Чего-то не хватает?
-
Создал скрипт /etc/systemd/system/mqtt_AV6U5XZP.service
[Unit]
Description=manages worker instances as a service
After=multi-user.target
Requires=influxd.service
[Service]
Type=idle
User=root
PIDFile=/var/run/mqtt_AV6U5XZP.pid
ExecStart=/usr/bin/python3 /usr/local/share/mqtt_to_influxdb.py -h localhost ‘/client/wb_AV6U5XZP/#’ -u “wirenboard” -P “wirenboard”
Restart=always
TimeoutStartSec=10
RestartSec=10
[Install]
WantedBy=multi-user.target
Alias=mqtt_AV6U5XZP.service -
Положил скрипт mqtt_to_influxdb.py в директорию /usr/local/share
-
Установил права на запуск
-
Далее по списку:
ubuntu@ip-172-31-91-79:~$ sudo systemctl enable mqtt_AV6U5XZP
Failed to enable unit: File /etc/systemd/system/mqtt_AV6U5XZP.service already exists.
ubuntu@ip-172-31-91-79:~$ sudo systemctl start mqtt_AV6U5XZP
ubuntu@ip-172-31-91-79:~$ sudo systemctl daemon-reload
ubuntu@ip-172-31-91-79:~$ sudo systemctl -l status mqtt_AV6U5XZP
● mqtt_AV6U5XZP.service - manages worker instances as a service
Loaded: loaded (/etc/systemd/system/mqtt_AV6U5XZP.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Sat 2019-01-26 08:39:14 UTC; 1s ago
Process: 8577 ExecStart=/usr/bin/python3 /usr/local/share/mqtt_to_influxdb.py -h localhost /client/wb_AV6U5XZP/# -u wirenboard -P wirenboard (code=exited, status=
Main PID: 8577 (code=exited, status=1/FAILURE)Jan 26 08:39:14 ip-172-31-91-79 systemd[1]: mqtt_AV6U5XZP.service: Main process exited, code=exited, status=1/FAILURE
Jan 26 08:39:14 ip-172-31-91-79 systemd[1]: mqtt_AV6U5XZP.service: Failed with result ‘exit-code’.
Нужно ли создавать файл PIDFile=/var/run/mqtt_AV6U5XZP.pid?
А сама команда запускается нормально?
Да, запускается нормально!
Тогда у меня идей нет (
pid-файл управляется systemd стандартным для демонов образом.
Может быть есть ссылка на мануал, которым пользовались для реализации такого вызова?
Так как ставил на Amazon, то User=ubuntu.
Теперь - ОК!
Можно ли получить доступ в WB Cloud? Серийный номер контроллера ARQX4RL2, почта в профиле. Спасибо заранее!