+ Antworten
Seite 1 von 8 1 2 3 ... LetzteLetzte
Ergebnis 1 bis 10 von 73
  1. #1
    Registriert seit
    Sep 2018
    Beiträge
    36

    Standard HA-Bridge gemeinsam mit IP-Symcon betreiben

    Hallo werte Community

    Ich benutze die Harmony Fernbedienung und würde hierbei gerne die Smarthome Tasten im unteren Bereich der Fernbedieung nutzen um Variablen und Geräte in IP-Symcon beschreiben zu können. Ich habe von einer HA-Bridge gelesen um in Harmony eine Hue Bridge zu simulieren. Ist es möglich die HA-Bridge gemeinsam auf einem Rasperry mit IP-Symocon zu betreiben? Ich betreibe schon IP-Symcon auf einem Rasperry und möchte mir, wenn möglich noch ein Kästchen sparen. Ich benutze schon eine Hue Bridge um Lampen zu steuern, aber ich würde gerne auch Schaltaktoren von Homematic über die Harmony Fernbedieung über IP-Symcon damit steuern. Könnt Ihr mir da einen guten TIpp geben, wie ich da vorgehen sollte?

    Danke und Besten Gruß

  2. #2
    Registriert seit
    Oct 2013
    Ort
    Appenzell
    Beiträge
    240

    Ich steuere den harmonyhub direkt von ips


    Gesendet von iPhone mit Tapatalk

  3. #3
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,306

    Zitat Zitat von kasi635 Beitrag anzeigen
    Ist es möglich die HA-Bridge gemeinsam auf einem Rasperry mit IP-Symocon zu betreiben?
    Ja Du kannst die HA-Bridge auch parallel auf einem Raspberry installieren. Theoretisch könnte auch IPS eine Hue Bridge emulieren, das Problem ist aber, dass auf Port 80 bei richtigen Servern meist ein HTTP Server läuft, daher hab ich da nichts eingebaut, das würde kollidieren. Wer das also nutzten will findet mit der HA-Bridge eine gute Möglichkeit HUE zu emulieren und von dort dann einen HTTP Request an IPS zu schicken. Wichtig ist das der Port den die HA-Bridge braucht, nicht von von einem anderen Dienst wie einem HTTP Server benutzt wird. Eine andere Möglichkeit die SmartHome Tasten zu belegen außer Hue kenne ich persönlich auch nicht, da wird sich wohl auch bei Logitech in der Richtung leider nichts tun.

  4. #4
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,306

    Zitat Zitat von kasi635 Beitrag anzeigen
    Könnt Ihr mir da einen guten TIpp geben, wie ich da vorgehen sollte?
    Wenn Probleme gibt einfach melden, eine Anleitung kann ich jetzt auf die Schnelle keine schreiben.
    Erst mal HA-Bridge installieren und in Betrieb nehmen.

    Dann in IP-Symcon ein Skript z.B. HA-Brige Interface erstellen, dass Dir die Daten aus der HA-Bridge entgegen nimmt. Unter Kerninstanzen -> Webhook einen neuen Webhook anlegen der auf das Skript HA-Brige Interface zeigt z.B. /hook/habridge

    Ein Skript sind in groben Zügen so aus
    PHP-Code:
    <?
    if(isset($_GET["state"]) && isset($_GET["light"]))
    {
    IPS_LogMessage("WebHook HA-Bridge"print_r($_GETtrue));
    $state $_GET["state"];
    switch (
    $_GET["light"]) {

    case 
    "RGB1":
        
        if(
    $state == "on")
        {
            
    SetValue(29407 /*[Geräte\HA-Bridge\HA Status]*/true);
        }
        else
        {
            
    SetValue(29407 /*[Geräte\HA-Bridge\HA Status]*/false);
        }
        
        break;
    case 
    "RGB2":
        
        if(
    $state == "on")
        {
            
    I2GRGB_Set_Status(29056true); // Objekt ID ergänzen
        
    }
        else
        {
            
    I2GRGB_Set_Status(29056false); // Objekt ID ergänzen
        
    }
        
        break;
    case 
    "RGB3":
        
        if(
    $state == "on")
        {
            
    I2GRGB_Set_Status(29056true); // Objekt ID ergänzen
        
    }
        else
        {
            
    I2GRGB_Set_Status(29056false); // Objekt ID ergänzen
        
    }
        
        break;
    case 
    "RGB4":
        
        if(
    $state == "on")
        {
            
    I2GRGB_Set_Status(29056true); // Objekt ID ergänzen
        
    }
        else
        {
            
    I2GRGB_Set_Status(29056false); // Objekt ID ergänzen
        
    }
        
        break;
    case 
    "Arbeitszimmer":
        
        if(
    $state == "on")
        {
            
    HM_WriteValueBoolean(21790 /*[Geräte\Homematic\Räume\Büro\Arbeitszimmer Licht]*/"STATE"true); // Objekt ID ergänzen
        
    }
        else
        {
            
    HM_WriteValueBoolean(21790 /*[Geräte\Homematic\Räume\Büro\Arbeitszimmer Licht]*/"STATE"false); // Objekt ID ergänzen
        
    }
        break;
    case 
    "Beamer":
        if(
    $state == "on")    {
            
    HM_WriteValueBoolean(50719 /*[Geräte\Homematic\Räume\Wohnzimmer\Beamer Schaltaktor]*/"STATE"true); // Objekt ID ergänzen
        
    }
        else
        {
            
    HM_WriteValueBoolean(50719 /*[Geräte\Homematic\Räume\Wohnzimmer\Beamer Schaltaktor]*/"STATE"false); // Objekt ID ergänzen
        
    }
        break;
    case 
    "Subwoofer":
        
        if(
    $state == "on")
        {
            
    HM_WriteValueBoolean(14559 /*[Geräte\Homematic\Räume\Wohnzimmer\Subwoofer Schaltaktor]*/"STATE"true); // Objekt ID ergänzen
        
    }
        else
        {
            
    HM_WriteValueBoolean(14559 /*[Geräte\Homematic\Räume\Wohnzimmer\Subwoofer Schaltaktor]*/"STATE"false); // Objekt ID ergänzen
        
    }
        
        break;
    case 
    "Couch":
        
        if(
    $state == "on")
        {
            
    IPS_RunScript(48657 /*[Geräte\Homematic\Homematic Scripte\Erdgeschoss\Wohnzimmer\Deckenlampe Couch\Deckenlampe Couch Licht an]*/);
        }
        else
        {
            
    IPS_RunScript(30712 /*[Geräte\Homematic\Homematic Scripte\Erdgeschoss\Wohnzimmer\Deckenlampe Couch\Deckenlampe Couch Licht aus]*/);
        }
        
        break;
    case 
    "Esstisch":
        
        if(
    $state == "on")
        {
            
    IPS_RunScript(56100 /*[Geräte\Homematic\Homematic Scripte\Erdgeschoss\Wohnzimmer\Deckenlampe Esstisch\Deckenlampe Esstisch Licht an]*/);
        }
        else
        {
            
    IPS_RunScript(42299 /*[Geräte\Homematic\Homematic Scripte\Erdgeschoss\Wohnzimmer\Deckenlampe Esstisch\Deckenlampe Esstisch Licht aus]*/);
        }
        
        break;
    case 
    "Fonzo":
        
        if(
    $state == "on")
        {
            
    HM_WriteValueBoolean(21790 /*[Geräte\Homematic\Räume\Büro\Arbeitszimmer Licht]*/"STATE"true); // Objekt ID ergänzen
        
    }
        else
        {
            
    HM_WriteValueBoolean(21790 /*[Geräte\Homematic\Räume\Büro\Arbeitszimmer Licht]*/"STATE"false); // Objekt ID ergänzen
        
    }
        
        break;                            

    }
    }
    elseif(isset(
    $_GET["intensity"]) && isset($_GET["light"]))
    {
        
    $intensity $_GET["intensity"];
        switch (
    $_GET["light"]) {

    case 
    "RGB1":
        
    $intensity $intensity/100;
        
    SetValue(26592 /*[Geräte\HA-Bridge\HA RGB Intensity]*/$intensity);
        
        break;
    case 
    "RGB2":
        
        
    // Befehl zur Hellligkeit einstellen
        
        
    break;
    case 
    "RGB3":
        
        
    // Befehl zur Hellligkeit einstellen
        
        
    break;
    case 
    "RGB4":
        
        
    // Befehl zur Hellligkeit einstellen
        
        
    break;
    case 
    "Couch":
        
    //SetValue(35921 /*[Geräte\HA-Bridge\Intensity]*/, $intensity);
        
    $intensity $intensity/100;
        
        
    HM_WriteValueFloat(19602 /*[Geräte\Homematic\Räume\Wohnzimmer\Deckenlampe Couch:4]*/"LEVEL"$intensity); //Gerät auf x% dimmen
         
    if($intensity 0)
        {
            
    SetValueBoolean(25149 /*[Geräte\Homematic\Räume\Wohnzimmer\Deckenlampe Couch\Zustand]*/true);
        }
        else
        {
            
    SetValueBoolean(25149 /*[Geräte\Homematic\Räume\Wohnzimmer\Deckenlampe Couch\Zustand]*/false);
        }
        
        break;
    case 
    "Esstisch":
        
    //SetValue(35921 /*[Geräte\HA-Bridge\Intensity]*/, $intensity);
        
    $intensity $intensity/100;
        
    HM_WriteValueFloat(29883 /*[Geräte\Homematic\Räume\Wohnzimmer\Deckenlampe Esstisch:4]*/"LEVEL"$intensity); //Gerät auf x% dimmen
         
    if($intensity 0)
        {
            
    SetValueBoolean(52454 /*[Geräte\Homematic\Räume\Wohnzimmer\Deckenlampe Esstisch\Zustand]*/true);
        }
        else
        {
            
    SetValueBoolean(52454 /*[Geräte\Homematic\Räume\Wohnzimmer\Deckenlampe Esstisch\Zustand]*/false);
        }
        
        
        break;                            
    }
    }
    elseif(isset(
    $_GET["color"]) && isset($_GET["light"]))
    {
    $color $_GET["color"];
    SetValue(53466 /*[Geräte\HA-Bridge\Color Test]*/$color);
    }

    elseif(isset(
    $_GET["state"]) && isset($_GET["colorred"]) && isset($_GET["colorgreen"]) && isset($_GET["colorblue"]) && isset($_GET["light"]))
    {
        
    $state $_GET["state"];
        
    $R $_GET["colorred"];
        
    $G $_GET["colorgreen"];
        
    $B $_GET["colorblue"];
        switch (
    $_GET["light"]) {

    case 
    "RGB1":
        
        if(
    $state == "on")
        {
            
    I2GRGB_Set_Status(29056true); // Objekt ID ergänzen
            // Befehl für Farbe
            
    I2GRGB_Set_RGB(12345$R$G$B); // 12345 Ist die Objekt ID der Instanz
        
    }
        else
        {
            
    I2GRGB_Set_Status(29056false); // Objekt ID ergänzen
        
    }
        
        
        break;
    case 
    "RGB2":
        
        if(
    $state == "on")
        {
            
    I2GRGB_Set_Status(29056true); // Objekt ID ergänzen
            // Befehl für Farbe
            
    I2GRGB_Set_RGB(12345$R$G$B); // 12345 Ist die Objekt ID der Instanz
        
    }
        else
        {
            
    I2GRGB_Set_Status(29056false); // Objekt ID ergänzen
        
    }
        
        
        break;
    case 
    "RGB3":
        
        if(
    $state == "on")
        {
            
    I2GRGB_Set_Status(29056true); // Objekt ID ergänzen
            // Befehl für Farbe
            
    I2GRGB_Set_RGB(12345$R$G$B); // 12345 Ist die Objekt ID der Instanz
        
    }
        else
        {
            
    I2GRGB_Set_Status(29056false); // Objekt ID ergänzen
        
    }
        
        break;
    case 
    "RGB4":
        
        if(
    $state == "on")
        {
            
    I2GRGB_Set_Status(29056true); // Objekt ID ergänzen
            // Befehl für Farbe
            
    I2GRGB_Set_RGB(12345$R$G$B); // 12345 Ist die Objekt ID der Instanz
        
    }
        else
        {
            
    I2GRGB_Set_Status(29056false); // Objekt ID ergänzen
        
    }
        
        
        break;                        
    }
    }
    else
    {
        echo 
    "Das Skript kann nur durch einen Webhook aufgerufen werden";
    }

    // I2GRGB_Set_RGB(Int $R, Int $G, Int $B)
    // I2GRGB_Set_Status(Bool $value)
    // list($r, $g, $b) = $this->Hex2RGB($Value);
    //                $this->Set_RGB($r, $g, $b);

    function Hex2RGB($Hex)
        {
            
    $r = (($Hex >> 16) & 0xFF);
            
    $g = (($Hex >> 8) & 0xFF);
            
    $b = (($Hex >> 0) & 0xFF);    
        return array(
    $r$g$b);
        }
        
        
    ?>
    In der HA-Bridge must Du dann eine URL eintragen bei einem Befehl. Der befehl wird dann aufgerufen und damit IP-Symcon getriggert.
    z.B.
    Code:
    http://192.168.1.20:3777/hook/habridge?light=RGB1&colorred=255&colorgreen=255&colorblue=255&state=on
    Die Variablen in dem Skript bzw. Geräte must Du logischerweise für Dich anpassen, ich weis ja nicht was Du konkret schalten willst. Ansonsten fragen falls es Probleme gibt.

    Was Du zusätzlich beachten must ist der Logitech Hub kann nur eine Hue Bridge erkennen, d.h. es funktioniert nicht mit HA-Bridge und Hue-Bridge.
    Um das zu lösen must Du die Geräte der HUE-Bridge in der HA-bridge alle einlesen und auf Passtrough stellen. Dann nimmst du die Hue-Bridge kurz vom Ntz und die HA-Bridge ins Netz und lässt den Harmony Hub nach der HA Bridge suchen und koppelst die HA-Bridge an den Logitech Hub. Dann kannst Du die Hue-Bridge wieder in Betrieb nhemen. Jetzt sollte alles was vom Logitech Hub gesendet wird immer an die HA-Bridge gesendet werden und von dort an die HUE-Bridge durchgereicht werden. So kannst Du also alles schalten die geräte der HA Bridge und der Hue Bridge.

    Alternative zu Passtrough in der HA-Bridge ist es einfach alles was in der HA-Bridge ankommt an IP-Symcon durchzuleiten und dann die Hue Lampen aus IP-symcon zu schalten.
    Geändert von Fonzo (08.10.18 um 18:37 Uhr)

  5. #5
    Registriert seit
    Sep 2018
    Beiträge
    36

    Vielen Dank Fonzo für deine tolle Anleitung

  6. #6
    Registriert seit
    Sep 2018
    Beiträge
    36

    Hallo Fonzo

    Ich habe jetzt mal alles so probiert, wie du es beschrieben hast. Die HA Bridge läuft und wurde auch schon vom Harmony Hub erkannt und aktiviert. Ich habe in der HA Bridge mal ein Test device angelegt, welches mir auch in der Harmony Umgebung angezeigt wird. Wenn ich jetzt allerdings von der HA Bridge aus einen Test an IPS sende, dann wird das Script in IPS nicht aktiviert. Kann es sein, dass das Script nicht erreicht wird? Ich hatte Probleme mit der Erstellung des Webhooks da mir immer "hook muss mit /hook/ als Präfix beginnen" angezeigt wurde. Ich habe daraufhin in der Instanzkonfiguration die neue Instanz /hook/ benannt und es wurde übernommen.

    Wie kann ich denn nun alle Geräte von der Hue Bridge übernehmen und auf Passthrough stellen?

    Besten Dank für deine Hilfe

  7. #7
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,306

    Zitat Zitat von kasi635 Beitrag anzeigen
    Wie kann ich denn nun alle Geräte von der Hue Bridge übernehmen und auf Passthrough stellen?
    Wenn der Harmony Hub das Gerät der HA-Bridge gefunden hat, hast Du schon die wichtigste Hürde genommen.

    Kannst Du mal bitte den Inhalt Deines Webhook Skripts posten sowie einen Screenshot von den Einstellungen der HA Bridge sowie ein Screenshot der Webhook Instanz. Dann kann man hoffentlich den Einstellungsfehler schnell lokalisieren.

  8. #8
    Registriert seit
    Sep 2018
    Beiträge
    36

    Hi Fonzo

    Danke für die Schnelle Antwort. Ich habe, wie gesagt, einfach mal ein Testdevice angelegt und versuchte in IPS eine Testvariable zu beschreiben. Meine Einstellungen in der HA Bridge schauen so aus:
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Bildschirmfoto 2018-10-19 um 13.54.16.jpg 
Hits:	79 
Größe:	193.6 KB 
ID:	46051

    Dein Script habe ich mal so gelassen. Lediglich im ersten Case (RGB1) habe ich versucht eine Boolean Variable zu beschreiben.

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

Name:	Bildschirmfoto 2018-10-19 um 13.53.32.jpg 
Hits:	60 
Größe:	167.6 KB 
ID:	46052

    anbei noch die weiteren Screenshots:
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Bildschirmfoto 2018-10-19 um 13.53.20.jpg 
Hits:	48 
Größe:	151.9 KB 
ID:	46053
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Bildschirmfoto 2018-10-19 um 13.53.42.jpg 
Hits:	45 
Größe:	128.4 KB 
ID:	46054
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	Bildschirmfoto 2018-10-19 um 13.53.57.jpg 
Hits:	57 
Größe:	165.6 KB 
ID:	46055

  9. #9
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    7,306

    Zitat Zitat von kasi635 Beitrag anzeigen
    Meine Einstellungen in der HA Bridge schauen so aus:
    Das ist nicht korrekt schau mal so:
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	habridge.png 
Hits:	90 
Größe:	48.0 KB 
ID:	46057

    Der Hook ist auch falsch. Wenn Du mehrere Hooks anlegen solltest funktiont das dann nicht. Ein Webhook fängt bei IP-Symcon immer mit /hook an danach kannst Du das individuell anpassen. Es würde sich z.B. /hook/habridge anbieten.

    In der HA Bridge muss dann
    Code:
    http://<IP Adresse IP Symcon>:3777/hook/habridge
    stehen.

  10. #10
    Registriert seit
    Sep 2018
    Beiträge
    36

    Besten Dank es hat funktioniert! Ich kann nun eine Testvariable beschreiben. Wenn ich allerdings im im HA Bridge Script in IPS versuche Variablen von Homematik oder auch Hue Lampen Aktoren zu beschreiben (im konkreten Fall Lampen) dann ändert sich nichts. Es schein so als wenn die Variablen der Aktoren wieder überschrieben werden. Wenn ich diese Variablen in IPS editiere ändert sich zwar der Wert aber es ändert sich nichts am Status der Lampen. D.h das Licht bleibt an oder aus, je nachdem welcher Status vorher war. Kann es sein, dass ich Variablen der Homematik ( im konkreten Fall ein Dimm Autor) oder Hue Lampen nicht beschreiben kann?

    Vielen Dank für deine Hilfe

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 05.12.16, 11:33
  2. Antworten: 50
    Letzter Beitrag: 22.05.15, 11:32
  3. Homematic Komponenten mit Akku betreiben
    Von toddy im Forum HomeMatic
    Antworten: 6
    Letzter Beitrag: 29.09.13, 09:37
  4. homematic und FS 20 Geräte gemeinsam betreiben
    Von technikus im Forum Sonstige Funkkomponenten / Wetterstationen
    Antworten: 3
    Letzter Beitrag: 27.09.10, 11:01

Stichworte