Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Adapter von "scheduled" auf "deamon "umbauen ..

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter von "scheduled" auf "deamon "umbauen ..

    This topic has been deleted. Only users with topic management privileges can see it.
    • apollon77
      apollon77 last edited by

      Hey,

      ich will gerade den Adapter für "nut" den ich gebaut habe von "scheduled" was er bisher war auf "deamon" umbauen. Wie sollte das passieren?

      Reicht es io-package.json, code anzupassen und Adapter zu updaten?

      Erstes Testergebnis: Nein! Er scheint immer noch zu "wissen" das der Adapter Scheduled ist und meckert - also scheinbar hat er die io-package.json nicht neu eingelesen.

      Ich will heute Abend mal den iobroker komplett neu starten und hoffe das er ggf. dabei die Änderungen der io-package-json neu einliest und er dann den Adapter als Deamon startet …

      Oder muss ich noch andere Dinge tun bzw was wäre der korrekte weg?

      Ingo F

      1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox last edited by

        @apollon77:

        Hey,

        ich will gerade den Adapter für "nut" den ich gebaut habe von "scheduled" was er bisher war auf "deamon" umbauen. Wie sollte das passieren?

        Reicht es io-package.json, code anzupassen und Adapter zu updaten?

        Erstes Testergebnis: Nein! Er scheint immer noch zu "wissen" das der Adapter Scheduled ist und meckert - also scheinbar hat er die io-package.json nicht neu eingelesen.

        Ich will heute Abend mal den iobroker komplett neu starten und hoffe das er ggf. dabei die Änderungen der io-package-json neu einliest und er dann den Adapter als Deamon startet …

        Oder muss ich noch andere Dinge tun bzw was wäre der korrekte weg?

        Ingo F `
        Nach dem als die io-package.json Datei geändert wurde, probiere mal

        iobroker upload nut

        Zu schreiben.

        1 Reply Last reply Reply Quote 0
        • apollon77
          apollon77 last edited by

          Das hat er automatisch gemacht (hatte per iobroker url <github-url>) das update vom aktuellen Github stand gemacht wo die Änderungen drin sind.

          Er hat die laufenden Instanzen zwar nicht gestoppt und neu gestartet, aber der Upload kam direkt hinterher automatisch.

          Ich starte heute Abend mal neu …

          PS: Wie kann ich denn die "schedule" Einträge löschen oder beachtet er de automatisch nicht mehr wenn "deamon"?</github-url>

          1 Reply Last reply Reply Quote 0
          • apollon77
            apollon77 last edited by

            Also … neustart hat nichts gebracht.

            Habe nochmal in den Adapter-Datenpunkten (also "typ" adapter) geschaut und da war noch das alte drin.

            Also doch nochmal "iobroker upload nut" gemacht und dann war das korrekt.

            Dennoch startet er nicht. Log sagt:

            2016-09-29 21:41:56.087  - info: host.cubietruck2 "system.adapter.nut.0" enabled
            2016-09-29 21:41:56.089  - info: host.cubietruck2 stopInstance system.adapter.nut.0
            2016-09-29 21:41:56.091  - warn: host.cubietruck2 stopInstance system.adapter.nut.0 not scheduled
            2016-09-29 21:41:58.598  - error: system.adapter.nut.0 schedule attribute missing
            
            

            In den "Instance"-Datenpunkten steht auch immer noch "schedule" drin wie bisher. Das wurde also nicht aktualisiert 😞 Andere Daten da drin wurden aktualisiert.

            Kann man das irgendwie auch aktualisieren oder müssen die Leute wirklich die existierenden Instanzen löschen und neu anlegen mit einem Update?

            1 Reply Last reply Reply Quote 0
            • Bluefox
              Bluefox last edited by

              @apollon77:

              Also … neustart hat nichts gebracht.

              Habe nochmal in den Adapter-Datenpunkten (also "typ" adapter) geschaut und da war noch das alte drin.

              Also doch nochmal "iobroker upload nut" gemacht und dann war das korrekt.

              Dennoch startet er nicht. Log sagt:

              2016-09-29 21:41:56.087  - info: host.cubietruck2 "system.adapter.nut.0" enabled
              2016-09-29 21:41:56.089  - info: host.cubietruck2 stopInstance system.adapter.nut.0
              2016-09-29 21:41:56.091  - warn: host.cubietruck2 stopInstance system.adapter.nut.0 not scheduled
              2016-09-29 21:41:58.598  - error: system.adapter.nut.0 schedule attribute missing
              
              

              In den "Instance"-Datenpunkten steht auch immer noch "schedule" drin wie bisher. Das wurde also nicht aktualisiert 😞 Andere Daten da drin wurden aktualisiert.

              Kann man das irgendwie auch aktualisieren oder müssen die Leute wirklich die existierenden Instanzen löschen und neu anlegen mit einem Update? `
              Ich denke, man kann workaround machen:

              function main() {
                adapter.getForeignObject('system.adapter.' + adapter.namespace, function (err, obj) {
              	if (obj.common.mode !== 'daemon') {
              		obj.common.mode = 'daemon';
              		adapter.setForeignObject(obj._id, obj);
              	}
                });
              
                  ......
              }
              
              
              1 Reply Last reply Reply Quote 0
              • apollon77
                apollon77 last edited by

                Ok, danke baue ich mal so ein 🙂

                Macht es sinn irgendwie eine Sonderfunktion zu haben (bzw ein "Event") was bei Install/Update getriggert wird für genau solche Fixes?

                1 Reply Last reply Reply Quote 0
                • Bluefox
                  Bluefox last edited by

                  @apollon77:

                  Ok, danke baue ich mal so ein 🙂

                  Macht es sinn irgendwie eine Sonderfunktion zu haben (bzw ein "Event") was bei Install/Update getriggert wird für genau solche Fixes? `
                  Es gibt schon.

                  Ein Beispiel :

                  https://github.com/ioBroker/ioBroker.vi … e.json#L47

                  1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 last edited by

                    Hey,

                    muss zwar nochmal testen aber das oben geht nur bedingt … irgendwie wird es nicht ausgeführt weil durch die Umstellung der Adapter irgendwie nicht gestartet wird.

                    Also wollöte ich es beim Adapter-Update machen wie beschrieben. Da dann die nächste Frage: Wie kriege ich raus wievele Adapter es gibt? Ich müsste ja über alle Adapter Konfigs iterieren ...

                    getForeignObjects mit nem "*" bei der Instance-ID liefert irgendwie gar nichts 😞

                        adapter.getForeignObjects('system.adapter.nut.*', function (err, objs) {
                            console.log(JSON.stringify(objs, null, 2));
                        });
                    
                    

                    Und ja ich habe das Skript mit "–install --log" gestartet 🙂

                    Any idea?

                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      Ich kann momentan keine Lösung ausdenken. Mach einfach ein mal beim Start und das war es.

                      1 Reply Last reply Reply Quote 0
                      • apollon77
                        apollon77 last edited by

                        Sollte "getForeignObjects" denn funktionieren? Oder geht das nur mit CouchDB?

                        Ich teste nochmal mit nem sauber "original" Installierten Adapter mit Schedule. Mal schauen … vllt tuts ja doch magisch

                        1 Reply Last reply Reply Quote 0
                        • Bluefox
                          Bluefox last edited by

                          @apollon77:

                          Sollte "getForeignObjects" denn funktionieren? Oder geht das nur mit CouchDB?

                          Ich teste nochmal mit nem sauber "original" Installierten Adapter mit Schedule. Mal schauen … vllt tuts ja doch magisch `
                          Api ist komplett kompatibel. Das was bei couchdb geht, geht auch mit Objekten.

                          getForeignObjects sollte gehen.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          671
                          Online

                          31.7k
                          Users

                          79.8k
                          Topics

                          1.3m
                          Posts

                          2
                          11
                          1937
                          Loading More Posts
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes
                          Reply
                          • Reply as topic
                          Log in to reply
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          The ioBroker Community 2014-2023
                          logo