Zu 3 schau mal hier:
https://forum.fibaro.com/topic/20581-sending-messages-from-your-hc2-to-your-telegram-account/
Viele Grüße Hoggle
Zu 3 schau mal hier:
https://forum.fibaro.com/topic/20581-sending-messages-from-your-hc2-to-your-telegram-account/
Viele Grüße Hoggle
Hallo,
ich wollte das Script auf der ersten Seite von @AlexM für das Ladegerät von mein E-Auto verwenden damit das Ladegeräte nicht immer am Strom hängt und ich auch weiß wann es voll geladen ist.
Jedoch will das Script nicht so richtig.
Ich habe hier mal ein Bildschirmfoto hochgeladen mit der Fehlermeldung.
Habe auch schon mit den Board-Mitteln ein wenig probiert habe aber kein sinnvolles Ergebnis erzielt.
Danke schon mal für die Hilfe.
Also in Zeile 22 sollte das “value” heißen, so wie in Zeile 17 und nicht “valueSensor”.
Hallo zusammen
Ein wirklich geniales Skript von @parip69, danke vielmals!!!
Nur eine Unklarheit habe ich noch. Dieses Skript muss ich aktuell scheinbar selber starten, sobald die Waschmaschine läuft. Zumindest klappt’s bei mir nur dann. Müsste ich da eine Szene erstellen, welche einmal pro Minute dieses Skript startet um zu prüfen, ob die Waschmaschine läuft, oder wie habt ihr das gelöst?
Danke für die Hilfe.
Gruss
Dani
Moin zusammen & schöne Weihnachten gehabt zu haben!
Über die Feiertage gab es bei mir einen kleinen Vorfall, den ich gerne über eine Erweiterung per Push mitgeteilt bekommen hätte. Nun die Frage ob das umsetzbar ist?
Folgendes Situation: an meiner Zuleitung in die Waschküche hängen an einem Sicherungsautomaten 2 Waschmaschinen und ein Trockner. Der Trockner und eine Waschmaschine sind über jeweils einen Wallplug angeschlossen.
Für gewöhnlich wird maximal der Trockner und eine Waschmaschine eingeschaltet, manchmal aber auch beide Waschmaschinen. Und genau das hat dazu geführt, das der Sicherungsautomat ausgelöst hat und keine der Maschinen gewaschen hat.
Ist es möglich in dieses Script eine Abfrage zu installieren, ob die Wallplugs noch erreichbar sind? Und falls nicht, eine Push-Nachricht gesendet wird?
Quasi wenn Stromverbrauch = 0, dann sende Push…
Danke und Gruß
Rik
Hi Rik,
im Fibaroforum wurde neulich eine Szene vorgestellt, die tote Module findet und Meldung macht. Schau mal hier. Könnte genau das sein was Du willst. Müsste man allerdings regelmäßig starten/triggern.
Grüße
Hallo zusammen,
ich lese hier immer wieder „bei mir hats auf anhieb geklappt“ oder „nachdem ich 1-2 Änderungen durchgeführt habe, ging es einwandfrei“. Da ich mich mit Programmiersprache nicht auskenne und mehr nach Try-and-Error gehe, hoffe ich hier auf Hilfe zu stoßen.
Long story short: ist es tatsächlich nur die Scene-ID, Wallplug-ID und Phone-ID die ich im Script anpassen muss? oder was muss noch beachtet werden? ich suche nach einem Script, bei dem ich nicht aktiv und physisch den Wallplug-Knopf drücken muss. das ist für mich alles andere als Smart.
Meine Basis ist das Script von parip69 für Rik
--[[
%% properties
79 power
79 value
%% globals
--]]
--##### Trockner ###################################################################
local wallplug = 283 -- ID Wallplug Zwischenstecker Trockner.
local sceneID = 68 -- ID der aktuellen scene.
local start = 200 -- 40 Start "Watt" bevor die Trockner einschaltet.
local standby = 2 -- 2.2 Watt. Verbrauch, unter dem der Standby-Modus erkannt werden soll.
local waschen = 160 -- 8 Trockner tut noch waschen wenn drueber ist.
local counterStandbyMin = 100 -- Wie lange das Skript im Standby bleiben muss bis Nachricht verschickt wird.
local timeToNextMessage = 30 -- Wie schnell die naechsten Nachrichten kommen sollen.
local counterMessageMax = 1 -- Wie viele Nachrichten du erhalten willst.
local ct = 22.41 -- ct/kWh... den Verbrauch hier eingeben.
local phone1 = 292 -- ID Simon iPhone.
--local phone2 = 59 -- ID ID XY iPhone.
-------------------------------------------------------------------------------------------
---########################################################################################
-------------------------------------------------------------------------------------------
debug = function ( color, message )
fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span"))
end;
---###### kalaCheckDebug(color , textDebug) #################################################
--- Hier wird ueberprueft ob der letzte gleiche eintrag im Debug schon steht. wnn ja dan schreibt er in nicht wieder rein.
function kalaCheckDebug(color , textDebug);
local jsonString = api.get("/scenes/"..sceneID.."/debugMessages");
if (#jsonString) == 0 then; fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, textDebug, "span"));
else local debugText = json.encode(jsonString[#jsonString].txt):match(textDebug);
if debugText == textDebug then; else; fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, textDebug, "span"));
end; end; end;
-------------------------------------------------------------------------------------------
---########################################################################################
-------------------------------------------------------------------------------------------
if (fibaro:countScenes()>1) then
fibaro:abort();
fibaro:sleep(1*6*1000)
end
--------------------------------------------------------------------
local sourceTrigger = fibaro:getSourceTrigger();
local run = 0
local counterStandby = 0
local counterMessage = 0
local StartWaschZeit -- Start der Waschzeit.
local EndWaschZeit -- Ende der Waschzeit.
local wallplugPower = tonumber(fibaro:getValue(wallplug,"power"))
----------Timestamp berechnen------------------------------------------
function convertTime(seconds)
local stunden = math.floor(seconds/3600)
local minute = math.floor((seconds - (stunden*3600)) /60)
local seconds = math.floor((seconds - (stunden*3600)) - minute * 60)
return ">> "..stunden..":"..minute.. "." ..seconds.." << Stunden."
end
--------- Energy verbrauch --------------------------------------------
function energieVerbrauch();
local jsonListe = api.get("/energy/"..StartWaschZeit.."/"..EndWaschZeit.."/compare/devices/power/"..wallplug);
return(jsonListe[1].kWh)
end
---##################################################################################
---### Ab hier startet das Waschprogramm. ############################################
---##################################################################################
if ( wallplugPower > start and run == 0 ) then
local run = 1
StartWaschZeit = os.time();
kalaCheckDebug('coral', "Waschmaschine ist an... beginne zu waschen.")
kalaCheckDebug('green', "Verbrauch = "..wallplugPower.." Watt")
repeat --->>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
local sleepTime = counterStandbyMin
wallplugPower = tonumber(fibaro:getValue(wallplug,"power"))
if ( wallplugPower <= standby and run == 1 ) then
if (counterStandby >= counterStandbyMin) and (counterMessage <= counterMessageMax) then
EndWaschZeit = os.time();
kalaCheckDebug('aqua', "Waschmaschine ist fertig; ........ versende die Push Nachrichten.");
counterMessage = counterMessage + 1
if counterMessage >= 1 then
sleepTime = timeToNextMessage
end
-------------------------------------------------------------------------------------------------------------
fibaro:call(4, "sendPush", "Trockner ist fertig", "Trockner"); -- Push Handy Rik
fibaro:call(59, "sendPush", "Trockner ist fertig", "Trockner");-- Push Handy Verena
fibaro:call(phone1, "sendPush", "Trockner ist fertig - Nachricht2 über 'phone1'", "Trockner"); -- Push Handy Rik
--fibaro:call(phone2, "sendPush", "Trockner ist fertig "); -- Push Handy Sabine
--------------------------------------------------------------------------------------------------------------
kalaCheckDebug('skyblue', "Die ".. counterMessage .. " -te Nachricht wurde gersendet.")
kalaCheckDebug('orange', "Trocknung dauerte "..(convertTime(os.difftime(EndWaschZeit , StartWaschZeit))).." Der Verbrauch ist "..string.format("%.2f", energieVerbrauch()).." kWh und kostet "..string.format("%.2f", energieVerbrauch()*ct/100).." €.");
end;
if (counterMessage >= counterMessageMax and run == 1) then
kalaCheckDebug('red',"Die Wäsche ist fertig! >>> Script wird beendet.")
run = 0;
end
counterStandby = counterStandbyMin
elseif ( wallplugPower > waschen and run == 1 ) then
kalaCheckDebug('lightsteelblue', "Waschmaschine tut waschen!!!")
counterStandby = 0
end
if ( wallplugPower <= standby and run == 1 ) then
kalaCheckDebug('coral', "Waschmaschine im Standby! ... zähle counterStandby hoch.")
end
if ( wallplugPower == 0 and run == 1 ) then
EndWaschZeit = os.time();
kalaCheckDebug('orange',"Trocknung dauerte "..(convertTime(os.difftime(EndWaschZeit , StartWaschZeit))).." Der Verbrauch ist "..string.format("%.2f", energieVerbrauch()).." kWh und kostet "..string.format("%.2f", energieVerbrauch()*ct/100).." €.");
kalaCheckDebug('red',"Die Wäsche ist fertig! Manuelle abschaltung.")
run = 0;
end;
fibaro:sleep( sleepTime*1000 );
until run == 0; --<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
end
-----------------------------------------------------------------------------------------------------
---### Trockner wallplug wurd überprüft ob eingeschaltet ist. ##############################----
-----------------------------------------------------------------------------------------------------
local sourceTrigger = fibaro:getSourceTrigger();
if (tonumber(fibaro:getValue(wallplug, "value")) == 0 )then
fibaro:sleep(3*1000)
fibaro:call(wallplug, "turnOn");
kalaCheckDebug('lightblue', "ZwischenStecker Waschmaschine... wurde wieder eingeschaltet.")
end
--### ENDE ########################################################################################