Довольно интересно. Дайте текстом результаты mosquitto_sub для всех “Fibaro” устройств, попробую воспроизвести.
root@wirenboard-A5JDMSJV:~# mosquitto_sub -t ‘/devices/z-way/#’ -v
/devices/z-way/connected 2
/devices/z-way/meta/name Z-Wave
/devices/z-way/controls/Send Email Notification 11 on
/devices/z-way/controls/Send Email Notification 11/meta/z-wave_type toggleButton
/devices/z-way/controls/Send Email Notification 11/meta/type text
/devices/z-way/controls/Battery Polling 6/meta/z-wave_type battery
/devices/z-way/controls/Battery Polling 6/meta/type text
/devices/z-way/controls/Dear Expert User Int/meta/z-wave_type text
/devices/z-way/controls/Dear Expert User Int/meta/type text
/devices/z-way/controls/Cloud Backup Instructions Int/meta/z-wave_type text
/devices/z-way/controls/Cloud Backup Instructions Int/meta/type text
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1 26
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/z-wave_type sensorMultilevel
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/type value
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/units °C
/devices/z-way/controls/Fibaro Water Alarm (2) 2-0-113-5-2-A 0
/devices/z-way/controls/Fibaro Water Alarm (2) 2-0-113-5-2-A/meta/z-wave_type sensorBinary
/devices/z-way/controls/Fibaro Water Alarm (2) 2-0-113-5-2-A/meta/type value
/devices/z-way/controls/Fibaro Burglar Alarm (2) 2-0-113-7-3-A 0
/devices/z-way/controls/Fibaro Temperature (3) 3-0-49-1 25.6299984
/devices/z-way/controls/Fibaro Burglar Alarm (3) 3-0-113-7-3-A 0
/devices/z-way/controls/Fibaro Water Alarm (3) 3-0-113-5-2-A 0
По выводу вижу, что у устройства Fibaro Water (2) есть топики .../meta/type value
, тогда как у Fibaro Water (3) их нет. Из-за этого они могут не отображаться в веб-интерфейсе.
Просто , если я добавляю это устройство(Fibaro Water (3)) первым , то оно отображается в веб-интерфейсе, но тогда не отображается (Fibaro Water (2))
В общем, веб-интерфейсе отображается только устройство , которое добавлялось первым
Как возможно решить это проблему?
Попробуйте дать разные имена устройствам в настройках, возможно тут есть конфликт.
Изменение имени не помогает , у меня также есть устройство другого производителя(Philio Technology) , оно также отображается в консоли, но не отображается на веб-интерфейсе
root@wirenboard-A5JDMSJV:~# mosquitto_sub -t ‘/devices/z-way/#’ -v
/devices/z-way/connected 2
/devices/z-way/meta/name Z-Wave
/devices/z-way/controls/Send Email Notification 11 on
/devices/z-way/controls/Send Email Notification 11/meta/z-wave_type toggleButton
/devices/z-way/controls/Send Email Notification 11/meta/type text
/devices/z-way/controls/Battery Polling 6/meta/z-wave_type battery
/devices/z-way/controls/Battery Polling 6/meta/type text
/devices/z-way/controls/Dear Expert User Int/meta/z-wave_type text
/devices/z-way/controls/Dear Expert User Int/meta/type text
/devices/z-way/controls/Cloud Backup Instructions Int/meta/z-wave_type text
/devices/z-way/controls/Cloud Backup Instructions Int/meta/type text
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1 23.84
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/z-wave_type sensorMultilevel
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/type value
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/units °C
/devices/z-way/controls/Fibaro Water Alarm (2) 2-0-113-5-2-A/meta/z-wave_type sensorBinary
/devices/z-way/controls/Fibaro Water Alarm (2) 2-0-113-5-2-A/meta/type value
/devices/z-way/controls/Fibaro Burglar Alarm (2) 2-0-113-7-3-A 0
/devices/z-way/controls/Philio Technology Corp Water Alarm (5) 5-0-113-5-2-A 0
/devices/z-way/controls/test_three (7) 7-0-113-7-3-A 0
/devices/z-way/controls/test_two (7) 7-0-113-5-2-A 0
Какая аппаратная версия контроллера Wirenboard у вас? Пришлите, пожалуйста, скриншот окна System со страницы Devices.
Какая версия пакета z-way-server
? Посмотреть версии всех пакетов можно так:
dpkg -l
Вывод команды пришлите отдельным файлом.
Пока причину установить не получается. В качестве быстрого решения можно создать правило, в котором вручную будут публиковаться необходимые для отображения в веб-интерфейсе топики, например, так:
runShellCommand("mosquitto_pub -t \"/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/type\" -m value");
runShellCommand("mosquitto_pub -t \"/devices/z-way/controls/Fibaro Temperature (3) 3-0-49-1/meta/type\" -m value");
runShellCommand("mosquitto_pub -t \"/devices/z-way/controls/Philio Technology Corp Water Alarm (5) 5-0-113-5-2-A/meta/type\" -m value");
Добрый день, вручную все добавляется но после перезагрузки контроллера все опять пропадает и восстанавливается назад , если только пересохранить правило
Советую выполнить правило с задержкой времени, так:
Эти варианты не помогают, после перезагрузки страницы веб-интерфейса или перезагрузки контроллера , устройства которые добавляются через правила пропадают
Как возможно решить эту проблему и в связи с чем она может появляться?
Так… Покажите топики устройства по mosquitto_sub
- до добавления /meta/type
- После добавления
- после перезагрузки страницы.
И не отображается?
Попробуйте опубликовать как retained значение, ключ --retain
При использовании " -m value " отображается , но после обновления страницы опять пропадает, а при использовании " --retain " ничего не отображается
–retain не меняет параметр, это дополнительный.
Так?
runShellCommand(“mosquitto_pub -t “/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/type” -m value –retain” );
Попробовал все предложенные варианты , проблема все также сохраняется
Эта команда не совсем верная, при использовании runShellCommand нужно экранирование кавычек обратным слешем "".
Делаю так. В правиле создаю топик с флагом “retain”:
runShellCommand("mosquitto_pub --retain -t \"/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/type\" -m value");
Проверяю, что топик создан, значение в веб-интерфейсе отображается:
root@wirenboard-ATHXPBSP:~# mosquitto_sub -v -t /devices/z-way/#
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1 24.5
/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/type value
Затем перезагружаю сначала страницу устройств - значение отображается, перезагружаю контроллер, снова проверяю - топики все на месте, значение в веб-интерфейсе отображается.
Также публиковать топики можно командой publish
:
publish("/devices/z-way/controls/Fibaro Temperature (2) 2-0-49-1/meta/type", "value", 2, true);