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. JS lokal bearbeiten - hochladen - service restarten

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

JS lokal bearbeiten - hochladen - service restarten

Scheduled Pinned Locked Moved Skripten / Logik
javascript
9 Posts 2 Posters 956 Views 2 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.
  • J Offline
    J Offline
    jiglitsch
    wrote on last edited by jiglitsch
    #1

    Hallo zusammen,
    für kleinere Änderungen in Klassen reicht natürlich die Mini-WebIDE die mit dem Javascript Adapter mitkommt.
    Da ich aber gerade merke, dass mein Setup immer größer wird, würde ich die Skripte und Klassen gerne lokal bearbeiten.
    Das Problem ist aber, dass ich nicht weiß wo die Dateien auf dem Raspberry liegen? Und welchen Service muss ich danach neustarten damit die aktualisierten Skripte auch geladen werden?

    Welche ES Version wird überhaupt supported? 5? 6? Und was läuft da im Backend? Wird der Code mit Webpack gebundled o.ä.?
    Ich habe mal auf die Schnelle eine kleine Klasse mit "export default" in eine eigene Datei geschrieben und dann in einem anderen Skript mit "import" versucht die Klasse zu importieren. Hat aber nicht geklappt. Da kam nur ein JS-Error in der Konsole. Sind so Module möglich? Für Tipps wäre ich dankbar :)

    Danke schonmal

    1 Reply Last reply
    0
    • apollon77A Offline
      apollon77A Offline
      apollon77
      wrote on last edited by
      #2

      Sind ja einige Fragen, fangen wir mal "Oben" an:

      1.) Generell liegen die Skripte als Objekte im iBroker, also eher schlecht editierbar. Daher gibt es in den neueren Javascript Versionen eine Funktion namens "Mirroring".Anklicken, lokalen Pfad angeben und schon werden alle Skripte dort ins Filesystem gesynct. Damit kaommst Du Sie dort bearbeiten. Änderungen werden sobald das File gespeichert wird zurckgesynct und das Skript neu gestartet. Wie Du es dann vom Raspi auf den Laptop oder so bekommst musst Du dann sehen.

      2.) ES version hängt von deiner nodejs Version ab. Alle aktuellen sind ES6 ...

      3.) bei den Skripten wähe zwischen JS und TS als Typ ... import wäre daher eher Typescript . Das "Backend" ist nodejs

      4.) NPM Module die Du brauchst und nicht da sind im Adapter angeben dann werde die installiert.

      5.) Skript sich gegenseitig zu importieren geht aktuell noch nicht so wirklich. Globale Skripte werden vor andere Skripte quasi davorgehangen, damit kann man sowas bauen aber muss aufpassen.

      Reicht das erstmal als Übersicht?

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      1 Reply Last reply
      1
      • J Offline
        J Offline
        jiglitsch
        wrote on last edited by jiglitsch
        #3

        Schonmal vielen Dank @apollon77 für deine Antworten. Da waren schon nützliche Infos dabei.

        Zu 1:
        Ich habe den aktuellsten Javascript-Adapter installiert aber in den Einstellungen sehe ich nix von "Mirroring". Das klingt genau danach wonach ich gesucht habe.
        Auch meine iobroker version ist die aktuellste.
        Oder bin ich an der falschen Stelle? Oder was meinst du mit "in den neueren JS-Versionen"?

        Zu 5:
        Ok, verstanden. Klingt aber auch so als wäre das etwas was mir helfen wir.

        apollon77A 1 Reply Last reply
        0
        • J jiglitsch

          Schonmal vielen Dank @apollon77 für deine Antworten. Da waren schon nützliche Infos dabei.

          Zu 1:
          Ich habe den aktuellsten Javascript-Adapter installiert aber in den Einstellungen sehe ich nix von "Mirroring". Das klingt genau danach wonach ich gesucht habe.
          Auch meine iobroker version ist die aktuellste.
          Oder bin ich an der falschen Stelle? Oder was meinst du mit "in den neueren JS-Versionen"?

          Zu 5:
          Ok, verstanden. Klingt aber auch so als wäre das etwas was mir helfen wir.

          apollon77A Offline
          apollon77A Offline
          apollon77
          wrote on last edited by
          #4

          @jiglitsch Was ist denn die "aktuellste Version" die Du hast? Es kommt bald die 4.6.3 aus dem latest ins Stable. Mirroring ist seit der 4.2.1 drin

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          1 Reply Last reply
          0
          • J Offline
            J Offline
            jiglitsch
            wrote on last edited by
            #5

            4.5.1. Das ist die, die in ioBroker über das Adaptermenü installiert weden kann. Meine ganze ioBroker Instanz ist erst 3 Tage alt.
            ... Fuck ...
            Ich wollte dir gerade einen Screenshot machen, da hab ich das input-Feld gesehen. Es gibt aber keinen Haken, daher habe ich das gestern scheinbar übersehen. War ja gestern auch schon spät :duck:

            Cool, dann versuche ich das mal. Danke dir!

            apollon77A 1 Reply Last reply
            0
            • J jiglitsch

              4.5.1. Das ist die, die in ioBroker über das Adaptermenü installiert weden kann. Meine ganze ioBroker Instanz ist erst 3 Tage alt.
              ... Fuck ...
              Ich wollte dir gerade einen Screenshot machen, da hab ich das input-Feld gesehen. Es gibt aber keinen Haken, daher habe ich das gestern scheinbar übersehen. War ja gestern auch schon spät :duck:

              Cool, dann versuche ich das mal. Danke dir!

              apollon77A Offline
              apollon77A Offline
              apollon77
              wrote on last edited by
              #6

              @jiglitsch Ja Haken war aus meinem Kopf und scheinbar "Misleading" :-)

              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
              1 Reply Last reply
              0
              • J Offline
                J Offline
                jiglitsch
                wrote on last edited by jiglitsch
                #7

                Kein Problem.

                Gibts beim Mirroring gerade irgendwelche bekannten Probleme?
                Ich hab das jetzt mal ausprobiert und habe die gespiegelte datei, die dem user iobroker gehört, mit dem user iobroker via vim verändert.
                Aber sofort wenn ich die Datei speichere, ist sie plötzlich weg. Auch im iobroker javascript menü ist sie plötzlich weg... gott sei dank habe ich ein Backup gemacht :O

                Was ist da los? Ich vermute ja irgendein permission problem... aber welches? :thinking_face:

                // UPDATE
                Auch ein überschreiben der Mirror-Datei mit "mv", löscht die Datei. Sowohl im Mirror als auch das original

                apollon77A 1 Reply Last reply
                0
                • J jiglitsch

                  Kein Problem.

                  Gibts beim Mirroring gerade irgendwelche bekannten Probleme?
                  Ich hab das jetzt mal ausprobiert und habe die gespiegelte datei, die dem user iobroker gehört, mit dem user iobroker via vim verändert.
                  Aber sofort wenn ich die Datei speichere, ist sie plötzlich weg. Auch im iobroker javascript menü ist sie plötzlich weg... gott sei dank habe ich ein Backup gemacht :O

                  Was ist da los? Ich vermute ja irgendein permission problem... aber welches? :thinking_face:

                  // UPDATE
                  Auch ein überschreiben der Mirror-Datei mit "mv", löscht die Datei. Sowohl im Mirror als auch das original

                  apollon77A Offline
                  apollon77A Offline
                  apollon77
                  wrote on last edited by
                  #8

                  @jiglitsch Bitte mal issue auf machen ... auch was genau du mit "überschreiben per mv" meinst

                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                  1 Reply Last reply
                  0
                  • J Offline
                    J Offline
                    jiglitsch
                    wrote on last edited by
                    #9

                    Ich meine den cli-Befehl "mv".
                    Also jetzt, nachdem ich die Mirror-ordner via chmod auf 777 (shame on me) geändert habe, sind die Skripte wieder da O_o
                    kA ob das Absicht ist? Scheint auf jedenfall irgendein perm-thema gewesen zu sein.

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


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    434

                    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