Добрый день!
Проверил Вашу информацию, к сожалению все не так просто и однозначно …
даже с forceDefault: true и lazyInit: true при перезагрузке в mqtt “прилетают” пустые значения,
что воспринимается Интеграцией как событие и соответственно обрабатывается.
вот правило для проверки отладки
defineVirtualDevice("Alice_additions", {
title: "Alice additional Virtual devices",
cells: {
"separator2": {
title: "========== Master_button Action_converter",
type: "text",
value: "==========",
order: 3
},
"Master_button_action_click": {
type: "text",
value: "",
forceDefault: true,
lazyInit: true,
order: 4
},
"Master_button_action_long_press": {
type: "text",
value: "",
forceDefault: true,
lazyInit: true,
order: 5
}
}
});
// ============================================================
// СКРИПТ ПЕРЕЗАГРУЖЕН
// ============================================================
log("=== СКРИПТ ПЕРЕЗАГРУЖЕН: " + new Date().toISOString() + " ===");
// ============================================================
// ОТСЛЕЖИВАНИЕ ИЗМЕНЕНИЙ ПОЛЕЙ
// ============================================================
log("[TRACK] Подписка на Master_button_action_click");
trackMqtt("/devices/Alice_additions/controls/Master_button_action_click", function(msg) {
log("[FULL] Aqara_remote_13_action_click:");
log(" Полный msg: " + JSON.stringify(msg));
log(" msg.value: " + msg.value);
log(" Тип msg.value: " + typeof msg.value);
log(" Время: " + new Date().toISOString());
});
log("[TRACK] Подписка на Master_button_action_long_press");
trackMqtt("/devices/Alice_additions/controls/Master_button_action_long_press", function(msg) {
log("[FULL] Master_button_action_long_press:");
log(" Полный msg: " + JSON.stringify(msg));
log(" msg.value: " + msg.value);
log(" Тип msg.value: " + typeof msg.value);
log(" Время: " + new Date().toISOString());
});
var noReactionFirst_Master_button_Message = true;
trackMqtt("/devices/wb-gpio/controls/W1_IN", function (msg) {
if (noReactionFirst_Master_button_Message) {
noReactionFirst_Master_button_Message = false;
return;
}
if (msg.value === "1") {
dev["Alice_additions/Master_button_action_click"] = "click" ;
} else if (msg.value === "0") {
dev["Alice_additions/Master_button_action_long_press"] = "long_press";
}
});
Что делаем:
сохраняем скрипт
wb-gpio//W1_IN - выключаем
wb-gpio//W1_IN - включаем
wb-gpio//W1_IN - выключаем
wb-gpio//W1_IN - включаем
сохраняем скрипт
Вот логи:
2026-06-22 21:25:11
=== СКРИПТ ПЕРЕЗАГРУЖЕН: 2026-06-22T18:25:12.047Z ===
2026-06-22 21:25:11
[TRACK] Подписка на Master_button_action_click
2026-06-22 21:25:11
[TRACK] Подписка на Master_button_action_long_press
2026-06-22 21:25:26
[FULL] Master_button_action_long_press:
2026-06-22 21:25:26
Полный msg: {"topic":"/devices/Alice_additions/controls/Master_button_action_long_press","value":"long_press"}
2026-06-22 21:25:26
msg.value: long_press
2026-06-22 21:25:26
Тип msg.value: string
2026-06-22 21:25:26
Время: 2026-06-22T18:25:27.786Z
2026-06-22 21:25:26
[FULL] Master_button_action_long_press:
2026-06-22 21:25:26
Полный msg: {"topic":"/devices/Alice_additions/controls/Master_button_action_long_press","value":"long_press"}
2026-06-22 21:25:26
msg.value: long_press
2026-06-22 21:25:26
Тип msg.value: string
2026-06-22 21:25:26
Время: 2026-06-22T18:25:27.804Z
2026-06-22 21:25:30
[FULL] Aqara_remote_13_action_click:
2026-06-22 21:25:30
Полный msg: {"topic":"/devices/Alice_additions/controls/Master_button_action_click","value":"click"}
2026-06-22 21:25:30
msg.value: click
2026-06-22 21:25:30
Тип msg.value: string
2026-06-22 21:25:30
Время: 2026-06-22T18:25:31.380Z
2026-06-22 21:25:30
[FULL] Aqara_remote_13_action_click:
2026-06-22 21:25:30
Полный msg: {"topic":"/devices/Alice_additions/controls/Master_button_action_click","value":"click"}
2026-06-22 21:25:30
msg.value: click
2026-06-22 21:25:30
Тип msg.value: string
2026-06-22 21:25:30
Время: 2026-06-22T18:25:31.389Z
2026-06-22 21:25:33
[FULL] Master_button_action_long_press:
2026-06-22 21:25:34
Полный msg: {"topic":"/devices/Alice_additions/controls/Master_button_action_long_press","value":"long_press"}
2026-06-22 21:25:34
msg.value: long_press
2026-06-22 21:25:34
Тип msg.value: string
2026-06-22 21:25:34
Время: 2026-06-22T18:25:34.862Z
2026-06-22 21:25:36
[FULL] Aqara_remote_13_action_click:
2026-06-22 21:25:36
Полный msg: {"topic":"/devices/Alice_additions/controls/Master_button_action_click","value":"click"}
2026-06-22 21:25:36
msg.value: click
2026-06-22 21:25:36
Тип msg.value: string
2026-06-22 21:25:36
Время: 2026-06-22T18:25:37.625Z
2026-06-22 21:25:42
=== СКРИПТ ПЕРЕЗАГРУЖЕН: 2026-06-22T18:25:42.859Z ===
2026-06-22 21:25:42
[TRACK] Подписка на Master_button_action_click
2026-06-22 21:25:42
[TRACK] Подписка на Master_button_action_long_press
вроде не видим ничего после второго сохранения скрипта
но если посмотреть что происходит в mqtt, например через подписку на топики например в NodeRED, то фактически увидим:
22.06.2026, 21:25:26node: debug 2/devices/Alice_additions/controls/Master_button_action_long_press : msg.payload : string[10]
“long_press”
22.06.2026, 21:25:27node: debug 2/devices/Alice_additions/controls/Master_button_action_long_press : msg.payload : string[10]
“long_press”
22.06.2026, 21:25:30node: debug 1/devices/Alice_additions/controls/Master_button_action_click : msg.payload : string[5]
“click”
22.06.2026, 21:25:31node: debug 1/devices/Alice_additions/controls/Master_button_action_click : msg.payload : string[5]
“click”
22.06.2026, 21:25:34node: debug 2/devices/Alice_additions/controls/Master_button_action_long_press : msg.payload : string[10]
“long_press”
22.06.2026, 21:25:36node: debug 1/devices/Alice_additions/controls/Master_button_action_click : msg.payload : string[5]
“click”
22.06.2026, 21:25:41node: debug 2/devices/Alice_additions/controls/Master_button_action_long_press : msg.payload : string[0]
“”
22.06.2026, 21:25:42node: debug 1/devices/Alice_additions/controls/Master_button_action_click : msg.payload : string[0]
“”
что пришли пустые значения после второй перезагрузке скрипта ,
аналогично можно увидеть и в mosquitto_sub
mosquitto_sub -t “/devices/Alice_additions/controls/+” -v | ts “%Y-%m-%d %H:%M:%S.%3N”
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensors (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/IKEA_remotes (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator4 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_mmHg (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_curtain_controllers (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_double_click (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_remotes (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Switch_controller_status (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator2 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_hPa (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_click (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator1 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator3 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator5 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors 100
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_hPa 1015.1
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_mmHg 761.4
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensors 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_curtain_controllers 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_click click
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_double_click double_click
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_remotes 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/IKEA_remotes 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Switch_controller_status 0
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator1 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator2 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator3 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator4 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator5 ==========
2026-06-22 21:25:25.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors 100
2026-06-22 21:25:27.%3N /devices/Alice_additions/controls/Master_button_action_long_press long_press
2026-06-22 21:25:27.%3N /devices/Alice_additions/controls/Master_button_action_long_press long_press
2026-06-22 21:25:31.%3N /devices/Alice_additions/controls/Master_button_action_click click
2026-06-22 21:25:31.%3N /devices/Alice_additions/controls/Master_button_action_click click
2026-06-22 21:25:34.%3N /devices/Alice_additions/controls/Master_button_action_long_press long_press
2026-06-22 21:25:37.%3N /devices/Alice_additions/controls/Master_button_action_click click
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remotes (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/IKEA_remotes (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator1 (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensors (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_click (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator3 (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_hPa (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_curtain_controllers (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_double_click (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Master_button_action_long_press (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_mmHg (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Master_button_action_click (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator5 (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Switch_controller_status (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator2 (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator4 (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors 100
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_hPa 1015.1
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_mmHg 761.4
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensors 100
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_curtain_controllers 100
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_click click
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_double_click double_click
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remotes 100
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/IKEA_remotes 100
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Switch_controller_status 0
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator1 ==========
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator2 ==========
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator3 ==========
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator4 ==========
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator5 ==========
2026-06-22 21:26:55.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors 100
2026-06-22 21:27:15.%3N /devices/Alice_additions/controls/Aqara_remotes 100
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensors (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/IKEA_remotes (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator4 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_mmHg (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_curtain_controllers (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_double_click (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_remotes (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Switch_controller_status (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator2 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_hPa (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_click (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator1 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator3 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/separator5 (null)
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors 100
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_hPa 1015.1
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_mmHg 761.4
2026-06-22 21:25:11.%3N /devices/Alice_additions/controls/Aqara_T&H_sensors 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_curtain_controllers 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_click click
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_double_click double_click
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Aqara_remotes 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/IKEA_remotes 100
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/Switch_controller_status 0
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator1 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator2 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator3 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator4 ==========
2026-06-22 21:25:12.%3N /devices/Alice_additions/controls/separator5 ==========
2026-06-22 21:25:25.%3N /devices/Alice_additions/controls/Aqara_M&I_D&W_sensors 100
2026-06-22 21:25:27.%3N /devices/Alice_additions/controls/Master_button_action_long_press long_press
2026-06-22 21:25:27.%3N /devices/Alice_additions/controls/Master_button_action_long_press long_press
2026-06-22 21:25:31.%3N /devices/Alice_additions/controls/Master_button_action_click click
2026-06-22 21:25:31.%3N /devices/Alice_additions/controls/Master_button_action_click click
2026-06-22 21:25:34.%3N /devices/Alice_additions/controls/Master_button_action_long_press long_press
2026-06-22 21:25:37.%3N /devices/Alice_additions/controls/Master_button_action_click click
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remotes (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/IKEA_remotes (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator1 (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensors (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_click (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/separator3 (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_T&H_sensor_1_pressure_hPa (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_curtain_controllers (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Aqara_remote_15_action_double_click (null)
2026-06-22 21:25:42.%3N /devices/Alice_additions/controls/Master_button_action_long_press (null)
Итого: возможно можно (нужно) поправить логику в Интеграции не обрабатывать пустые события для свойства button, или обрабатывать конкретные значения, или в идеале иметь возможность их указывать …