Обьясните что происходит

В 7 утра активируется некий скрипт, который в мое виртуально устройство начинает писать данные. Причем эти данные не совпадают с тем, что реально есть в топиках mqtt. В логах вот это

01-08-2023 07:00:50.871 [wb-mqtt-db.service]	ERROR: [driver] Failed to accept value "1" on control "master_wc_leak" of device "leak_detect": Control "master_wc_leak" of device "leak_detect" was deleted @ wblib/control.cpp:591
01-08-2023 07:00:50.870 [wb-mqtt-db.service]	ERROR: [driver] Failed to accept value "0" on control "kitchen_leak" of device "leak_detect": Control "kitchen_leak" of device "leak_detect" was deleted @ wblib/control.cpp:591
01-08-2023 07:00:50.870 [wb-mqtt-db.service]	ERROR: [driver] Failed to accept value "0" on control "kitchen_leak" of device "leak_detect": Control "kitchen_leak" of device "leak_detect" was deleted @ wblib/control.cpp:591
01-08-2023 07:00:50.869 [wb-mqtt-db.service]	ERROR: [driver] Failed to accept value "0" on control "guest_wc_leak" of device "leak_detect": Control "guest_wc_leak" of device "leak_detect" was deleted @ wblib/control.cpp:591
01-08-2023 07:00:50.857 [wb-mqtt-db.service]	ERROR: [driver] Failed to accept value "0" on control "children_wc_leak" of device "leak_detect": Control "children_wc_leak" of device "leak_detect" was deleted @ wblib/control.cpp:591
01-08-2023 07:00:50.852 [wb-mqtt-db.service]	ERROR: [driver] Failed to accept value "0" on control "alarm" of device "leak_detect": Control "alarm" of device "leak_detect" was deleted @ wblib/control.cpp:591
01-08-2023 07:00:50.852 [wb-mqtt-db.service]	WARNING: [conventions] converting empty value to boolean "false"
01-08-2023 07:00:50.852 [wb-mqtt-db.service]	WARNING: [conventions] converting empty value to boolean "false"
01-08-2023 07:00:50.852 [wb-mqtt-db.service]	WARNING: [conventions] converting empty value to boolean "false"
01-08-2023 07:00:50.831 [wb-mqtt-db.service]	WARNING: [conventions] converting empty value to boolean "false"
01-08-2023 07:00:50.831 [wb-mqtt-db.service]	WARNING: [conventions] converting empty value to boolean "false"
01-08-2023 07:00:50.831 [wb-mqtt-db.service]	WARNING: [conventions] converting empty value to boolean "false"
01-08-2023 07:00:50.831 [wb-mqtt-db.service]	WARNING: [conventions] converting empty value to boolean "false"

При этом состояние топика control “master_wc_leak” of device “leak_detect” является false. Я сам его туда пихаю - и триггером через веб интерфейс, и напрямую в мктт уже который день. Но в 7 утра ваше скрипт упорно перезаписывает его в единицу.
Единственное правило, которое может менять этот топик из созданных мной - срабатывает в случае алярма системы защиты от протечек, и логирует каждое свое действие. И сработки этого правила точно не было - в логах чисто.
Вопрос - откуда берется эта единица и что за самодеятельность?

Здравствуйте.
Постараемся определить в чем проблема.
Пришлите, пожалуйста, диагностический архив. И файл вашего виртуального устройства, а также правило, которое может менять этот топик.

Эту проблему решил, заменив название виртуального девайса на “leak_detect_1”, предварительно удалив старый из mqtt.

Здравствуйте.
Т.е. по сути вы пересохранили виртуальное устройство только с другим именем, удалив предыдущее, и проблема ушла?
Остались ли у вас еще вопросы по заявленной теме?

Ну, конкретно у меня проблема ушла, но это решение чет такое себе. Ведь фактически мы имеем системный скрипт, который запускался по крону в 7 утра и писал в мктт то, чего там быть не должно. Но да, вопрос решен.

Пришлите, пожалуйста, файл настройки cron’а.

я без малейшего понятия что это и где оно лежит. Но судя по логам в 7 утра у вас запускается куча процедур обслуживания

Здравствуйте!

В нашем софте нет запланированных задач, которые могут что-то писать в MQTT.

Поэтому остаются: скрипты пользователя, задания в cron, сторонний софт.

Если проблема повторится, создайте, пожалуйста, новую тему и пришлите сразу:

  1. Диагностический архив.
  2. Логи за пару часов до срабатывания и за пару часов после.
  3. Архив с вашими скриптами.
  4. Вывод команды crontab -l.

Эту тему я закрываю.

1 лайк

Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.