Notify Befehl mit einen Webschalter Ein/ausschalten

Begonnen von gelberlemmy, 28 Januar 2013, 13:00:05

Vorheriges Thema - Nächstes Thema

gelberlemmy

Hallo,

Ich würde gern mit einem Dummy Schalter
ein Notify Befehl ein oder ausschalten .
Kann man den State Status damit von Activ
auf Inactiv und anders herum Schalten ???
Oder wie würdet ihr das realisieren ????

Gruß André

Puschel74

Hallo,

sollte mit attr <Name> disabled 1 und disabled 0 funktionieren.
So in etwa:

define Dummy_EinAus dummy
attr Dummy_EinAus eventmap /on:Activ/off:Inactiv/


define Dummy_Schalten notify Dummy_EinAus:.* {
  if ("%" eq "on") {
    fhem ("attr <NamedesNotify> disabled 0");
  }
  else {
    fhem ("attr <NamedesNotify> disabled 1");
  }
}


Ungetestet und aus dem Kopf.
Das geht sicher noch eleganter.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

gelberlemmy

Danke für die Antwort.
So habe dies in mein Config eingeschrieben:

define Dummy_EinAus dummy
attr Dummy_EinAus eventmap /on:Activ/off:Inactiv/

define Dummy_Schalten notify Dummy_EinAus:.* {
  if ("%" eq "on") {
    fhem ("attr <Alarm_zu_Hause> disabled 0");
  }
  else {
    fhem ("attr <Alarm_zu_Hause> disabled 1");
  }
}
Als Fehlermeldung dies bekommen:

ERROR:

Dummy_EinAus: unknown attribute eventmap, choose one of room group comment alias eventMap userReadings loglevel:0,1,2,3,4,5,6 setList devStateIcon fm_fav fm_groups fm_name fm_order fm_type fm_view icon webCmd or use attr global userattr eventmap Unknown command if, try help Unknown command fhem, try help Unknown command }, try help Unknown command else, try help Unknown command fhem, try help Unknown command }, try help Unknown command }, try help


Hab ich etwas falsch verstanden ?

Puschel74

Nein,

eventmap sollte nur eventMap lauten.
Steht auch so in der Fehlermeldung ;-)

Grüße

P.S.: Wie geschrieben - ungetestet und nur aus dem Kopf raus
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Puschel74

Ach so, noch was.

Wenn du den Code, so wie von mir eingestellt, in deine fhem.cfg kopierst musst du dich bitte selbst um das schützen kümmern.
Ich bearbeite grundsätzlich nur die DEF`s meiner cfg`s, daher schütze ich keine Zeilenumbrüche und sonstiges.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

gelberlemmy

ok so steht es jetzt bei mir drin:



#############Alarmanlage######################

define Alarm_zu_Hause notify .*:Window.*(Open|Closed) { \
  my $window_state=ReadingsVal("@", "Window", "nA");;\
  my $deftype=$defs{@}{TYPE};;\
  return if ( $deftype ne "CUL_FHTTK" );;\
  if ( $defs{@}{PREVSTATE} ne $window_state ) { \
    my $fhttk_status=FHTTK_status;;\
    my $subject="FHEM: Fenster @ ".$window_state;; \
    DebianMail('8c4337dc1a0983412f00222507d92c1a6cdcef29@@api.prowlapp.com' (@@api.prowlapp.com'),$subject,$fhttk_status);;\
    Log 3, "@: Window ".$window_state;;\
  }\
}
define EMA FS20  11114444 1a
attr EMA eventMap /on:Activ/off:Inactiv/
attr EMA room Alarm

define Dummy_Schalten notify EMA:.* { if ("%" eq "on") {fhem ("attr <Alarm_zu_Hause> disabled 0");
  }
else {fhem ("attr <Alarm_zu_Hause> disabled 1");
  }
}

Als Fehlermeldung dies :

Unknown command }, try help Unknown command else, try help Unknown command }, try help Unknown command }, try help

Was heißt denn dies ????

MisterEltako

Hi!

Müsste es nicht:

define Dummy_Schalten notify EMA:.* { if ("%" eq "on") {fhem ("attr <Alarm_zu_Hause> disabled 0");;\
}
else {fhem ("attr <Alarm_zu_Hause> disabled 1");;\
}\
}

....lauten???

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

gelberlemmy

Also bei kommt wieder die gleiche Fehlermeldung.

MisterEltako

define Dummy_Schalten notify EMA:.* { if ("%" eq "on") {fhem ("attr <Alarm_zu_Hause> disabled 0");;\
}\
else {fhem ("attr <Alarm_zu_Hause> disabled 1");;\
}\
}

Das müsste doch eigentlich gehen...
(kann es im Moment leider nicht testetn)

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

gelberlemmy

Danke für die Antwort. Jetzt hat er es ohne Fehler geschluckt.

Aber in dem Logfile steht dieses:


2013.01.29 17:35:15 2: FS20 set EMA on
2013.01.29 17:35:15 3: Please define <Alarm_zu_Hause> first
2013.01.29 17:35:15 3: attr <Alarm_zu_Hause> disabled 1 : Please define <Alarm_zu_Hause> first
2013.01.29 17:35:15 3: Dummy_Schalten return value: Please define <Alarm_zu_Hause> first

So jetzt habe ich gedacht ich lass die <> weg. Also nur Alarm_zu_Hause. So heisst der Dummy auch.
Dann stand folgendes in dem Logfile:


2013.01.29 17:32:11 2: FS20 set EMA on
2013.01.29 17:32:11 3: Alarm_zu_Hause: unknown attribute disabled, choose one of room group comment alias eventMap userReadings disable:0,1 forwardReturnValue:0,1 loglevel:0,1,2,3,4,5,6 devStateIcon fm_fav fm_groups fm_name fm_order fm_type fm_view icon webCmd or use attr global userattr disabled
2013.01.29 17:32:11 3: attr Alarm_zu_Hause disabled 1 : Alarm_zu_Hause: unknown attribute disabled, choose one of room group comment alias eventMap userReadings disable:0,1 forwardReturnValue:0,1 loglevel:0,1,2,3,4,5,6 devStateIcon fm_fav fm_groups fm_name fm_order fm_type fm_view icon webCmd or use attr global userattr disabled
2013.01.29 17:32:11 3: Dummy_Schalten return value: Alarm_zu_Hause: unknown attribute disabled, choose one of room group comment alias eve

Ja immerhin bin ich einen Schritt weiter. Dafür schon einmal grössten Dank

Puschel74

Hallo,

attr wird grundsätzlich (wenn ich mich nicht irre) OHNE < > geschrieben und soll so heissen wie dein Notify.

OK. Diesen Teil hast du ohne fragen lösen können.

Und zum zweiten Teil steht die Antwort in der Fehlermeldung ... so wie auch bei eventmap/eventMap.

Sry das ich dafür mal wieder keinen eigenen Beitrag aufmache aber ...
Bitte lest euch die Fehlermeldungen durch und versucht! (wenigstens versuchen) daraus etwas zu lesen/lernen.

Wenn danach immer noch Fragen offen sind könnt ihr gerne einen ??Beitrag?? aufmachen und nachfragen oder, noch besser, die SuFu
benutzen und erst wenn dann nichts mehr geht und das Haus einfriert und Eure Frau/Freundin/Lebensgefährtin/Lebensabschnittsbegleiterin
mit der Keule hinter Euch steht hier einen Beitrag eröffnen.

Lange Rede kurzer Sinn:
ZitatAlarm_zu_Hause: unknown attribute disabled, choose one of room group comment alias eventMap userReadings disable:0,1
Ersetze disabled durch disable und es sollte gehen.

Grüße

P.S.: Die Schnauzerei war nicht auf dich persönlich bezogen lemmy aber in letzter Zeit häufen sich hier die Beitrage weil alle!? nicht
lesen wollen?
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

gelberlemmy

Das kann ich mir denken. Da ich noch echt in der Anfangsphase stecke kann man mit vielen Dingen nicht so viel anfangen. Ich gelobe besserung !!!!!Aber danke
für Eure Gedult.

Ein Frage habe ich noch...... (sorry)


So jetzt steht nur noch im Log: FS20 set EMA off
                                                FS20 set EMA on

Nur egal wie dieser Schalter steht. Ändere ich den Zustand geht der Dummy auf disable. Wenn ich dann wieder schalte geht er nicht von disable auf active.

Liegt das am Schalter den ich angelegt habe ? Ist dieser evntuell falsch ?????




gelberlemmy

Ach so steht er drinne:


define EMA FS20 11114444 1a
attr EMA eventMap /on:Activ/off:Inactiv/
attr EMA room Alarm


Hatte ich oben schon erwähnt

Puschel74

Hallo,

wieso geht der Dummy auf disable?
Jetzt wäre gut wenn du deinen (funktionierenden) Code gepostet hättest ;-)
Und eine etwas genauere Beschreibung was nicht geht und welche Fehlermeldung im Logfile steht.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

gelberlemmy

In der Config:

#############Alarmanlage######################

define Alarm_zu_Hause notify .*:Window.*(Open|Closed) { \
  my $window_state=ReadingsVal("@", "Window", "nA");;\
  my $deftype=$defs{@}{TYPE};;\
  return if ( $deftype ne "CUL_FHTTK" );;\
  if ( $defs{@}{PREVSTATE} ne $window_state ) { \
    my $fhttk_status=FHTTK_status;;\
    my $subject="FHEM: Fenster @ ".$window_state;; \
    DebianMail('8c4337dc1a0983412f00222507d92c1a6cdcef29@@api.prowlapp.com' (@@api.prowlapp.com'),$subject,$fhttk_status);;\
    Log 3, "@: Window ".$window_state;;\
  }\
}
attr Alarm_zu_Hause room Alarm

###########Alarmanlage Ein_Ausschalten###########

define EMA FS20 11114444 1a
attr EMA eventMap /on:Activ/off:Inactiv/
attr EMA room Alarm

define Dummy_Schalten notify EMA:.* { if ("%" eq "on") {fhem ("attr Alarm_zu_Hause disable 0");;\
}\
else {fhem ("attr Alarm_zu_Hause disable 1");;\
}\
}
attr Dummy_Schalten room Alarm


In der Log:

2013.01.29 18:55:34 2: FS20 set EMA on
2013.01.29 18:55:38 2: FS20 set EMA off
2013.01.29 18:57:15 2: FS20 set EMA on
2013.01.29 18:57:19 2: FS20 set EMA off
2013.01.29 18:57:22 2: FS20 set EMA on
2013.01.29 18:57:27 2: FS20 set EMA off
2013.01.29 18:59:07 2: FS20 set EMA on
2013.01.29 18:59:11 2: FS20 set EMA off
2013.01.29 18:59:25 2: FS20 set EMA on
2013.01.29 18:59:33 2: FS20 set EMA off
2013.01.29 19:00:32 2: FS20 set EMA on
2013.01.29 19:00:35 2: FS20 set EMA off
2013.01.29 19:03:42 2: FS20 set EMA off
2013.01.29 19:07:45 2: FS20 set EMA on
2013.01.29 19:08:23 2: FS20 set EMA off

Alarm_zu_Hause soll ein und ausgeschaltet werden

gelberlemmy

Ach ja wenn ich On oder Off egal , geht Alarm zu Hause auf disable und da
Bleibt er

Puschel74

Als attr bleibt disable auf alle Fälle stehen. Nur eben einmal mit 1 und einmal mit 0.
Also der Eintrag verschwindet nicht.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

gelberlemmy


gelberlemmy


gelberlemmy

So nun habe ich einiges ausprobiert.
Da ich mir es ja zu Herzen genommen habe, dass man zuerst selbst mal ein wenig rumprobieren sollte.

Habe den Befehl "attr" gegen "set" "trigger" getauscht. dies hat nichts gemacht. Keine Fehlermeldung beim Speichern der Config. Im Logfile
stand nur EMA on, EMA off nach einem Schaltbefehl. Wie oben auch schon beschrieben. Keinerlei umschalten des Notifys. Habe noch einmal im Wiki ein wenig gestöbert und Sachen ausprobiert.
So nun weiss ich wirklich nicht weiter. Ich habe das Gefühl, das noch irgendetwas fehlt, da ich denke das "set" doch eigentlich der richtige Befehl sein sollte.

Ich hoffe Ihr könnt mir noch einmal unter die Arme greifen.... Das wäre super nett.


Gruß Gelberlemmy


MisterEltako

Wird den Alarm_zu_ Hause überhaupt ausgelöst?  (.*:Window.*(Open|Closed))????

define Alarm_zu_Hause notify .*:Window.*(Open|Closed) { \
my $window_state=ReadingsVal("@", "Window", "nA");;\
Log 1, "Alarm_zu_Hause wird ausgelöst";;
....

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

MisterEltako

Noch eine Idee: eventuell mit "deleteattr" arbeiten....

define Dummy_Schalten notify EMA:.* { if ("%" eq "on") {fhem ("deleteattr Alarm_zu_Hause disable");;\
}\
else {fhem ("attr Alarm_zu_Hause disable 1");;\
}\
}
attr Dummy_Schalten room Alarm

MfG, MisterEltako.
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

gelberlemmy


gelberlemmy

Also mit deleteattr geht es gar nicht. Mit dem Post vorher meine ich die Fenstermeldungen per email

MisterEltako

Hi!
Ich habe deinen Code/Konfiguration nachfolgend simuliert:

define Test dummy
attr Test room Experiment
attr Test eventMap /on:Activ/off:Inactiv/
attr Test webCmd on:off

define EMA dummy
attr EMA room Experiment
attr EMA eventMap /on:Activ/off:Inactiv/
attr EMA webCmd on:off

define Alarm_zu_Hause notify Test:.* {Log 1, "Notify an"}
attr Alarm_zu_Hause room Experiment

define Dummy_Schalten notify EMA:.* {\
    if ("%" eq "on") {\
    fhem ("deleteattr Alarm_zu_Hause disable");;\
    }else {\
    fhem ("attr Alarm_zu_Hause disable 1");;\
    }\
}
attr Dummy_Schalten room Experiment


Funktioniert einwandfrei....

MfG, MisterEltako
HMLAN-Konfigurations-Adapter, HM-Funkjalousieaktor/HM-Dimmaktor/HM-Schaltaktor f. Markenschalter, Jalousie-/Schaltaktor von Eltako, FT4 v. Eltako, TCM310

gelberlemmy

Hallo danke für Dein Testen. Ich habs gestern auch hinbekommen. ein zwei kleine Änderungen und es lief. Und zawar so:

In der Config:

#############Alarmanlage######################

define Alarm_zu_Hause notify .*:Window.*(Open|Closed) { \
  my $window_state=ReadingsVal("@", "Window", "nA");;\
  my $deftype=$defs{@}{TYPE};;\
  return if ( $deftype ne "CUL_FHTTK" );;\
  if ( $defs{@}{PREVSTATE} ne $window_state ) { \
    my $fhttk_status=FHTTK_status;;\
    my $subject="FHEM: Fenster @ ".$window_state;; \
    DebianMail('123456789mail@@weiss auch nicht.com',$subject,$fhttk_status);;\
    Log 3, "@: Window ".$window_state;;\
  }\
}
attr Alarm_zu_Hause disable 1
attr Alarm_zu_Hause room Alarmanlage

###########Alarmanlage Ein_Ausschalten###########

define EMA FS20 11114444 1a
attr EMA fm_type on-off
attr EMA fm_view 0,1
attr EMA model fs20
attr EMA room Alarmanlage

define Dummy_Schalten notify EMA:.* { if ("%" eq "on") {fhem ("attr Alarm_zu_Hause disable 0");;\
}\
else {fhem ("attr Alarm_zu_Hause disable 1");;\
}\
}
attr Dummy_Schalten room Alarmanlage


und in der 99_myUtil.pm:


#################eMail wenn Fenster auf############

sub FHTTK_status {
  my @fhttks = devspec2array("TYPE=CUL_FHTTK");
  my @wopen = ();
  foreach(@fhttks) {
    my $fhttk_window = ReadingsVal($_, "Window", "nA");
    push (@wopen,$_) if ($fhttk_window eq "Open" );
  }
  my $num_wopen = @wopen;
  my $resultstring='';
  if ( $num_wopen gt 0 ) {
    $resultstring="folgende Fenster sind noch offen:\n\n";
    foreach(@wopen) {
      $resultstring.="- ".$_."\n";
      Log 4, "FHTTK_status: ". $_. "noch offen";
    }
  } else {
    $resultstring="alle Fenster sind derzeit geschlossen.";
  }
  return $resultstring;
}


Das war aber auch stressig. Ich danke Euch für die Unterstützung.