Asystent AI
dzVents switch+moti...
 
Powiadomienia
Wyczyść wszystko

Pomoc dzVents switch+motion

16 Wpisów
2 Użytkownicy
1 Reactions
1,205 Wyświetleń
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 
[#2915]

Witam! Poniższy skrypt działa tak jak chciałbym aby działał (wszystkie switche on/off), ale nie potrafię zamienić switcha "My" na switch on/off ping ustawiony jako motion. Moje próby nie przyniosły efektu.

return {
on = {
		devices = {
			'Noc', 'My',}
},
logging = {
           level = domoticz.LOG_DEBUG,
            marker = 'Lampa Noc',
},
execute = function(dz, item)
	local switch = dz.devices('Noc') 
	local switch1 = dz.devices('Lampa') 
	local switch2 = dz.devices('My') 
	if item == switch then
		if switch.state == 'On' and switch2.state == 'On' then 
			switch1.switchOn().checkFirst()
		else
			switch1.switchOff().checkFirst()
		end
	end
	if  item == switch2 and switch2.state =='Off' then
		switch1.switchOff().checkFirst()
	end
	end
}

 
Dodane : 13/05/2022 12:50 pm
(@steel_rat)
Wpisów: 646
Ekspert
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
 

A w którym miejscu w kodzie kolega ustawia przełącznik "My" na ON czy tam OFF. Bo tu nie widać. Generalnie powinno działać.

Ewentualnie pokaż jak masz zdefiniowany ten przełącznik "My".

switch2.switchOff().checkFirst()
lub
switch2.switchOn().checkFirst()

 
Dodane : 13/05/2022 5:57 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 

@steel_rat  zamiast obecnego "My" chciałbym wstawić PIR (on/of z pinga ustawiony na motion) ale jak zastąpię switch2 --> motion.active to to nie działa.


 
Dodane : 13/05/2022 6:06 pm
(@steel_rat)
Wpisów: 646
Ekspert
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
 

Rozumiem że używasz plugina w Domoticzu do pingowania?


 
Dodane : 13/05/2022 6:22 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 

@steel_rat Tak dokładnie chcę użyć pinga (alive checker).


 
Dodane : 13/05/2022 6:29 pm
(@steel_rat)
Wpisów: 646
Ekspert
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
 

Czy przypadkiem nie wzorujesz się na tym temacie

https://www.smartnydom.pl/forum/domoticz/httpresponse/#post-23794

Tu praktycznie ten sam skrypt działa.Wtedy coś takiego stworzyłem

return {
on = {
		devices = {
			'GarażR', 'TVPhilips',}
},
logging = {
           level = domoticz.LOG_DEBUG,
            marker = 'PIR Garaż',
},
execute = function(dz, item)
	local motion = dz.devices('GarażR') -- nazwa czujnika
	local switch = dz.devices('TekstTV') -- nazwa włacznika
	local motion1 = dz.devices('TVPhilips') -- nazwa ping (ustawiony jako motion sensor)
	if item == motion then
		if motion.active and motion1.active then -- detekcja wyzwala skrypt
			switch.switchOn().checkFirst()
		else
			switch.switchOff().checkFirst()
		end
	end
	if  item == motion1 and not motion1.active then
		switch.switchOff().checkFirst()
	end
}

 

ten motion był ustawony jako "contact"


 
Dodane : 13/05/2022 6:33 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 

@steel_rat Tak patrzyłem jak to ustawiłeś tam --> akcja zależy od wykrycia ruchu i spełnienia warunku obecności 2 motion true. U mnie miało być tak, że akcja "Noc" powoduje załączenie switch1 ale wtedy kiedy motion jest aktiv.


 
Dodane : 13/05/2022 6:50 pm
(@steel_rat)
Wpisów: 646
Ekspert
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
 

Wystarczy usunąć "not" przed "motion1.active"


 
Dodane : 13/05/2022 6:52 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 
Dodane przez: @steel_rat

Wystarczy usunąć "not" przed "motion1.active"

U mnie "Noc" i "Lampa" to są switche ON/OFF a "My" to switch (alive ping) ustawiony na motion. Więc jak zmienię jak proponujesz to w przypadku kiedy "My" bedzie aktiv wyłaczy "Lampę" a ma być jak jest czyli

if  item == switch2 and switch2.state =='Off' then
		switch1.switchOff().checkFirst()

 

 


 
Dodane : 13/05/2022 7:05 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 

Coś w tym stylu :

return {
on = {
devices = {
'Noc', 'My',}
},
logging = {
level = domoticz.LOG_DEBUG,
marker = 'Lampa Noc',
},
execute = function(dz, item)
local switch = dz.devices('Noc')
local switch1 = dz.devices('Lampa')
local motion = dz.devices('My')
if item == switch then
if switch.state == 'On' and motion.state == 'On' then
switch1.switchOn().checkFirst()
else
switch1.switchOff().checkFirst()
end
end
if item == motion and motion.state == 'Off' then
switch1.switchOff().checkFirst()
end
end
}

 
Dodane : 13/05/2022 7:13 pm
(@steel_rat)
Wpisów: 646
Ekspert
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
 

No to jak masz go jako motion to on ma wartości "ON" i "OFF" a nie "Active".

czyli powinno działać ostatni Twój wpis.


 
Dodane : 13/05/2022 7:13 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 
Dodane przez: @steel_rat

No to jak masz go jako motion to on ma wartości "ON" i "OFF" a nie "Active".

W Twoi skrypcie masz motion jako contact a on daje open i closed a używasz aktiv / not activ ??


 
Dodane : 13/05/2022 7:24 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 
Dodane przez: @steel_rat

No to jak masz go jako motion to on ma wartości "ON" i "OFF" a nie "Active".

czyli powinno działać ostatni Twój wpis.

Czyli jak zmienię "zwykłego" mojego swicha "my" i ustawie go jako motion to powinno zadziałać ? bo nie zmieniam stanu tzn. dalej jest to on/off ?


 
Dodane : 13/05/2022 7:28 pm
(@steel_rat)
Wpisów: 646
Ekspert
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: @xeno
Dodane przez: @steel_rat

No to jak masz go jako motion to on ma wartości "ON" i "OFF" a nie "Active".

czyli powinno działać ostatni Twój wpis.

Czyli jak zmienię "zwykłego" mojego swicha "my" i ustawie go jako motion to powinno zadziałać ? bo nie zmieniam stanu tzn. dalej jest to on/off ?

Tak. A nawet możesz dodać jakieś akcje z poziomu domoticza.

 


 
Dodane : 13/05/2022 7:42 pm
xeno zareagował
(@steel_rat)
Wpisów: 646
Ekspert
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: @xeno
Dodane przez: @steel_rat

No to jak masz go jako motion to on ma wartości "ON" i "OFF" a nie "Active".

W Twoi skrypcie masz motion jako contact a on daje open i closed a używasz aktiv / not activ ??

A po polsku mam Otwarte i Zamknięte. Ale wartości jego w skryptach zwraca zmienna Active. Czyli przycisk jest aktywny lub nie. Najlepiej popatrzeć do helpa. Ale tu metodą dedukcji jak "Active" wywala błąd to zostaje "State".

 


 
Dodane : 13/05/2022 7:47 pm
 xeno
(@xeno)
Wpisów: 40
Kontrybutor
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
 

@steel_rat Dziękuję za pomoc i wyjaśnienia, skrypt podany na początku, który działał działa dalej (niepotrzebnie motałem się z tym motion.activ). Zauważyłem, że mogę ustawić "Plany" w moim "Noc" i też działa. Super jeszcze raz dziękuję.

 

 

 
Dodane : 13/05/2022 7:47 pm
Udostępnij: