Waschmaschine Push Nachricht

Kleines Script das nachdem die Waschmaschine fertig ist, bzw der Verbrauch unter 8 Watt liegt, eine Push Nachricht an das Smartphone schickt und anschließend die Steckdose (wallplug) abschaltet.

<code>--[[
%% properties
161 value
%% globals
--]]

local sourceTrigger = fibaro:getSourceTrigger();

if (sourceTrigger[&quot;type&quot;] == &quot;property&quot;) -- Trigger Wallplug
   then 
   fibaro:debug(&#039;Wallplug Auslösung an/aus&#039;);
   fibaro:sleep(600000);    -- 10 min Wartezeit
   local Wallplug =  (tonumber(fibaro:getValue(161, &quot;value&quot;)) &gt; 0 ); -- Ist Wallplug an
  if (Wallplug) 
    then 
      while true do
       fibaro:debug(&#039;Loop läuft&#039;);
       local PushAus = (tonumber(fibaro:getValue(161, &quot;valueSensor&quot;)) &lt; 8 ); -- Wallplug kleiner als 8 Watt
       if (PushAus) then
        fibaro:debug(&#039;Sende Push&#039;);
       	fibaro:call(45, &quot;sendPush&quot;, &quot;Wäsche ist fertig&quot;); -- Push Handy
	    fibaro:call(46, &quot;sendPush&quot;, &quot;Wäsche ist fertig&quot;); -- Push Handy
        fibaro:sleep(600000);   -- 10 min Wartezeit
        fibaro:debug(&#039;Schalte aus&#039;);
        fibaro:call(45, &quot;sendPush&quot;, &quot;Waschmaschine wird ausgeschaltet&quot;); -- Push Handy
        fibaro:call(46, &quot;sendPush&quot;, &quot;Waschmaschine wird ausgeschaltet&quot;); -- Push Handy
        fibaro:call(161, &quot;turnOff&quot;);  -- Wallplug aus
        break;
       end
       fibaro:sleep(60000);
      end
   end
end  

</code>

hallo AlexM,

an welcher stelle definiere ich welcher WallPlug ausgeschaltet werden soll?
Ich müsste doch diese Variabe definieren oder? : local Wallplug

Hallo feli,

bei mir ist die ID 161 der Wallplug und die IDs 45/46 für die Handys, einfach durch deine ersetzen, im gesamten Script :slight_smile:

Hi Alex

super sache!!

eins ist mir noch nicht klar, wo finde bzw. definiere Ich die ID meiner Handy´s?

mfg Thomas

habe die ID jetzt über das HC2 Toolkit heraus gefunden aber

es kommt ein ERROR

line18: attempt to compare number with nil

Es Läuft :slight_smile: es lag an meiner Alpha 3.906

Das freut mich, was hast du gemacht damit es funktioniert??

Wie läuft die Alpha???
Habe seit Wochen den Key zuhause aber aufgrund der schlechten Berichte im Fibaro Forum bis jetzt immer das update gemieden. Die 3.906 Alpha soll ja schon fast eine Beta sein :wink:

Hi Alex

Da ich selbst Beruflich mit diesen Prdukten zutun habe würde ich dir eine Alpha nur empfehlen wenn du eine HC2 hast die nicht im Heim läuft sonst wirst du sofern du ein Frau hast bald mit der Katze speisen :slight_smile:

ich habe auf Arbeit ein System wo ich immer etwas am probieren bin und auf einer Alpha läuft nicht wirklich alles sauber.

Ich kann zwar hier und da in LUA schon herumschreiben aber Leider bin ich kein richtiger Programmiere aber ich finde es genial das es dieses Forum gibt wo findige Menschen wie du und Chris ein entscheidenden Teil dazu beitragen das wir das Fibaro System weiter ausbauen.

Ich musste etwas noch an deinem Script anpassen da meine Waschmaschine oft unter die 8W geht hat es wärend des waschens und sich heute schon mittendrin ausgeschalten hat. naja das sollte jetzt auch passen.

Eine Frage oder Bitte an dich, ich nutze Telekom Entertain ist dir ein Virtuelles Modul bekannt wo ich diesen ansteueren könnte???

VG Thomas

ich merke, ich muss fix meine Homematic Steckdose vor der Waschmaschine gegen Z-Wave ersetzen und das Script testen. Kling cool und easy. Um das mit Homematic zu machen hab ich eine Stunde Zeit investiert.

Da ich selbst Beruflich mit diesen Prdukten zutun habe würde ich dir eine Alpha
 nur empfehlen wenn du eine HC2 hast die nicht im Heim läuft sonst wirst du sofern
 du ein Frau hast bald mit der Katze speisen :)

Trockenfutter ist nicht mein Ding, dann bleib ich bei der 3.591 beta diese läuft top :slight_smile:
Hatte gehofft das die alpha sich gebessert hat und brenne schon drauf die zu probieren…plugins…multimedia…usw… hört sich richtig gut an was damit alles möglich sein soll.

Eine Frage oder Bitte an dich, ich nutze Telekom Entertain ist dir ein
 Virtuelles Modul bekannt wo ich diesen ansteueren könnte???

Noch nichts über den weg gelaufen was das Thema angeht aber sollte möglich sein das man das Entertainment auch über eine App bedienen kann.

ich merke, ich muss fix meine Homematic Steckdose vor der Waschmaschine gegen Z-Wave
 ersetzen und das Script testen. Kling cool und easy. Um das mit Homematic zu machen 
hab ich eine Stunde Zeit investiert.

Werde demnächst das Script noch verbessern dann brauchen die ID nicht mehr im gesamten Script geändert werden.
1 Std, mhhh, ich saß länger daran, mobbing, danke chriss :wink:

Habe das Script überarbeitet :slight_smile:

--[[
%% properties
140 value
%% globals
--]]

WallplugID = 140;  -- ID des Wallplug, hier ändern.
Phone1 = 41;       -- ID Telefon1, hier ändern.
Phone2 = 192;       -- ID Telefon2, hier ändern. Wenn nicht benötigt löschen.

local sourceTrigger = fibaro:getSourceTrigger();

if (sourceTrigger["type"] == "property") -- Trigger Wallplug
   then 
   fibaro:debug('Wallplug Auslösung an/aus');
   fibaro:sleep(600000);    -- 10 min Wartezeit
   local Wallplug =  (tonumber(fibaro:getValue(WallplugID, "value")) > 0 ); -- Ist Wallplug an
  if (Wallplug) 
    then 
      while true do
       fibaro:debug('Loop läuft');
       local PushAus = (tonumber(fibaro:getValue(WallplugID, "valueSensor")) < 8 ); -- Wallplug kleiner als 8 Watt
       if (PushAus) then
        fibaro:debug('Sende Push');
       	fibaro:call(Phone1, "sendPush", "Wäsche ist fertig"); -- Push Handy
        -- Phone2 löschen wenn nicht benötigt
	    fibaro:call(Phone2, "sendPush", "Wäsche ist fertig"); -- Push Handy 
        fibaro:sleep(600000);   -- 10 min Wartezeit
        fibaro:debug('Schalte aus');
        fibaro:call(Phone1, "sendPush", "Waschmaschine wird ausgeschaltet"); -- Push Handy
        -- Phone2 löschen wenn nicht benötigt
        fibaro:call(Phone2, "sendPush", "Waschmaschine wird ausgeschaltet"); -- Push Handy
        fibaro:call(WallplugID, "turnOff");  -- Wallplug aus
        break;
       end
       fibaro:sleep(60000);
      end
   end
end  

Hallo,
wie kann ich die ID vom Smartphone ermitteln?
Vom Thomas82 wurde das Toolkit vom HC2 genannt. Was ist damit gemeint?

Grüße
Hartmut

Hallo,
die folgende Lösung ist mir dazu eingefallen.
Mit Toolkit ist das Erstellen der Block-Szenen gemeint. Wenn man eine GPS-Szene erstellt und sich anschließend das LUA-Script dazu ansieht, dann wird die ID des Smartphones angezeigt.

Grüße
Hartmut

Toolkit ist ein Programm, mit dem man einige Werte aus der HC2 auslesen kann.
Siehe hier: ToolKit-Forums-Beitrag
Das erleichtert das Finden von IDs etc.

Die ID meines iPhones bekomme ich hierrüber:
http://IP_HC2/api/devices?type=iOS_device
Statt “IP_HC2” einfach die IP Adresse der HC2 einsetzen.

Hi Alex,

Wenn ich Dein Script so in LUA kopiere, bekomme ich folgende Fehlermeldung:
[ERROR] 23:33:19: line 2: unexpected symbol near ‘%’
Was mache ich da falsch?
Bzw wofür steht die “140 value”

Danke im Voraus
Hoggle

Hey Hoggle,

die 140 steht für die ID des Wallplugs.
Der wird bei dir bestimmt eine andere ID haben, müsstest du anpassen und dann sollte es laufen.

Gruß

Danke.
Nutzt Du hier als ID die Parent-ID des WallPlugs (die des übergeordneten Gerätes) oder die “untergeordnete” ID des WallPlugs?

Hallo AlexM,

vielleicht kannst Du mir weiterhelfen? Ich finde deine Idee mit der Waschmaschine super!

Ich bin ein absoluter LUA Neuling! Ich habe nun dein Script eins zu eins kopiert und die 3 IDs geändert. Muss ich da noch was machen?
Evtl. die orangene Beschreibung der Zeilen löschen? Bei mir passiert leider garnix.

Und wie ist den der genau Ablauf des Scriptes? Wenn der Wallplug am ende abschaltet und meine Frau am nächsten Tag wieder waschen möchte ist dann kein Strom auf der Wallplug also muss wieder erst angeschaltet werden?
Und was bedeuten die 10 min Wartezeit? Kann ich die evtl. ändern?
Vielen Dank im Voraus!

Hallo Gemeinde,
ich habe soeben auch unsere Waschmaschiene “ver-z-wavt” und ebenfalls mit diesen Script experimentiert.
Bitte nicht falsch verstehen, ich weiß, dass jede Zeile Code Arbeit und Gehirnschmalz bedeutet!!!
Das Script ist für den Zweck, meiner Meinung nach, ziemlich ungeeignet/zu “unintelligent”.
Ich will das kurz erklären:
Der Verbrauch unserer, zugegeben nagelneuen, Waschmaschiene schwankt während des Waschgangs zwischen über 200 und 0,9 Watt.
Da das Script den Abfall des Verbrauchs als Trigger verwendet, bekommt man nach jedem Stop der Trommel eine Nachricht, dass die Wäsche fertig wäre, mit der eingestellten Verzögerung, versteht sich… :wink:

Ich benutze eine Abwandlung dieses Scripts (es ist also gar nicht weit hergeholt…). Der Vorteil daran ist, dass der Verbrauch eine Zeit x (im Script 5 min.) unter der angegebenen Zeit liegen muss, damit die Benachrichtigung über die fertige Wäsche versandt wird.

--[[
%% properties
186 power
%% globals
--]]
 
local wallplug = 186 -- wallplug
local standby = 2 -- Verbrauch, unter dem der Standby-Modus erkannt werden soll
local phone = 80       -- ID Telefon
 
if (fibaro:countScenes()>1)
  then
 	fibaro:abort();
  fibaro:debug('abort');
end

local run = 0
local counter = 0
local currentDate = os.date('*t');
local power = fibaro:getValue(wallplug, "power")

if ((tonumber(fibaro:getValue(wallplug, "power")) > 1 ) and run == 0) then
  local start = (os.time())
  fibaro:debug('Waschmaschine ist an...')
  fibaro:debug('Verbrauch = '..power..' Watt')
  fibaro:sleep(120*1000);
  run = 1
end

while run == 1 do
 
  if (tonumber(fibaro:getValue(wallplug, "value")) == 1) then
    if ((tonumber(fibaro:getValue(wallplug, "power")) < standby))
        then
          fibaro:debug('Waschmaschine im Standby; zähle counter hoch');
          if (counter == 30) then
		    fibaro:debug('Waschmaschine noch im Standby; 5 min sind vergangen; Versende PushNachricht');
		    fibaro:call(phone, "sendPush", "Wäsche ist fertig"); -- Push Handy
        end
      counter = counter + 1
      fibaro:debug(counter)
    elseif (tonumber(fibaro:getValue(wallplug, "power")) > standby)
        then
          fibaro:debug('Waschmaschine wieder an; counter resettet');
          counter = 0
    end
  elseif (tonumber(fibaro:getValue(wallplug, "value")) == 0) then
          fibaro:debug("Waschmaschine aus... Abort scene")
          run = 0
          counter = 0
  end
  fibaro:sleep(10*1000)
end

Zusätzlich habe ich den Parameter 1 des Wallplugs (Always on function) activiert, damit die Waschmaschine auch einfach (wie gewoht) wieder einzuschalten geht.
Das Abschalten des Wallplugs fehlt im Script folgerichtig auch…
Es geht mit also nur um die Benachrichtigung, dass die Wäsche fertig ist.

Grüße HH…

Hi,

hatte das Skript hier: http://siio.de/board/thema/script-waschmaschine/ schonmal gepostet. Aber danke für deinen Hinweis :slight_smile:

Gruß