Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. sitze seit gestern im dunkeln Hue Szenen script ausgefallen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

sitze seit gestern im dunkeln Hue Szenen script ausgefallen

Scheduled Pinned Locked Moved JavaScript
14 Posts 5 Posters 1.2k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • G Offline
    G Offline
    grooovie
    wrote on last edited by
    #1

    Hallo,

    ich hatte bisher immer folgendes Script laufen.

    var HueApi = require("node-hue-api").HueApi;
    
    
    var displayResult = function(result) {
    console.log(JSON.stringify(result, null, 2));
    };
    
     // Replace IP and username!!!
    
    var hostname = "IP meiner Bridge",
    username = "Token meiner Bridge",
    api;
    
    api = new HueApi(hostname, username)
    
     
    var groups_ = [],
    lights_ = [],
    objects_ = [];
    
    // Log JSON results
    var displayResults = function(result) {
    console.log('Reponse: '+JSON.stringify(result, null, 2));
    };
    
    // Parse Light Group 0 (All Lights)
    var parseGroup0 = function(result) {
    if (!result.lights){return} // Empty group
    
    var id = result.id,
        lights = result.lights,
        name = "All Lights";
    console.debug('group: '+name+', lights: '+lights);
    groups_[lights] = name;
    };
    
    // Parse Light Groups
    var parseGroups = function(result) {
    for (var i = 0; i < result.length; i++) {
        if (!result[i].lights){continue} // Empty group
        
        var id = result[i].id,
            lights = result[i].lights,
            name = result[i].name;
        console.debug('group: '+name+', lights: '+lights);
        groups_[lights] = name;
    }
    };
    
    // Parse Lights
    var parseLights = function(result) {
        for (var i = 0; i < result.length; i++) {
        var id = result[i].id,
            name = result[i].name;
        console.debug('light: '+name+', id: '+id);
        lights_[id] = name;
    } 
    };
    
    // Create States in ioBroker
    var createStates = function(result) {
        // Resync button
    createState('PhilipsHue.Scenes.Resync', false, {role: "button", name: 'Resync Philips Hue Groups, Lights and Scenes'});
    
    for (var i = 0; i < result.length; i++) {
        if (!result[i].appdata.data){continue} // skip internal szenes
    
        var id = result[i].id,
            lights = result[i].lights,
            name = result[i].name.replace(/"/g,''),
            pathname = name.replace(/ /g,'_');
        
        // Get light names
        var light_names = [];
        for (var j = 0; j < lights.length; j++) {
            var light_name = lights_[lights[j]];
            light_names.push(light_name);
        }
    
        // Room, group or lights linked with scene
        var group = 'Group: '+groups_[lights] || 'Lights: '+light_names.join(", ");
        
        // Create States and skip duplicates
        if (!objects_[lights+pathname]){
            console.debug('scene: '+name+', '+group);
            createState('PhilipsHue.Scenes.'+pathname+'.'+id, false, {role: "button", name: 'Scene: '+name+' ('+group+')'});
            objects_[lights+pathname] = true;
        }
    }
    };
    
    // Delete States
    function deleteStates(){
        console.log('Deleting current objects for scenes...');
    objects_ = [];
    $('javascript.0.PhilipsHue.Scenes.*').each(function (id) {
        deleteState(id);
    });
    }
    
    // Fetch data from Hue API
    function init(){
        api.getGroup(0, function(err, group0) {
            if (err) throw err;
            console.log('Processing group 0...');
        //displayResults(group0);
        parseGroup0(group0);
    });
    api.groups(function(err, groups) {
        if (err) throw err;
        console.log('Processing ' + groups.length + ' groups...');
        //displayResults(groups);
        parseGroups(groups);
    });
    
    api.lights(function(err, lights) {
        if (err) throw err;
        console.log('Processing ' + lights.lights.length + ' lights...');
        //displayResults(lights);
        parseLights(lights.lights);
    });
    
    
    api.scenes(function(err, scenes) {
        if (err) throw err;
        console.log('Processing ' + scenes.length + ' scenes...');
        //displayResults(scenes);
         createStates(scenes);
    });
    }
    
    // Init on start
    init();
    
    // Activate scene
    on({id: /^javascript\.0\.PhilipsHue.Scenes\./, val: true}, function (obj) {
        if (obj.id == 'javascript.0.PhilipsHue.Scenes.Resync'){return}
    sceneId = obj.id.split('.').pop();
    console.log('Activating '+obj.name);
    api.activateScene(sceneId, function(err, result) {
        if (err) throw err;
        displayResults(result);
    });
    setState(obj.id, false);
    });
    
    // Resync
    on({id: 'javascript.0.PhilipsHue.Scenes.Resync', val: true}, function (obj) {
    console.log('Resync triggered...');
    groups_ = [];
    lights_ = [];
    deleteStates();
    init();
    });
    
    /*
    schedule("0 20 * * *", function () {
    console.log('Resync triggered...');
    groups_ = [];
    lights_ = [];
    deleteStates();
    init();
    });*/
    

    seit heute kommt ein Fehler:
    Unbenannt.JPG

    ich benötige Hilfe, wir sitzen im Dunkeln :-)

    die Einzige Änderung die ich vorgenommen habe ist ich habe das Multihos enabled und einen slave host hinzugefügt.

    ZefauZ 1 Reply Last reply
    0
    • G Offline
      G Offline
      grooovie
      wrote on last edited by
      #2

      ich habe jetzt die virtuelle maschine in proxmox, in der iobroker installiert ist mit dem backup von vorgestern
      ersetzt. der fehler ist immernoch vorhanden. ich kann mir das nicht erklären.

      der fehler HueApi is not a constructor, was kann da das Problem plötzlich sein?

      paul53P 1 Reply Last reply
      0
      • OliverIOO Offline
        OliverIOO Offline
        OliverIO
        wrote on last edited by
        #3

        der fehler sagt, das hueapi nicht gefunden wird.
        wenn du auf linux bist, probier mal
        cd /opt/iobroker
        npm i node-hue-api

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        1 Reply Last reply
        0
        • G grooovie

          ich habe jetzt die virtuelle maschine in proxmox, in der iobroker installiert ist mit dem backup von vorgestern
          ersetzt. der fehler ist immernoch vorhanden. ich kann mir das nicht erklären.

          der fehler HueApi is not a constructor, was kann da das Problem plötzlich sein?

          paul53P Offline
          paul53P Offline
          paul53
          wrote on last edited by
          #4

          @grooovie
          node-hue-api ist als zusätzliches NPM-Modul in der Konfiguration der Javascript-Instanz eingetragen ?

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Reply Last reply
          0
          • G Offline
            G Offline
            grooovie
            wrote on last edited by
            #5

            @paul53 said in sitze seit gestern im dunkeln Hue Szenen script ausgefallen:

            node-hue-api

            js.JPG

            war nicht eingetragen, habe es jetzt nachgeholt, aber leider keine Änderung, Fehler immer noch gleich.

            @OliverIO
            danke, das habe ich gleich probiert, das kam dabei raus
            npm.JPG

            aber auch danach keine Veränderung, Fehler immer noch gleich.

            1 Reply Last reply
            0
            • G Offline
              G Offline
              grooovie
              wrote on last edited by
              #6

              im script ist auch eine rote wellenline, wenn man den mauszeiger darüber hält kommt immer ein tip was los ist, habe gerade bemerkt das man das in der 1. zeile nicht sieht und hab alles mal runtergerückt.

              api.JPG

              wie kann ich denn feststellen ob das modul geladen ist/wird ?

              OliverIOO 1 Reply Last reply
              0
              • G grooovie

                im script ist auch eine rote wellenline, wenn man den mauszeiger darüber hält kommt immer ein tip was los ist, habe gerade bemerkt das man das in der 1. zeile nicht sieht und hab alles mal runtergerückt.

                api.JPG

                wie kann ich denn feststellen ob das modul geladen ist/wird ?

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                wrote on last edited by OliverIO
                #7

                @grooovie
                die bibliothek wurde aktualisiert und der von dir verwendete v2 syntax wurde entfernt.
                Hier steht drin was man machen kann
                https://github.com/peter-murray/node-hue-api#v2-api-compatibility

                Allerdings ist immer noch nicht geklärt, ob die Bibiothek bei dir überhaupt installiert und geladen wird

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                1 Reply Last reply
                0
                • G Offline
                  G Offline
                  grooovie
                  wrote on last edited by
                  #8

                  GELÖST!

                  danke @OliverIO, ich hatte zwar schon über V3 gelesen und mir sowas gedacht, ich konnte mir aber nicht vorstellen das das über nacht einfach ersatzlos gestrichen wurde,

                  ich habe nun die übergangslösung (V2) installiert mit

                  npm install node-hue-api-v2-shim

                  dann habe ich in der Javascript Instanz das Modul "node-hue-api-v2-shim" hinzugefügt

                  und schon funktioniert alles wieder. wieder Licht yippi! und eine zufriedene Frau :-))))

                  jetzt habe ich genug zeit den code an V3 anzupassen.

                  Vielen Dank für Eure Hilfe und Eure Zeit!

                  OliverIOO paul53P 2 Replies Last reply
                  0
                  • G grooovie

                    GELÖST!

                    danke @OliverIO, ich hatte zwar schon über V3 gelesen und mir sowas gedacht, ich konnte mir aber nicht vorstellen das das über nacht einfach ersatzlos gestrichen wurde,

                    ich habe nun die übergangslösung (V2) installiert mit

                    npm install node-hue-api-v2-shim

                    dann habe ich in der Javascript Instanz das Modul "node-hue-api-v2-shim" hinzugefügt

                    und schon funktioniert alles wieder. wieder Licht yippi! und eine zufriedene Frau :-))))

                    jetzt habe ich genug zeit den code an V3 anzupassen.

                    Vielen Dank für Eure Hilfe und Eure Zeit!

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    wrote on last edited by
                    #9

                    @grooovie
                    über nacht war das nicht. die sind jetzt bei v4.
                    iobroker kann in diesem Feld kein version pinning, das geht nur manuell mit npm,
                    dann wäre es unverändert weitergelaufen, halt mit einer alten bibliothek

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    1 Reply Last reply
                    0
                    • G Offline
                      G Offline
                      grooovie
                      wrote on last edited by
                      #10

                      ok, verstehe, aber warum das nicht mit der alten bibliothek einfach weiterlaufen konnte kann ich mir nicht erklären

                      cashC 1 Reply Last reply
                      0
                      • G grooovie

                        GELÖST!

                        danke @OliverIO, ich hatte zwar schon über V3 gelesen und mir sowas gedacht, ich konnte mir aber nicht vorstellen das das über nacht einfach ersatzlos gestrichen wurde,

                        ich habe nun die übergangslösung (V2) installiert mit

                        npm install node-hue-api-v2-shim

                        dann habe ich in der Javascript Instanz das Modul "node-hue-api-v2-shim" hinzugefügt

                        und schon funktioniert alles wieder. wieder Licht yippi! und eine zufriedene Frau :-))))

                        jetzt habe ich genug zeit den code an V3 anzupassen.

                        Vielen Dank für Eure Hilfe und Eure Zeit!

                        paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by
                        #11

                        @grooovie sagte:

                        ich habe nun die übergangslösung (V2) installiert mit
                        npm install node-hue-api-v2-shim

                        Das war unnötig, denn die Installation erledigt der Javascript-Adapter nach Eintragen in die Konfiguration selbst.

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Reply Last reply
                        0
                        • G grooovie

                          ok, verstehe, aber warum das nicht mit der alten bibliothek einfach weiterlaufen konnte kann ich mir nicht erklären

                          cashC Offline
                          cashC Offline
                          cash
                          Most Active
                          wrote on last edited by
                          #12

                          @grooovie Du könntest auch einfach den Hue Adapter oder die Extended Version installieren. Beide unterstützen die Szenen von sich aus. Somit ist eigentlich schon sehr lange kein eigenes Script mehr nötig....

                          1 Reply Last reply
                          0
                          • G grooovie

                            Hallo,

                            ich hatte bisher immer folgendes Script laufen.

                            var HueApi = require("node-hue-api").HueApi;
                            
                            
                            var displayResult = function(result) {
                            console.log(JSON.stringify(result, null, 2));
                            };
                            
                             // Replace IP and username!!!
                            
                            var hostname = "IP meiner Bridge",
                            username = "Token meiner Bridge",
                            api;
                            
                            api = new HueApi(hostname, username)
                            
                             
                            var groups_ = [],
                            lights_ = [],
                            objects_ = [];
                            
                            // Log JSON results
                            var displayResults = function(result) {
                            console.log('Reponse: '+JSON.stringify(result, null, 2));
                            };
                            
                            // Parse Light Group 0 (All Lights)
                            var parseGroup0 = function(result) {
                            if (!result.lights){return} // Empty group
                            
                            var id = result.id,
                                lights = result.lights,
                                name = "All Lights";
                            console.debug('group: '+name+', lights: '+lights);
                            groups_[lights] = name;
                            };
                            
                            // Parse Light Groups
                            var parseGroups = function(result) {
                            for (var i = 0; i < result.length; i++) {
                                if (!result[i].lights){continue} // Empty group
                                
                                var id = result[i].id,
                                    lights = result[i].lights,
                                    name = result[i].name;
                                console.debug('group: '+name+', lights: '+lights);
                                groups_[lights] = name;
                            }
                            };
                            
                            // Parse Lights
                            var parseLights = function(result) {
                                for (var i = 0; i < result.length; i++) {
                                var id = result[i].id,
                                    name = result[i].name;
                                console.debug('light: '+name+', id: '+id);
                                lights_[id] = name;
                            } 
                            };
                            
                            // Create States in ioBroker
                            var createStates = function(result) {
                                // Resync button
                            createState('PhilipsHue.Scenes.Resync', false, {role: "button", name: 'Resync Philips Hue Groups, Lights and Scenes'});
                            
                            for (var i = 0; i < result.length; i++) {
                                if (!result[i].appdata.data){continue} // skip internal szenes
                            
                                var id = result[i].id,
                                    lights = result[i].lights,
                                    name = result[i].name.replace(/"/g,''),
                                    pathname = name.replace(/ /g,'_');
                                
                                // Get light names
                                var light_names = [];
                                for (var j = 0; j < lights.length; j++) {
                                    var light_name = lights_[lights[j]];
                                    light_names.push(light_name);
                                }
                            
                                // Room, group or lights linked with scene
                                var group = 'Group: '+groups_[lights] || 'Lights: '+light_names.join(", ");
                                
                                // Create States and skip duplicates
                                if (!objects_[lights+pathname]){
                                    console.debug('scene: '+name+', '+group);
                                    createState('PhilipsHue.Scenes.'+pathname+'.'+id, false, {role: "button", name: 'Scene: '+name+' ('+group+')'});
                                    objects_[lights+pathname] = true;
                                }
                            }
                            };
                            
                            // Delete States
                            function deleteStates(){
                                console.log('Deleting current objects for scenes...');
                            objects_ = [];
                            $('javascript.0.PhilipsHue.Scenes.*').each(function (id) {
                                deleteState(id);
                            });
                            }
                            
                            // Fetch data from Hue API
                            function init(){
                                api.getGroup(0, function(err, group0) {
                                    if (err) throw err;
                                    console.log('Processing group 0...');
                                //displayResults(group0);
                                parseGroup0(group0);
                            });
                            api.groups(function(err, groups) {
                                if (err) throw err;
                                console.log('Processing ' + groups.length + ' groups...');
                                //displayResults(groups);
                                parseGroups(groups);
                            });
                            
                            api.lights(function(err, lights) {
                                if (err) throw err;
                                console.log('Processing ' + lights.lights.length + ' lights...');
                                //displayResults(lights);
                                parseLights(lights.lights);
                            });
                            
                            
                            api.scenes(function(err, scenes) {
                                if (err) throw err;
                                console.log('Processing ' + scenes.length + ' scenes...');
                                //displayResults(scenes);
                                 createStates(scenes);
                            });
                            }
                            
                            // Init on start
                            init();
                            
                            // Activate scene
                            on({id: /^javascript\.0\.PhilipsHue.Scenes\./, val: true}, function (obj) {
                                if (obj.id == 'javascript.0.PhilipsHue.Scenes.Resync'){return}
                            sceneId = obj.id.split('.').pop();
                            console.log('Activating '+obj.name);
                            api.activateScene(sceneId, function(err, result) {
                                if (err) throw err;
                                displayResults(result);
                            });
                            setState(obj.id, false);
                            });
                            
                            // Resync
                            on({id: 'javascript.0.PhilipsHue.Scenes.Resync', val: true}, function (obj) {
                            console.log('Resync triggered...');
                            groups_ = [];
                            lights_ = [];
                            deleteStates();
                            init();
                            });
                            
                            /*
                            schedule("0 20 * * *", function () {
                            console.log('Resync triggered...');
                            groups_ = [];
                            lights_ = [];
                            deleteStates();
                            init();
                            });*/
                            

                            seit heute kommt ein Fehler:
                            Unbenannt.JPG

                            ich benötige Hilfe, wir sitzen im Dunkeln :-)

                            die Einzige Änderung die ich vorgenommen habe ist ich habe das Multihos enabled und einen slave host hinzugefügt.

                            ZefauZ Offline
                            ZefauZ Offline
                            Zefau
                            wrote on last edited by
                            #13

                            @grooovie warum nutzt du nicht einen der beiden hue Adapter? Die können das doch inzwischen beide?

                            Meine Adapter: https://zefau.github.io/iobroker/

                            1 Reply Last reply
                            0
                            • G Offline
                              G Offline
                              grooovie
                              wrote on last edited by
                              #14

                              echt, das wusste ich nicht.

                              in den Objekten den der normale Hue Adapter erzeugt sind jedenfalls keine Szenen zu sehen.

                              hab jetzt mal den Hue Extended genommen, da ist alle dabei, toll!

                              Vielen Dank für den tipp. So ist das eben, man richtet irgendwann mal was ein und das funktioniert dann auch, weiter kümmert man sich meist nicht. es war immer etwas umständlich mit dem extra script. aber der extendet adapter hat alles was man sich wünscht. hatte den schon mal gesehen, dachte aber er ist für eine neue Generation von Hue-Bridges.

                              Also sorry leute, bin aus einem Datendorf gerade in die grosse stadt gekommen XDD

                              Vielen Dank

                              1 Reply Last reply
                              1
                              Reply
                              • Reply as topic
                              Log in to reply
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              689

                              Online

                              32.7k

                              Users

                              82.3k

                              Topics

                              1.3m

                              Posts
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                              ioBroker Community 2014-2025
                              logo
                              • Login

                              • Don't have an account? Register

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Home
                              • Recent
                              • Tags
                              • Unread 0
                              • Categories
                              • Unreplied
                              • Popular
                              • GitHub
                              • Docu
                              • Hilfe