Горячая линия технической поддержки ЭМБЕДДЕД СИСТЕМС РУС: 8-800-775-06-34 (звонок по России бесплатный)

LM5_N
LM-Wall_N
DALI_N
Vita_N

Сценарий: Выключить всё когда уходите. Включить когда вернетесь домой, только то, что было выключено

Шаг 1 – Соединитесь с LogicMachine

Соединитесь с LogicMachine при помощи стандартных параметров доступа (IP: 192.168.0.10; login/password: admin/admin)

Шаг 2 – Создайте сценарий: “Выключить все/включить, что было выключено”

На панели Скрипты (Scripting) нажмите кнопку Событийные (Even-based), затем добавьте сценарий, нажав Добавить новый скрипт (Add new script). В данном примере сценарий будет запущен каждый раз при активации группового адреса KNX со значениями 12/1/1

Шаг 3 – Сохраните сценарий и войдите в редактор

После сохранения сценария, нажмите на значке в колонке Редактор (Editor), чтобы войти в редактор сценариев. В окне редактора вставьте представленный ниже код.

-- Конфигурация: [Адрес управления] = Адрес статуса (или '' если нет)
local groups = {
    ['0/0/7'] = '0/0/10',
    ['0/0/8'] = '0/0/11',
    ['0/0/9'] = '0/0/12',
    -- ['0/0/13'] = '' -- пример адреса без статуса
}

local key = 'scene_away_states_1' -- ключ для сценария
local scene_status = event.getvalue() -- получение значения события

if scene_status then
    -- === КНОПКА ON (Вернулся: Восстанавливаем) ===
    local states = storage.get(key)
    if states then
        for addr, value in pairs(states) do
            grp.checkwrite(addr, value)
        end
    end
    storage.set(key, nil)
else
    -- === КНОПКА OFF (Ушел: Сохраняем и выключаем) ===
    local states = {}
    for addr, status in pairs(groups) do
        local read_addr = (status ~= '' and status) or addr
        states[addr] = grp.getvalue(read_addr)
        grp.checkwrite(addr, 0)
    end
    storage.set(key, states)
end