CCU.IO startet nicht mehr automatisch

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

Moderator: Co-Administratoren

Antworten
Saranger85
Beiträge: 586
Registriert: 15.12.2013, 13:11
Danksagung erhalten: 2 Mal

CCU.IO startet nicht mehr automatisch

Beitrag von Saranger85 » 13.01.2016, 20:22

Hi Leute,

also das ist mal absolut nicht meine Woche. JEden Tag was neues :evil:

Ich hatte so eben mal meinen Rasp neu gestartet und musste feststellen, dass CCU.IO nicht mehr mit startet.

Wenn ich den Status abfrage, bekomme ich folgende Meldung

Code: Alles auswählen

module.js:340
    throw err;
          ^
Error: Cannot find module '/home/pi/ccu.io-server.js'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:901:3
und wenn ich dann den restart durch führe mit

Code: Alles auswählen

node /opt/ccu.io/ccu.io-server.js restart
kommt folgende Meldung und dann läuft es wieder

Code: Alles auswählen

ccu.io daemon is not running
Starting ccu.io daemon...
ccu.io daemon started. PID: 2585
.

Hat jemand eine Idee was ich da machen kann?

und was ich auch nicht verstehe warum meine Settings.js so seltsam aussieht.

Code: Alles auswählen

var fs =        require('fs'),
    logger =    require(__dirname+'/logger.js');

var settings = {};

try {
    var settingsJson = fs.readFileSync(__dirname+"/datastore/io-settings.json");
    settings = JSON.parse(settingsJson.toString());
    logger.verbose("ccu.io        settings found");
    if (!settings.uid) {
        logger.verbose("ccu.io        creating uid");
        settings.uid = Math.floor((Math.random()*4294967296)).toString(16)+Math.floor((Math.random()*4294967296)).toString(16)+Math.floor((Math.random()*4294967296)).toString(16)+Math.floor((Math.random()*4294967296)).toString(16);
        fs.writeFileSync(__dirname+"/datastore/io-settings.json", JSON.stringify(settings));
    }
} catch (e) {
    logger.info("ccu.io        creating datastore/io-settings.json");
    var settingsJson = fs.readFileSync(__dirname+"/settings-dist.json");
    settings = JSON.parse(settingsJson.toString());
    settings.unconfigured = true;
    logger.verbose("ccu.io        creating uid");
    settings.uid = Math.floor((Math.random()*4294967296)).toString(16)+Math.floor((Math.random()*4294967296)).toString(16)+Math.floor((Math.random()*4294967296)).toString(16)+Math.floor((Math.random()*4294967296)).toString(16);
    fs.writeFileSync(__dirname+"/datastore/io-settings.json", JSON.stringify(settings));
}

settings.updateSelfRunning = false;

settings.binrpc.inits = [];
if (settings.binrpc.rfdEnabled) {
    settings.binrpc.inits.push({
        id:     settings.binrpc.rfdId,
        port:   settings.binrpc.rfdPort
    });
}
if (settings.binrpc.hs485dEnabled) {
    settings.binrpc.inits.push({
        id:     settings.binrpc.hs485dId,
        port:   settings.binrpc.hs485dPort
    });
}
if (settings.binrpc.cuxdEnabled) {
    settings.binrpc.inits.push({
        id:     settings.binrpc.cuxdId,
        port:   settings.binrpc.cuxdPort
    });
}

settings.binrpc.checkEvents.testTrigger = {
    "io_rf": settings.binrpc.checkEvents.rfd,
    "io_wired": settings.binrpc.checkEvents.hs485d
}

if (!settings.httpEnabled) {
    delete settings.ioListenPort;
}
if (!settings.httpsEnabled) {
    delete settings.ioListenPortSsl;
}

settings.adapters = {};

// Find Adapters
var adapters = fs.readdirSync(__dirname+"/adapter");

for (var i = 0; i < adapters.length; i++) {
    if (adapters[i] == ".DS_Store" || adapters[i].match(/^skeleton/)) {
        continue;
    }

    var adapterSettings = {},
        settingsJson;

    try {
        settingsJson = fs.readFileSync(__dirname+"/datastore/adapter-"+adapters[i]+".json");
        adapterSettings = JSON.parse(settingsJson.toString());
        if (!adapterSettings) {
            try {
                settingsJson = fs.readFileSync(__dirname+"/adapter/"+adapters[i]+"/settings.json");
                var adapterSettings = JSON.parse(settingsJson.toString());
                fs.writeFileSync(__dirname+"/datastore/adapter-"+adapters[i]+".json", JSON.stringify(adapterSettings));
                logger.info("ccu.io        creating datastore/adapter-"+adapters[i]+".json");
            } catch (ee) {
                logger.error("ccu.io        no settings.json found for "+adapters[i]);
            }
        } else {
            logger.verbose("ccu.io        settings.json found for "+adapters[i]);
        }

    } catch (e) {
        try {
            settingsJson = fs.readFileSync(__dirname+"/adapter/"+adapters[i]+"/settings.json");
            var adapterSettings = JSON.parse(settingsJson.toString());
            fs.writeFileSync(__dirname+"/datastore/adapter-"+adapters[i]+".json", JSON.stringify(adapterSettings));
            logger.info("ccu.io        creating datastore/adapter-"+adapters[i]+".json");
        } catch (ee) {
            logger.error("ccu.io        no settings.json found for "+adapters[i]);
        }
    }
    settings.adapters[adapters[i]] = adapterSettings;
}



//console.log(JSON.stringify(settings, null, " "));

module.exports = settings;


dtp
Beiträge: 10679
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 329 Mal
Danksagung erhalten: 504 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von dtp » 19.01.2016, 08:00

Frage? Hast Du den Raspi und/oder CCU.IO manuell aufgesetzt oder handelt es sich um eine Installation, die vorher schon lief?

Ich habe am WE meinen Raspi 2 komplett neu aufgesetzt und Raspian Jessie installiert. Dann war CCU.IO dran. Da musste ich dann feststellen, dass sich die 1.0.29 zwar installieren ließ, allerdings war kein Neustart von der CCU.IO-Oberfläche aus mehr möglich. Ein Update auf die aktuelle Version 1.0.52 schlug fehl, weil der Link nicht mehr funktionierte. Also lud ich die aktuelle Version manuell herunter, löschte CCU.IO auf dem Raspi und kopierte einfach die entpackte 1.0.52 per WinSCP auf den Raspi. Danach konnte ich CCU.IO in der aktuellen Version 1.0.52 starten und wieder das alte Backup einspielen.

Problem: Seitdem startet CCU.IO bei einem Neustart des Raspi nicht mehr automatisch, sondern ich muss es jedes Mal mit

Code: Alles auswählen

node /opt/ccu.io/ccu.io-server.js start
neu starten. Alternativ kann ich CCU.IO aber auch noch von meiner CCU aus starten.

Am besten wird wohl sein, man fügt die obige Startzeile einfach in die Datei /etc/rc.local ein. Dann sollte CCU.IO nach einem Neustart des Raspi auch wieder automatisch gestartet werden.

Gruß,

Thorsten

PS.: Bei der manuellen Neuinstallation der 1.0.52 und der Nutzung des iCal-Adpaters daran denken, cloneextend manuell nach zu installieren:

Code: Alles auswählen

1. cd /opt/ccu.io/
2. sudo npm install cloneextend
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

dtp
Beiträge: 10679
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 329 Mal
Danksagung erhalten: 504 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von dtp » 21.01.2016, 10:01

Kleine Ergänzung noch zu meinem obigen Posting. Evtl. ist es hilfreich, ein kleines Delay für den Autostart von CCU.IO vorzusehen. Dann in die rc.local VOR der Zeile "exit 0" folgenden Befehl einfügen:

Code: Alles auswählen

/bin/sleep 10 && node /opt/ccu.io/ccu.io-server.js start
Die 10 gibt eine zehnsekündige Verzögerung vor.

Gruß,

Thorsten
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

Saranger85
Beiträge: 586
Registriert: 15.12.2013, 13:11
Danksagung erhalten: 2 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von Saranger85 » 21.01.2016, 10:38

Hi, ich schau mir das heut noch mal an. Ich habe aber in einem anderen Thread (leider vergessen welcher) zwei Befehle gefunden die ich ausgeführt hatte seit dem geht es wieder. Vielleicht find ich das noch.

Saranger85
Beiträge: 586
Registriert: 15.12.2013, 13:11
Danksagung erhalten: 2 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von Saranger85 » 03.02.2016, 12:59

So leider habe ich wieder den Fall, dass CCU.IO nicht automatisch mit startet :evil: :evil:

Das einfügen des Befehls bringt leider nichts :-(. Und ich finde das nicht mehr wo ich dass beim letzten mal behoben habe :-(.

Hat wer eine Idee?

So habe jetzt die Befehle vom letzten mal gefunden. NAch mehrmaligen probieren geht es jetzt wieder.

Code: Alles auswählen

sudo update-rc.d ccu.io.sh remove
sudo update-rc.d ccu.io.sh defaults

dtp
Beiträge: 10679
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 329 Mal
Danksagung erhalten: 504 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von dtp » 03.02.2016, 15:33

Saranger85 hat geschrieben: So habe jetzt die Befehle vom letzten mal gefunden. NAch mehrmaligen probieren geht es jetzt wieder.
Vielen Dank. Das werde ich mal probieren.

Aber ich werde am WE eh meinen Raspi 2 nochmals komplett aufsetzten müssen. Irgendwie verhält der sich gerade etwas mimosenhaft.

Bis dann,

Thorsten
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

dtp
Beiträge: 10679
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 329 Mal
Danksagung erhalten: 504 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von dtp » 04.02.2016, 08:54

Hab gestern mal den Eintrag aus der rc.local entfernt und dann die beiden Shellscript-Befehle ausgeführt. Nach einem Neustart des Raspi war CCU.IO aber trotzdem nicht verfügbar. Hab dann einfach CCU.IO komplett gelöscht, neu installiert und nach Installation der benötigten Addons (DashUI, ScriptGUI und ScriptEditor) das Backup wieder eingespielt. Glücklicherweise ist nun auch wieder die Version 1.0.52 über den Update-Button erreichbar. Kurzum, jetzt verhält sich CCU.IO wieder so, wie erwartet.
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

Saranger85
Beiträge: 586
Registriert: 15.12.2013, 13:11
Danksagung erhalten: 2 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von Saranger85 » 04.02.2016, 09:06

Hattest du auch Probleme mit CCU io? Bei mir zeigt es ja z.b. Die hue Adapter etc im yahui an. Wie ist das jetzt bei dir nach dem du das ganze über den update Button gemacht hast? Wenn du den Status abfragst welche Meldung kommt da jetzt bei dir?

Also bei

Code: Alles auswählen

node ccu.io-server.js status

dtp
Beiträge: 10679
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 329 Mal
Danksagung erhalten: 504 Mal

Re: CCU.IO startet nicht mehr automatisch

Beitrag von dtp » 04.02.2016, 13:14

Also mit

Code: Alles auswählen

node /opt/ccu.io/ccu.io-server.js status
erhalte ich die Meldung, dass mein Deamon mit der PID 1248 läuft.

Gruß,

Thorsten
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

Antworten

Zurück zu „CCU.IO“