Hue/LivingColors - CCU.IO Adapter und yahui Integration

WebUIs (DashUI, yahui, ...), Adapter (Hue, IRTrans, Sonos, ...), Logging, Scripting

Moderator: Co-Administratoren

hobbyquaker
Beiträge: 3978
Registriert: 12.07.2009, 20:01
Hat sich bedankt: 17 Mal
Danksagung erhalten: 176 Mal
Kontaktdaten:

Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von hobbyquaker » 05.11.2013, 17:42

Hallo!

Ab sofort ist der Philips Hue Adapter (CCU.IO 0.9.70) einsatzbereit, auch yahui (1.1.6) unterstützt nun Hue/LivingColors.

In CCU.IO settings.js können Hue Lampen Räumen, Gewerken und Favoriten zugeordnet werden.

So sieht das Stand heute in yahui aus:
Bildschirmfoto 2013-11-05 um 17.02.10.png
Bildschirmfoto 2013-11-05 um 17.01.56.png
...und so sehen die Objekte in CCU.IO aus:

Code: Alles auswählen

 "90000": {
    "TypeName": "DEVICE",
    "HssType": "HUE-BRIDGE",
    "Address": "HUE",
    "Interface": "CCU.IO",
    "Channels": [
      90001,
      90010,
      90019,
      90030,
      90041
    ]
  },
  "90001": {
    "Name": "Color light 1 1",
    "TypeName": "CHANNEL",
    "Address": "HUE.1",
    "HssType": "HUE_COLOR_LIGHT",
    "DPs": {
      "STATE": 90002,
      "LEVEL": 90003,
      "HUE": 90004,
      "SAT": 90005,
      "ALERT": 90006,
      "RAMP_TIME": 90007,
      "CMD_WAIT": 90008,
      "UNREACH": 90009
    },
    "Parent": 90000
  },
  "90002": {
    "Name": "HUE.1.STATE",
    "hueType": "on",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": true,
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90003": {
    "Name": "HUE.1.LEVEL",
    "hueType": "bri",
    "TypeName": "HSSDP",
    "Value": 0,
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90004": {
    "Name": "HUE.1.HUE",
    "hueType": "hue",
    "TypeName": "HSSDP",
    "Value": 0,
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90005": {
    "Name": "HUE.1.SAT",
    "hueType": "sat",
    "TypeName": "HSSDP",
    "Value": 0,
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90006": {
    "Name": "HUE.1.ALERT",
    "ValueType": 2,
    "hueType": "alert",
    "TypeName": "HSSDP",
    "Value": "none",
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90007": {
    "Name": "HUE.1.RAMP_TIME",
    "hueType": "transitiontime",
    "TypeName": "HSSDP",
    "Value": null,
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90008": {
    "Name": "HUE.1.CMD_WAIT",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": false,
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90009": {
    "Name": "HUE.1.UNREACH",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": true,
    "Parent": 90001,
    "ValueUnit": ""
  },
  "90010": {
    "Name": "LivingColor",
    "TypeName": "CHANNEL",
    "Address": "HUE.2",
    "HssType": "HUE_COLOR_LIGHT",
    "DPs": {
      "STATE": 90011,
      "LEVEL": 90012,
      "HUE": 90013,
      "SAT": 90014,
      "ALERT": 90015,
      "RAMP_TIME": 90016,
      "CMD_WAIT": 90017,
      "UNREACH": 90018
    },
    "Parent": 90000
  },
  "90011": {
    "Name": "HUE.2.STATE",
    "hueType": "on",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": false,
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90012": {
    "Name": "HUE.2.LEVEL",
    "hueType": "bri",
    "TypeName": "HSSDP",
    "Value": 0,
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90013": {
    "Name": "HUE.2.HUE",
    "hueType": "hue",
    "TypeName": "HSSDP",
    "Value": 13762,
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90014": {
    "Name": "HUE.2.SAT",
    "hueType": "sat",
    "TypeName": "HSSDP",
    "Value": 254,
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90015": {
    "Name": "HUE.2.ALERT",
    "ValueType": 2,
    "hueType": "alert",
    "TypeName": "HSSDP",
    "Value": "select",
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90016": {
    "Name": "HUE.2.RAMP_TIME",
    "hueType": "transitiontime",
    "TypeName": "HSSDP",
    "Value": null,
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90017": {
    "Name": "HUE.2.CMD_WAIT",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": false,
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90018": {
    "Name": "HUE.2.UNREACH",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": false,
    "Parent": 90010,
    "ValueUnit": ""
  },
  "90019": {
    "Name": "Hue Lamp 1",
    "TypeName": "CHANNEL",
    "Address": "HUE.3",
    "HssType": "HUE_EXTENDED_COLOR_LIGHT",
    "DPs": {
      "STATE": 90020,
      "LEVEL": 90021,
      "HUE": 90022,
      "SAT": 90023,
      "ALERT": 90024,
      "RAMP_TIME": 90025,
      "CMD_WAIT": 90026,
      "UNREACH": 90027,
      "CT": 90028,
      "COLORMODE": 90029
    },
    "Parent": 90000
  },
  "90020": {
    "Name": "HUE.3.STATE",
    "hueType": "on",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": true,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90021": {
    "Name": "HUE.3.LEVEL",
    "hueType": "bri",
    "TypeName": "HSSDP",
    "Value": 254,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90022": {
    "Name": "HUE.3.HUE",
    "hueType": "hue",
    "TypeName": "HSSDP",
    "Value": 14982,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90023": {
    "Name": "HUE.3.SAT",
    "hueType": "sat",
    "TypeName": "HSSDP",
    "Value": 140,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90024": {
    "Name": "HUE.3.ALERT",
    "ValueType": 2,
    "hueType": "alert",
    "TypeName": "HSSDP",
    "Value": "select",
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90025": {
    "Name": "HUE.3.RAMP_TIME",
    "hueType": "transitiontime",
    "TypeName": "HSSDP",
    "Value": null,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90026": {
    "Name": "HUE.3.CMD_WAIT",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": false,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90027": {
    "Name": "HUE.3.UNREACH",
    "ValueType": 2,
    "TypeName": "HSSDP",
    "Value": false,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90028": {
    "Name": "HUE.3.CT",
    "hueType": "ct",
    "TypeName": "HSSDP",
    "Value": 362,
    "Parent": 90019,
    "ValueUnit": ""
  },
  "90029": {
    "Name": "HUE.3.COLORMODE",
    "hueType": "colormode",
    "TypeName": "HSSDP",
    "Value": "ct",
    "Parent": 90019,
    "ValueUnit": ""
  }
Ein paar Dinge (Gruppen-API, Verbesserung des Polling-Mechanismus, DashUI Hue-Widgets) stehen noch auf der Todo.

Grüße

Benutzeravatar
baufuzzis
Beiträge: 94
Registriert: 16.01.2012, 07:22

Re: AW: Hue/LivingColors - CCU.IO Adapter und yahui Integrat

Beitrag von baufuzzis » 05.11.2013, 18:16

Wow, wenn ich hier die Hue Integration sehe, läuft mir schon das Wasser einer möglichen ArtNet DMX Idee im Mund zusammen :mrgreen:

Sieht top aus, bei mir läuft nur alles lED/Farbige auf DMX ;)

Gruß
Jakob
327 Kanäle in 44 Geräten und 41 CUxD-Kanäle in 15 CUxD-Geräten / ArtDMX / 1wire -> LXCCU & iobroker
14x HMW-IO-12-Sw7-DR, 16x HMW-LC-Bl1-DR, 1x HMW-IO-12-Sw14-DR, 1x HM-Sec-MDIR, 1x HM-Sen-MDIR-O-2, 1x HM-CC-SCD, 2x CUX02, 1x HM-Sec-SC-2, 1x CUX06, 1x HM-CC-TC, 10x CUX28, 6x HM-Sec-SD, 1x HM-Sec-SD-Team, 2x CUX13

hobbyquaker
Beiträge: 3978
Registriert: 12.07.2009, 20:01
Hat sich bedankt: 17 Mal
Danksagung erhalten: 176 Mal
Kontaktdaten:

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von hobbyquaker » 05.11.2013, 18:19

ArtNet steht auf der Todo :-)

Arminhh
Beiträge: 284
Registriert: 09.05.2011, 09:18

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von Arminhh » 05.11.2013, 19:18

Hallo Hobbyquaker,
super!!!
Beim ersten aktivieren hat die erste Hue sofort funktioniert. Jetzt wollte ich die Räume anpassen. Jetzt startet CCU.io nicht mehr. Denke das ich noch was falsch gemacht habe!
Frage wenn ich mehr Lampen einfügen möchte, müssen dann am Ende die Anzahl der } geändert werden? Ist firstid und favs beliebig? Längen und Breitengrad ist das auch noch für die Hue?
mfg und DAnke
Arminhh
Hier mal das Script mit meinen Änderungen.
hue: {
enabled: true,
settings: {
bridge: "192.168.167.101",
user: "hab ich eingetragen",
firstId: 90000,
pollingEnabled: true,
pollingInterval: 30000,
lamps: {
1: {
funcs: ["Licht"]
},
2: {
rooms: ["Wohnzimmer"],
funcs: ["Licht"],
favs: [10079]

},
3: {
rooms: ["Wohnzimmer"],
funcs: ["Licht"],
favs: [10079]
},
4: {
rooms: ["Schlafzimmer"],
funcs: ["Licht"]
favs: [10079]
},
5: {
rooms: ["Tanksäule"],
funcs: ["Licht"],
favs: [10079]
}
}
}
}
},

scriptEngineEnabled: false,

// Längen- und Breitengrad für Astro-Funktion der Script-Engine
longitude: 9.1833,
latitude: 48.7667

Arminhh
Beiträge: 284
Registriert: 09.05.2011, 09:18

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von Arminhh » 05.11.2013, 19:28

fehlendes Komma gefunden hängt jetzt aber bei Loading RegaData

hobbyquaker
Beiträge: 3978
Registriert: 12.07.2009, 20:01
Hat sich bedankt: 17 Mal
Danksagung erhalten: 176 Mal
Kontaktdaten:

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von hobbyquaker » 05.11.2013, 19:29

Hallo Armin!

Paste mal bitte die komplette settings.ini und benutze dabei den Code-Button hier im Forum, dann bleibt es besser lesbar.

Wichtig ist: Wenn Du Räume/Gewerke mit Namen ansprichst muss dieser Name eindeutig sein, d.h. es darf nicht der selbe Name für Variablen/Kanäle/.. verwendet worden sein. Falls das der Fall ist musst Du über IDs gehen. Die 10079 bei den Favoriten ist eine ID von mir, die gibt es bei Dir vermutlich auch nicht.

Arminhh
Beiträge: 284
Registriert: 09.05.2011, 09:18

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von Arminhh » 05.11.2013, 19:33

Code: Alles auswählen

var settings = {

    //  Port auf dem der Webserver und Socket.IO lauscht
    ioListenPort: 1100,
    // Port auf dem der https Webserver lauscht - falls nicht benötigt auskommentiert belassen
    //ioListenPortSsl: 8443,

    // Passwort-Schutz (HTTP Basic Authentication) - Achtung! Wirkt nur auf http(s), Websockets bleiben ungeschützt!
    authentication: {
        enabled: false,
        enabledSsl: false,
        user: "admin",
        password: "password"
    },

    // IP-Adresse der Homematic CCU
    ccuIp: "192.168.167.10",
    binrpc: {

        // IP-Adresse des CCU.IO-Servers (wird der CCU mitgeteilt für RPC Init)
        listenIp: "192.168.167.125",

        // Port auf dem der xmlrpc_bin:// Server lauscht
        listenPort: 2101,
        inits: [

            // CUxD Init durchführen
            //{ id: "io_cuxd",    port: 8701 },
            // BidCos-Wired Init durchführen
            //{ id: "io_wired",   port: 2000 },
            // BidCos-RF Init durchführen
            { id: "io_rf",      port: 2001 }
        ]
    },
    stringTableLanguage: "de",
    logging: {
        enabled: true,
        file: "devices-variables.log",
        move: true,
        varChangeOnly: true,
        writeInterval: 60
    },
    regahss: {
        // Variablen-Werte von der CCU Pollen
        pollData: true,
        // Interval für Polling in milli-Sekunden
        pollDataInterval: 15000,

        pollDataTrigger: "BidCos-RF.BidCoS-RF:50.PRESS_LONG",

        metaScripts: [
            "favorites",
            "variables",
            "programs",
            "rooms",
            "functions",
            "devices",
            "channels",
            "datapoints"
        ]
    },
    datastorePath: __dirname+"/datastore/",
    stats: true,
    statsIntervalMinutes: 15,

    adaptersEnabled: true,
    adapters: {
        yr: {
            enabled: false,
            mode: "periodical",
            period: 120,     // Minutes
            settings: {
                location: "Germany/Baden-W%C3%BCrttemberg/Stuttgart"
            }
        },
        mysql: {
            enabled: false,
            settings: {
                host: "127.0.0.1",
                user: "root",
                pass: "root",
                db: "ccu_io",
                enableEventLog: true,
                logChangesOnly: false
            }
        },
        hue: {
            enabled: true,
            settings: {
                bridge: "192.168.167.101",
                user: "arminorant",
                firstId: 90000,
                pollingEnabled: true,
                pollingInterval: 30000,
                lamps: {
                    1: {
                        funcs: ["Licht"]
                    },
                    2: {
                        rooms: ["Wohnzimmer"],
                        funcs: ["Licht"],
                        favs: [10079]

                    },
                    3: {
                        rooms: ["Wohnzimmer"],
                        funcs: ["Licht"],
                        favs: [10079]
                    },
                    4: {
			   rooms: ["Schlafzimmer"],
                        funcs: ["Licht"],
			   favs: [10079]
                    },
                    5: {
                        rooms: ["Tanksäule"],
                        funcs: ["Licht"],
                        favs: [10079]
                    }
                }
            }
        }
    },

    scriptEngineEnabled: false,

    // Längen- und Breitengrad für Astro-Funktion der Script-Engine
    longitude: 9.1833,
    latitude: 48.7667

};
Bedeutet das ich für jede Hue eine Variable unter Homematic einrichten muss ?

Arminhh
Beiträge: 284
Registriert: 09.05.2011, 09:18

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von Arminhh » 05.11.2013, 19:33

Code: Alles auswählen

var settings = {

    //  Port auf dem der Webserver und Socket.IO lauscht
    ioListenPort: 1100,
    // Port auf dem der https Webserver lauscht - falls nicht benötigt auskommentiert belassen
    //ioListenPortSsl: 8443,

    // Passwort-Schutz (HTTP Basic Authentication) - Achtung! Wirkt nur auf http(s), Websockets bleiben ungeschützt!
    authentication: {
        enabled: false,
        enabledSsl: false,
        user: "admin",
        password: "password"
    },

    // IP-Adresse der Homematic CCU
    ccuIp: "192.168.167.10",
    binrpc: {

        // IP-Adresse des CCU.IO-Servers (wird der CCU mitgeteilt für RPC Init)
        listenIp: "192.168.167.125",

        // Port auf dem der xmlrpc_bin:// Server lauscht
        listenPort: 2101,
        inits: [

            // CUxD Init durchführen
            //{ id: "io_cuxd",    port: 8701 },
            // BidCos-Wired Init durchführen
            //{ id: "io_wired",   port: 2000 },
            // BidCos-RF Init durchführen
            { id: "io_rf",      port: 2001 }
        ]
    },
    stringTableLanguage: "de",
    logging: {
        enabled: true,
        file: "devices-variables.log",
        move: true,
        varChangeOnly: true,
        writeInterval: 60
    },
    regahss: {
        // Variablen-Werte von der CCU Pollen
        pollData: true,
        // Interval für Polling in milli-Sekunden
        pollDataInterval: 15000,

        pollDataTrigger: "BidCos-RF.BidCoS-RF:50.PRESS_LONG",

        metaScripts: [
            "favorites",
            "variables",
            "programs",
            "rooms",
            "functions",
            "devices",
            "channels",
            "datapoints"
        ]
    },
    datastorePath: __dirname+"/datastore/",
    stats: true,
    statsIntervalMinutes: 15,

    adaptersEnabled: true,
    adapters: {
        yr: {
            enabled: false,
            mode: "periodical",
            period: 120,     // Minutes
            settings: {
                location: "Germany/Baden-W%C3%BCrttemberg/Stuttgart"
            }
        },
        mysql: {
            enabled: false,
            settings: {
                host: "127.0.0.1",
                user: "root",
                pass: "root",
                db: "ccu_io",
                enableEventLog: true,
                logChangesOnly: false
            }
        },
        hue: {
            enabled: true,
            settings: {
                bridge: "192.168.167.101",
                user: "arminorant",
                firstId: 90000,
                pollingEnabled: true,
                pollingInterval: 30000,
                lamps: {
                    1: {
                        funcs: ["Licht"]
                    },
                    2: {
                        rooms: ["Wohnzimmer"],
                        funcs: ["Licht"],
                        favs: [10079]

                    },
                    3: {
                        rooms: ["Wohnzimmer"],
                        funcs: ["Licht"],
                        favs: [10079]
                    },
                    4: {
			   rooms: ["Schlafzimmer"],
                        funcs: ["Licht"],
			   favs: [10079]
                    },
                    5: {
                        rooms: ["Tanksäule"],
                        funcs: ["Licht"],
                        favs: [10079]
                    }
                }
            }
        }
    },

    scriptEngineEnabled: false,

    // Längen- und Breitengrad für Astro-Funktion der Script-Engine
    longitude: 9.1833,
    latitude: 48.7667

};
Bedeutet das ich für jede Hue eine Variable unter Homematic einrichten muss ?

hobbyquaker
Beiträge: 3978
Registriert: 12.07.2009, 20:01
Hat sich bedankt: 17 Mal
Danksagung erhalten: 176 Mal
Kontaktdaten:

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von hobbyquaker » 05.11.2013, 19:38

Arminhh hat geschrieben:fehlendes Komma gefunden hängt jetzt aber bei Loading RegaData
Oh - tritt bei mir auch auf, ich hab da ein Fehler gemacht, muss schnell eine neue CCU.IO Version basteln...
Arminhh hat geschrieben:Bedeutet das ich für jede Hue eine Variable unter Homematic einrichten muss ?
Nein, das ist nicht nötig.

Gib mir ein bisschen Zeit, ich versuche den Fehler sofort zu beheben.

Arminhh
Beiträge: 284
Registriert: 09.05.2011, 09:18

Re: Hue/LivingColors - CCU.IO Adapter und yahui Integration

Beitrag von Arminhh » 05.11.2013, 19:50

Hast alle Zeit der Welt !!
hobbyquaker hat geschrieben:Hallo Armin!
Falls das der Fall ist musst Du über IDs gehen. Die 10079 bei den Favoriten ist eine ID von mir, die gibt es bei Dir vermutlich auch nicht.
wo finde ich in HQ Webui die ID, bei Räumen und so ist das klar nur in den Favoriten sehe ich keine ID`s

Antworten

Zurück zu „CCU.IO“