Warunki w SUPLA Scripts - pomysły

Masz pomysł na funkcjonalność lub koncepcję na rozwój projektu. Opisz wszystko tutaj.
Gucio2607.
Posty: 499
Rejestracja: wt sie 22, 2017 1:56 pm

sob lip 18, 2020 8:29 am

I teraz dziala. Dziękuję
Zainstalowane:
11x sonoff basic, 1x sonoff gate, 1x Yunshan, 2x H801, 7x sonoff touch(1,2,3 gang), 1x sonoff 4ch PRO
vijay2
Posty: 20
Rejestracja: sob mar 09, 2019 5:54 pm

pn lip 20, 2020 9:34 am

Witam,

Jak byście napisali warunek dotyczący wiatru?

Bardziej konkretnie chodzi o automaty, które będą robić tak:

o wschodzie słońca odsłoń rolety jeżeli porywy wiatru nie przekraczają 15m/s (Koluszki)

co 5 min zasłoń rolety, warunek > porywy wiatru przekraczają 15m/s (Koluszki)

Czy to możliwe do zrobienia?
pawbuj
Posty: 23
Rejestracja: pn kwie 27, 2020 8:39 am

pn lip 20, 2020 6:01 pm

Powinienes cos z tego ulepić , tylko interwał jest chyba minimum co 10 minut do ustawienia z supla Scripts .

forecast dla Koluszki musisz sobie juz sam wklepać.

Kod: Zaznacz cały

{% set opad = getUrl('https://www.yr.no/place/Poland//Masovia/Mława/forecast.xml', '')|split('<precipitation')[1]|split('"')[1]|raw  %}
{% set windspeed = getUrl('https://www.yr.no/place/Poland/Masovia/Mława/forecast.xml', '')|split('<windSpeed')[1]|split('"')[1]|raw  %}
{% set chmury = getUrl('https://www.yr.no/place/Poland//Masovia/Mława/forecast.xml', '')|split('<symbol number=')[1]|split('"')[5]|raw %}
{% set temp = getUrl('http://www.yr.no/place/Poland//Masovia/Mława/forecast.xml', '')|split('<temperature')[1]|split('"')[3]|raw %}
{{
(state(id urządzenia).windspeed >15)
}}
vijay2
Posty: 20
Rejestracja: sob mar 09, 2019 5:54 pm

wt lip 21, 2020 6:30 am

pawbuj pisze:
pn lip 20, 2020 6:01 pm
Powinienes cos z tego ulepić ,
Twój sposób nie działał lub go nie rozumiałem.

Skorzystałem z tego pomysłu:
tgaweda pisze:
czw gru 20, 2018 8:20 pm

i dość na dziś :D

Kod: Zaznacz cały

w najbliższym czasie będzie {{((((getUrl('https://www.yr.no/place/Poland/Lesser_Poland/Kęty/forecast.xml', ''))|split('<temperature unit="celsius" value=')[1]))|replace({' />': ""})|split('"'))[1]}} stopni celsjusza
- zmieniłem parametr na wiatr - dzięki temu, że można podglądać czy zwracana wartość jest ok - potem przeniosłem to do warunku i dodałem ">8"

{{((((getUrl('https://www.yr.no/place/Poland/%C5%81%C ... recast.xml', ''))|split('<windSpeed mps=')[1]))|replace({' />': ""})|split('"'))[1] >8}}

i teraz warunek działa
pawbuj
Posty: 23
Rejestracja: pn kwie 27, 2020 8:39 am

śr lip 22, 2020 9:38 am

Rzeczywiście, dopatrzyłem się błędu . Teraz na pewno by działał...

Kod: Zaznacz cały

{% set opad = getUrl('https://www.yr.no/place/Poland//Masovia/Mława/forecast.xml', '')|split('<precipitation')[1]|split('"')[1]|raw  %}
{% set windspeed = getUrl('https://www.yr.no/place/Poland/Masovia/Mława/forecast.xml', '')|split('<windSpeed')[1]|split('"')[1]|raw  %}
{% set chmury = getUrl('https://www.yr.no/place/Poland//Masovia/Mława/forecast.xml', '')|split('<symbol number=')[1]|split('"')[5]|raw %}
{% set temp = getUrl('http://www.yr.no/place/Poland//Masovia/Mława/forecast.xml', '')|split('<temperature')[1]|split('"')[3]|raw %}
{{
(windspeed >15)
}}
Jakkolwiek to jest samo co ty napisałeś.
bokk
Posty: 6
Rejestracja: pt mar 01, 2019 4:26 am

ndz lip 26, 2020 4:59 am

Witam.
Mam pytanie czy włączenie i wyłączenie uzależnione od warunku można ustawić na 1 scenie czy konieczne są 2 sceny.
Potrzebuję ustawić, aby w podanych godzinach i dniach jeśli temperatura jest mniejsza lub równa 45 stopni włączyło urządzenie a jeśli większa 45 stopni wyłaczyło je.

1
Wyzwalacz sceny w oparciu o czas:
*/30 6-7 * * 1-5|*/30 16-22 * * 1-5|*/30 6-22 * * 6,7
Warunek wykonania sceny
{{state(xxxxx).temperature <= 45}}
Kanał wykonania sceny
-WŁĄCZ

2
Wyzwalacz sceny w oparciu o czas:
*/30 6-7 * * 1-5|*/30 16-22 * * 1-5|*/30 6-22 * * 6,7
Warunek wykonania sceny
{{state(xxxxx).temperature > 45}}
Kanał wykonania sceny
-WYŁĄCZ
gigilio
Posty: 36
Rejestracja: ndz mar 10, 2019 7:48 pm
Lokalizacja: Chorzów

wt wrz 29, 2020 9:53 pm

Myślałem jak wyzwolić przekaźniki po spełnieniu warunków termostatu kolegi endaya. Pracuje na chłodni i potrzebny mi alarm dla określonego zakresu temp
Wiem że byloby prościej na termostacie z skryptów, jednak nie mają one fizycznie możliwości ustawy, a wchodzenie i ustawianie co kilka godzin termostatów byłoby uciążliwe. Ktoś już przerabiał?
Prawdopodobienstwo jest zerowe że wygrasz miliona jak nie wyślesz kuponu totolotka...
Awatar użytkownika
adammoscicki
Posty: 14
Rejestracja: wt wrz 10, 2019 7:00 am

pt paź 02, 2020 9:16 am

Podsumowanie / jest jakiś link do spisu w jednym miejscu dostępnej składni ?
- w pierwszym poście jest przydatny wpis :

{{ state(1)|json_encode|raw }}

ale czy gdzieś mamy taki dokument żeby w jednym miejscu opisać dostępną składnię ?
Adam z Poznania
marcin6638
Posty: 19
Rejestracja: sob sty 26, 2019 9:34 am

sob paź 03, 2020 4:35 pm

Jakby komuś przestało działać yr.no w kwestii opadów, to dodali słowo "value" w xml. Zresztą przejdą na json w pierwszym kwartale 2021.

Ale tymczasem, jakby komuś było potrzebne, warunek pt. "jeśli w ciągu 24 h spadnie mniej niż X mm deszczu, włącz podlewanie". Pamiętajcie o poprawnym linku do forecast.xml dla Waszego miejsca zamieszkania.

Kod: Zaznacz cały

{% set forecast = getUrl('https://www.yr.no/_____________/forecast.xml', '') %} {% set rain6 = forecast|split('<precipitation value=')[1]|split('"')[1]|raw %} {% set rain12 = forecast|split('<precipitation value=')[2]|split('"')[1]|raw %} {% set rain18 = forecast|split('<precipitation value=')[3]|split('"')[1]|raw %} {% set rain24 = forecast|split('<precipitation value=')[4]|split('"')[1]|raw %} {{rain6 + rain12 + rain18 + rain24 < X}}
jureg2
Posty: 11
Rejestracja: pt paź 11, 2019 8:11 pm

pn paź 05, 2020 7:10 pm

Witam
Otrzymuję fałszywe Powiadomienia pushover
Wyzwalanie w oparciu o stan kanałów
{{state(xxxx).temperature < 40}}
temperatura na piecu cały czas powyżej 50 st
ODPOWIEDZ

Wróć do „Pomysły i koncepcje”