+ Antworten
Seite 2 von 4 ErsteErste 1 2 3 4 LetzteLetzte
Ergebnis 11 bis 20 von 39
  1. #11
    Registriert seit
    Nov 2016
    Ort
    Ruhrgebiet
    Beiträge
    213

    Hi Helmut,

    das mit den mehreren ODERs hab ich schon verstanden, nur ich verstehe es dann nicht weiter....



    Gesendet von iPhone mit Tapatalk

  2. #12
    Registriert seit
    Jun 2005
    Beiträge
    3,502

    Standard Ist auch nicht so einfach

    An den Eingängen der Odergatter kommen Modul Ausgänge, bei Dir was mit Homematic

    An den Ausgang des Odergatters kommt ein Modul Eingang, also etwas was bei Dir eine LED zum Leuchten bringt

    Oder eine Variable, aber auch die ist ein Modul-Eingang

    Vielleicht verwirrt Dich diese Ein- Ausgang Geschichte ?
    Gruß Helmut
    Angehängte Grafiken Angehängte Grafiken  

  3. #13
    Registriert seit
    Nov 2016
    Ort
    Ruhrgebiet
    Beiträge
    213

    Hi Helmut,

    ja genau das verwirrt mich und ich verstehe die Logik irgendwie nicht.

    Irgendwie muss es einmal klick machen, aber das macht es nicht.

    Soll ja erst einmal nur ein Alarmcheck sein, ob alle Fenster zu sind.
    Sprich ein Button, der z.B rot (wenn nicht alle Fenster zu) oder grün (wenn alle Fenster zu) leuchtet.
    Ja habe alles Homematic Fensterkontakte.

    VG
    BH


    Gesendet von iPhone mit Tapatalk

  4. #14
    Registriert seit
    Nov 2016
    Ort
    Ruhrgebiet
    Beiträge
    213

    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Alarmcheck.JPG 
Hits:	46 
Größe:	106.0 KB 
ID:	45624

    Ich habe es jetzt so aber immer noch Fehler.

    Also, was ich will.
    Alle Fensterkontakte sollen geprüft werden, wenn alle zu sind, dann soll das Ergebnis ein "grüner Button werden",
    wenn ein Fenster noch auf ist, soll es ein "roter Button sein", ich schnall das nicht, hab es jetzt 1000 mal probiert. ;-(

    Danke
    BH

  5. #15
    Registriert seit
    Aug 2010
    Ort
    Österreich (Korneuburg)
    Beiträge
    4,154

    Das Modul "Bei Änderung" muss auf jeden Fall direkt hinter eine Variable. Letztendlich brauchst Du es aber gar nicht, da Du das in diesem Fall direkt bei der Instanz setzen kannst (Eigenschaft "Auslösung Workflow").

    Ich mach dazu in den nächsten Tagen noch einen Beitrag auf meiner Homepage und beschreibe die Vorgehensweise noch etwas detailierter
    Gruß
    Andreas

  6. #16
    Registriert seit
    Aug 2010
    Ort
    Österreich (Korneuburg)
    Beiträge
    4,154

  7. #17
    Registriert seit
    Nov 2016
    Ort
    Ruhrgebiet
    Beiträge
    213

    Andreas,
    vielen Dank, dass sieht leicht verständlich aus und jetzt verstehe ich auch was du meinst mit dem ausführen bei Änderung, die Eigenschaft habe ich übersehen.

    1000 Dank!

    Dann schaue ich mal wie ich nun weiter komme.

    Nun will ich scharf/unscharf schalten und wenn dann eine Änderung stattfindet soll pushmail und Sirene angehen.
    Bzw. bei unscharf alles unscharf schalten.

    Bekommt man das auch über die Workflows hin?

    LG
    BH


    Gesendet von iPhone mit Tapatalk

  8. #18
    Registriert seit
    Nov 2016
    Ort
    Ruhrgebiet
    Beiträge
    213

    Folgendes soll jetzt passieren:

    wenn ich den Handsender oder einen virtuellen Button aus der CCU2 nutze,
    soll geprüft werden, ob der "ALARMCHECK" ok ist und wenn ja, soll eine Pushnachricht, dass die Alarmanlage scharf ist und mein Türgong soll rot blinken.

    In der CCU2 habe ich die Programme alle so laufen, will es aber alles über IPS darstellen, damit ich endlich von meiner Mediola Virtualisierung weg komme.

    Danke und Gruß
    BH

  9. #19
    Registriert seit
    Aug 2010
    Ort
    Österreich (Korneuburg)
    Beiträge
    4,154

    Fang mal mit dem Handsender und der Lampe an.

    Platzier doch einfach mal die Variable des Handsenders im Workflow, dahinter ein Modul "Bei Aktualisierung" und beim Ausgang "Auslösung" steuerst Du Deine Lampe an.
    Gruß
    Andreas

  10. #20
    Registriert seit
    Nov 2016
    Ort
    Ruhrgebiet
    Beiträge
    213

    Hi Andreas,

    hab ich mal gemacht:
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	alarm_scharf.JPG 
Hits:	30 
Größe:	69.9 KB 
ID:	45713

    dann hört man den Gong und die Lampe blinkt duaerhaft "rot".

    1. Frage, wo in den Script kann ich angeben welche Gong/MP3 abgespielt werden soll und wo ist angegeben, welche LED Farbe blinken soll, hier das Script aus dem Workflow:

    PHP-Code:
    <?php

    /* =====================================================================================================
     * 
     * IPSWorkflow Script
     * 
     * Dieses Skript wurde von einem Workflow des IPSStudio erzeugt, bitte nehmen Sie keine Änderungen
     * an dem Skript vor, da dieses beim nächsten Speichervorgang ansonsten wieder überschrieben werden.
     * 
     * Generiert
     *    at: 30.09.2018 16:08:37
     *    von: IPSStudio
     *    ID: 15535 /*[Alarm_scharf]*/
     

     * 
    Benutzte Objekte:
     *    
    29799 /*[Geräte\Diele_EG\MP3-Tür_Ton]*/ Geräte.Diele_EG.MP3-Tür_Ton
     
    *    24345 /*[Geräte\Diele_EG\MP3-Türgong_Licht]*/ Geräte.Diele_EG.MP3-Türgong_Licht
     

     * 
    Generierte Ereignisse:
     *    
    36046 /*[Alarm_scharf\Bei Aktualisierung M2]*/ Alarm_scharf.Bei Aktualisierung M2
     

     * ===================================================================================================== */

       
    $executionID round(microtime(true)*1000)-(IPS_GetKernelStartTime()*1000);
       
    SendDebug($_IPS['SELF'], 'S||||'.$executionID''0);

       
    $M2 = new IPSEntityModuleOnUpdate($_IPS36046 /*[Alarm_scharf\Bei Aktualisierung M2]*/);
       
    $M1 = new IPSEntityInstance($_IPS29799 /*[Geräte\Diele_EG\MP3-Tür_Ton]*/);
       
    $M3 = new IPSEntityInstance($_IPS57694 /*[Geräte\Handsender\Handsender_scharf Jens]*/);
       
    $M5 = new IPSEntityInstance($_IPS24345 /*[Geräte\Diele_EG\MP3-Türgong_Licht]*/);

       if (
    $M3->Evaluate()) {
          
    SendDebug($_IPS['SELF'], 'M3|PRESS_SHORT|M2|SetValue|'.$executionID,$M3->GetValue('PRESS_SHORT'),0);
          
    $M2->SetValue($M3->GetValue('PRESS_SHORT'));
       }
       if (
    $M2->Evaluate()) {
          
    SendDebug($_IPS['SELF'], 'M2|GetFired|M1|STATE|'.$executionID,$M2->GetFired(),0);
          
    $M1->SetValue('STATE'$M2->GetFired());
          
    SendDebug($_IPS['SELF'], 'M2|GetFired|M5|STATE|'.$executionID,$M2->GetFired(),0);
          
    $M5->SetValue('STATE'$M2->GetFired());
       }
       
    $M1->Evaluate();
       
    $M5->Evaluate();


       
    /* -----------------------------------------------------------------------*/
       
    function SendDebug($id$message$data$format) {
          if (
    is_numeric($data)) {
             
    $data = (string)round($data2);
          }
          
    IPS_SendDebug($id$message$data$format);
       }

       
    /* -----------------------------------------------------------------------*/
        
    class IPSEntityModuleOnUpdate {
            private 
    $ips;
            private 
    $id;
            private 
    $value;
            private 
    $isFired;

            public function 
    __construct($ips$id) {
                
    $this->ips $ips;
                
    $this->id $id;
              }

              public function 
    Evaluate() {
                 
    $this->isFired $this->ips['SENDER'] == 'Variable' && $this->ips['EVENT'] == $this->id;
                 return 
    $this->isFired;
              }

              public function 
    SetValue($value) {
                 
    $this->value $value;
              }

              public function 
    GetValue() {
                  return 
    $this->value;
              }

              public function 
    GetFired() {
                 return 
    $this->isFired;
              }
              
             public function 
    GetNotFired() {
                 return !
    $this->isFired;
              }
        }

       
    /* -----------------------------------------------------------------------*/
        
    class IPSEntityInstance {
            private 
    $ips;
            private 
    $id;

            public function 
    __construct($ips$id) {
                
    $this->ips $ips;
                
    $this->id $id;
              }

              public function 
    SetValue($ident$value) {
                  
    IPS_RequestAction($this->id$ident$value);
              }

              public function 
    GetValue($ident) {
                return 
    GetValue(IPS_GetObjectIDByIdent($ident$this->id));
              }

              public function 
    Evaluate() {
                 return 
    true;
              }
        }


       
    SendDebug($_IPS['SELF'], 'F||||'.$executionID''0);

    ?>
    Beim unscharf schalten passiert mit dem Handsender nix, im IPS View kann ich jedoch die LED ausbekommen, wenn ich den Workflow den Wert auf "false" stelle, jedoch macht er das wohl nicht beim Drücken des Handsenders:

    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	alarm_unscharf.JPG 
Hits:	29 
Größe:	64.6 KB 
ID:	45714


    Also der Türgong fällt also automatisch in den Status "false", die LED bleibt dann jedoch "true", generell auch ok, wenn es scharf ist, doch soll dann auch ausgehen, wenn ich unscharf schalte.

    Danke und Gruß
    BH
    Geändert von Blonder Hans (30.09.18 um 15:39 Uhr)

Ähnliche Themen

  1. Alarmanlage mit IPS und Homematic
    Von Tintifax im Forum Skripte, PHP, SQL
    Antworten: 34
    Letzter Beitrag: 13.03.16, 11:18
  2. Alarmanlage für IPS?
    Von ThomasD im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 2
    Letzter Beitrag: 14.03.14, 14:22
  3. Keymatic & Ips Alarmanlage Idee gesucht?
    Von KrasserMann im Forum HomeMatic
    Antworten: 3
    Letzter Beitrag: 21.05.13, 16:34
  4. Günstige Funk-Alarmanlage gesucht (ohne IPS)
    Von grind im Forum Haustechnik
    Antworten: 2
    Letzter Beitrag: 07.08.11, 15:11