Asystent AI
dzVents - zmiana ko...
 
Powiadomienia
Wyczyść wszystko

Pomoc dzVents - zmiana koloru kilku żarówek jednym przyciskiem

3 Wpisów
2 Użytkownicy
0 Reactions
945 Wyświetleń
(@prezes)
Wpisów: 9
Bywalec
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 
[#5611]

Witam forumowiczów,

zadanie wydaje się proste, ale skrypt mnie trochę przerósł. Moje poprzednie próby nie wypaliły. Potrzebuję skrypt w dzVents, który będzie kopiował ustawienia z wirtualnego przełącznika RGB na wybrane żarówki RGB, które są już dodane w domoticzu.

Z góry dziękuję za pomoc : )


 
Dodane : 21/06/2023 8:58 pm
isom
 isom
(@isom)
Wpisów: 5319
Szef wszystkich szefów Moderator Zasłużony dla Forum, Donator 2K19, Donator 2K20
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Dodane przez: @prezes

zadanie wydaje się proste

Na pewno takie proste ? Trzeba odpytać w skrypcie o wszystkie ustawienia tego wirtualnego RGB i tworząc tabelę żarówek przesłać te paramerty do tej tabeli. Dodatkowo musi być wysyłka statusu bo nie wiemy czy żarówki są ON czy OFF, a może jedna ON a inne OFF.

Na domiar złego nie korzystam już z Domoticz i nigdy nie miałem kolorowych żarówek, ale zobacz czy to będzie działać.

return
{
    on = { devices = { 'Główny' } -- zmien nazwe na swój wirtualny przełacznik
}, 
data = {state = { initial = 0 }
},
     
    logging = { level = domoticz.LOG_ERROR },

    execute = function(dz, item)
        local slaves =   -- poniżej wpisz nazwy swoich żarówek RGB, żarówek może być dowolna ilość
        { 
            'Żarówka 1', 
            'Żarówka 2',
        }
        
            local function setColor(target, source, delay)
            local delay = delay or 0
            local source = source or item
            local switchOnURL = dz.settings['Domoticz url'] .. '/json.htm?type=command&param=switchlight&idx=' .. target.id   .. '&switchcmd=On'
            local colorURL = dz.settings['Domoticz url'] ..
                        '/json.htm?type=command&param=setcolbrightnessvalue' ..
                        '&idx=' .. target.id   .. '&brightness=' .. source.level .. '&color=' .. source.color
            dz.openURL(colorURL)
            dz.openURL(switchOnURL).afterSec(0.2)
            dz.log('Color set to ' .. source.color .. '( brightness: ' .. source.level ..')',dz.LOG_DEBUG )
        end

        if item.state ~= 'Off' and dz.data.state == 0 then
            item.switchOn().afterSec(0.3)
            dz.data.state = 1 
        elseif item.state ~= 'Off' and dz.data.state == 1 then
            for index, value in pairs(slaves) do
                setColor(dz.devices(value))
            end
            dz.data.state = 0
        elseif item.state == 'Off' then
            for index, value in pairs(slaves) do
                dz.devices(value).switchOff()
            end
            dz.data.state = 0
        else
            dz.data.state = 0
        end

    end
}

Jedno jest pewne nawet jak będzie działać, to będzie małe opóźnienie, wzgędem tego wirtualnego przełacznika.


 
Dodane : 21/06/2023 11:22 pm
(@prezes)
Wpisów: 9
Bywalec
Autor tematu
Translate
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Dziękuję za pomoc. Postaram się wypróbować skrypt w najbliższym czasie : ).


 
Dodane : 24/06/2023 12:47 am
Udostępnij: