shelly:skriptid
Erinevused
Siin näed erinevusi valitud versiooni ja hetkel kehtiva lehekülje vahel.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| shelly:skriptid [2025/07/15 11:20] – sa | shelly:skriptid [2026/01/19 11:19] (Hetkel kehtiv) – sa | ||
|---|---|---|---|
| Rida 8: | Rida 8: | ||
| [[https:// | [[https:// | ||
| + | Gemini tehtud script 15 lülitus | ||
| + | < | ||
| + | // SEADISTUSED | ||
| + | let config = { | ||
| + | // Hind, millest ODAVAMAL juhul lülitatakse relee SISSE (senti/kWh koos KM-ga) | ||
| + | minPrice: 5.0, | ||
| + | // Hind, millest KALLIMAL juhul lülitatakse relee VÄLJA (senti/kWh koos KM-ga) | ||
| + | maxPrice: 20.0, | ||
| + | |||
| + | // Shelly relee number (tavaliselt 0) | ||
| + | relayId: 0, | ||
| + | |||
| + | // Käibemaks (1.22 tähendab 22%) - Elering annab hinna ilma käibemaksuta | ||
| + | vat: 1.22, | ||
| + | | ||
| + | // Kui tihti kontrollida hinda (millisekundites). 15 min = 900000 | ||
| + | interval: 900000 | ||
| + | }; | ||
| + | |||
| + | // Eleringi API URL (praegune hind) | ||
| + | let url = " | ||
| + | |||
| + | function checkPriceAndSwitch() { | ||
| + | Shelly.call(" | ||
| + | if (error_code !== 0) { | ||
| + | print(" | ||
| + | return; | ||
| + | } | ||
| + | |||
| + | let json = JSON.parse(response.body); | ||
| + | | ||
| + | if (json.success && json.data && json.data.length > 0) { | ||
| + | // Elering annab hinna EUR/MWh, teisendame senti/kWh ja lisame käibemaksu | ||
| + | let rawPrice = json.data[0].price; | ||
| + | let finalPrice = (rawPrice / 10) * config.vat; // senti/kWh koos KM | ||
| + | |||
| + | print(" | ||
| + | |||
| + | // Loogika lülitamiseks | ||
| + | if (finalPrice <= config.minPrice) { | ||
| + | print(" | ||
| + | Shelly.call(" | ||
| + | } | ||
| + | else if (finalPrice >= config.maxPrice) { | ||
| + | print(" | ||
| + | Shelly.call(" | ||
| + | } | ||
| + | else { | ||
| + | print(" | ||
| + | Shelly.call(" | ||
| + | } | ||
| + | } else { | ||
| + | print(" | ||
| + | } | ||
| + | }); | ||
| + | } | ||
| + | |||
| + | // Käivita kohe skripti startimisel | ||
| + | checkPriceAndSwitch(); | ||
| + | |||
| + | // Käivita taimer iga 15 minuti järel | ||
| + | Timer.set(config.interval, | ||
| + | checkPriceAndSwitch(); | ||
| + | }); | ||
| + | |||
| + | </ | ||
shelly/skriptid.1752567615.txt.gz · Viimati muutnud: persoon sa
