Keymatic

Hallo

möchte die Keymatic in Symcon visualisieren… Ich habe im Forum ein Script gefunden und eingerichtet aber der Staus von der Keymatic wird nicht dargestellt ?? Die Keymatic sollte vom Webfront bedienbar sein und der Status angezeigt werden.

<? 
    // keymatic ansteuern, bzw. darstellen 
    // verriegeln:    HM_WriteValueBoolean(ID, "STATE" , false); 
    // entriegeln:     HM_WriteValueBoolean(ID, "STATE" , true); 
    // öffnen:        HM_WriteValueBoolean(ID, "OPEN" , true); 
    // Tastensperre an: HM_WriteValueBoolean(ID, "INHIBIT" , true); 
    // Tastensperre aus: HM_WriteValueBoolean(ID, "INHIBIT" , false); 

    $ID_KEYMATIC = 22776;                                                  // Keymatic Instanz ID 
    $ID_KEYMATIC_STATE =20906;                                     // STATE Variable der Keymatic Instanz 
    $ID_VAR_ACTION = 12270;    // Integer Variable für Schalt und Darstellungszustände 
    $ID_VAR_KEYLOCK = 36788;   // Boolean Variable für Tastensperre 

    //$ID_DOOR = 44468;          // Instanz eines Türkontaktes 

    // aufruf über steuervariable 
     if ($_IPS['SENDER']=="WebFront" && $_IPS['VARIABLE']==$ID_VAR_ACTION) 
    { 
       $OLDVALUE=GetValue($ID_VAR_ACTION); 
        // variable setzen, da aktion aus webfront als "taster" dient 
       SetValue($ID_VAR_ACTION,$_IPS['VALUE']); 

        if ($_IPS['VALUE']==0) 
        {  // öffnen (türöffner) 
              HM_WriteValueBoolean($ID_KEYMATIC, "OPEN" , true); 
          } 
        else if ($_IPS['VALUE']==1) 
        {  // verriegeln nur wenn die tür zu ist 
            //if (getValue(44468)==false) 
            //{ 
               HM_WriteValueBoolean($ID_KEYMATIC, "STATE" , false); 
                //} 
          } 
        else if ($_IPS['VALUE']==2) 
        {  // entriegeln aber tür noch zu 
           HM_WriteValueBoolean($ID_KEYMATIC, "STATE" , true); 
          } 

          // alten wert setzen, da nur einmalige tastaktion bei aktion open 
        if ($_IPS['VALUE']==0) 
        { 
              SetValue($ID_VAR_ACTION,$OLDVALUE); 
          } 
    } 
    else if ($_IPS['SENDER']=="WebFront" && $_IPS['VARIABLE']==$ID_VAR_KEYLOCK) 
    {  // aufruf über variable tastensperre 
       // oberflächen variable setzen und den selben status zur keymatic senden 
       SetValue($_IPS['VARIABLE'],$_IPS['VALUE']); 
       HM_WriteValueBoolean($ID_KEYMATIC, "INHIBIT" , $_IPS['VALUE']); 

    } 
    else 
    {  // über variablenänderung aufgerufen prüfen wie der Keymatic status ist 
       if (getValue($ID_KEYMATIC_STATE)==true) 
        {  //entriegelt 
              SetValue($ID_VAR_ACTION,2); 
          } 

        if (getValue($ID_KEYMATIC_STATE)==false) 
        {  //entriegelt 
              SetValue($ID_VAR_ACTION,1); 
          } 
      } 


?>

Ich verstehe dein Problem noch nicht ganz. Das Basis-Objekt , das IP Symcon erzeugt aus dem Homematic-Gerät ist doch darstellbar und schaltbar… sogar ein Profil war dazu da…

Hi,

was geht den nicht? hast Du die Variable ID_VAR_ACTION den ins WF eingebaut?

Ciao Heiko

Oder von Hand ausgeführt … „geht nicht“ ist immer eine tolle Fehlerbeschreibung …

Gruß
Bruno

Hallo

der Homematic Konfigurator legt die Instanz an (Foto) es wird aber kein Profil für die Keymatic angelegt ? Staus emulieren ist akitv.

Profile sind alle hinterlegt, siehe zweite Spalte Boolean, Integer, Float …

Du weisst für was das ist ??

Wie pitty schrieb, wirst Du wohl die Variablen „$ID_VAR_ACTION“ ind „$ID_VAR_KEYLOCK“ selber anlegen müssen und in Dein Webfront bringen.