Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Wie den Javascript Adapter nutzen?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wie den Javascript Adapter nutzen?

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

      @iben:

      hallo,

      ich schaffe es nicht eine email aus einem Skript heraus zu versenden.

      Die Testemail aus der Config heraus klappt, aber aus einem Skript heraus erhalte ich die Meldung:

      script.js.Script_email: ReferenceError: adapter is not defined
      
      adapter.sendTo("email", "Hallo");
      ```` `  
      

      Danke fürs Fehlermelden. Es gibt V 0.2.1

      1 Reply Last reply Reply Quote 0
      • I
        iben last edited by

        Ändert nichts.

        System Ubuntu, alles aktuell.

        Noch eine Idee?

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

          @iben:

          Ändert nichts.

          System Ubuntu, alles aktuell.

          Noch eine Idee? `
          Gibt es da Fehlermeldung?

          1 Reply Last reply Reply Quote 0
          • I
            iben last edited by

            Läuft doch danke.

            1 Reply Last reply Reply Quote 0
            • K
              klassisch Most Active last edited by

              Bin noch immer bei den ersten Gehversuchen mit kleinen, überschaubaren Skripten. Und finde es mühsam bis gefährlich, weil viele Fehler erst während der Laufzeit gefunden werden. Das machen compilerbasierte Sprachen meiner Menung nach besser.

              Gibt es einen Parser, der dabei helfen kann, den Compiler zu ersetzen?

              Wie macht Ihr das?

              1 Reply Last reply Reply Quote 0
              • AlCalzone
                AlCalzone Developer last edited by

                @klassisch:

                Und finde es mühsam bis gefährlich, weil viele Fehler erst während der Laufzeit gefunden werden. Das machen compilerbasierte Sprachen meiner Menung nach besser. `
                z.B. mit Visual Studio Code. Der eingebaute Interpreter erkennt ob Variablen/Objekte/Funktionen existieren, hat Auto-Vervollständigung und erkennt bei manchen Variablen den Typ. Kannst auch nen Schritt weiter gehen und https://basarat.gitbooks.io/typescript/content/docs/getting-started.html verwenden. Da kannst du durch Typannotationen schon zur Entwurfszeit viele Fehler ausschließen, da der Compiler Fehler ausgibt, wenn mit den Datentypen was nicht passt.

                1 Reply Last reply Reply Quote 0
                • K
                  klassisch Most Active last edited by

                  Vielen Dank!

                  Wenn ich das richtig verstehe ist visual Studio Code so eine Art Editor wie Notepad++. Für Notepad++ gibt es auch ein JS pugin, das ich aber nicht so hilfreich fand.

                  TypeScript ist dann eher eine Entwicklungsumgebung? Bauen die aufeinander auf oder ist das alternativ? Denke der Editor ist für einen ab-und an Gebrauch der einfachere Einstieg?

                  1 Reply Last reply Reply Quote 0
                  • AlCalzone
                    AlCalzone Developer last edited by

                    Du schmeißt da ein paar Begriffe durcheinander. VSCode ist eine Entwicklungsumgebung für alle möglichen Sprachen, darunter JavaScript und TypeScript. Beispielsweise hat sie Autovervollständigung und Tooltips für Variablen und Funktionen:
                    1097_vscode.png
                    Du kannst aber auch Programme direkt ausführen und debuggen, d.h. schrittweise ausführen. Mit ioBroker-Adaptern geht das auch, mit Skripten für den JS-Adapter glaube ich nicht (lasse mich aber gerne eines besseren belehren).

                    TypeScript ist sozusagen ein erweitertes JavaScript mit Typdefinitionen, um bspw. zu verhindern, dass du einem String eine Zahl zuweist o.ä.

                    1 Reply Last reply Reply Quote 0
                    • K
                      klassisch Most Active last edited by

                      Vielen Dank! Für mich ist Java vor allem eine ferne Insel, deshalb die naiven Fragen 🙂

                      Da ich ja auf den ioBroker JavaScript Adapter angewiesen bin - und bisher JS nur dort benutze - ist dann TypeScript für mich nicht das Richtige. Es sei denn, man kann sein Skript vorher offline testen. Stelle ich mir aber schwierig vor, weil ich in der Regel Daten vom ioBroker hole und auch dorthin schreibe.

                      VSCode habe ich mir installiert, ein paar youtubes dazu angesehen und die ersten Schrittchen gemacht. Das look&feel ist recht modern und bunt, da muß ich mich noch etwas einfinden. Bei Notepad++ finde ich die Funktionen eher. An das UI von VSCode muß ich mich erst noch gewöhnen.

                      1 Reply Last reply Reply Quote 0
                      • AlCalzone
                        AlCalzone Developer last edited by

                        @klassisch:

                        Das look&feel ist recht modern und bunt, da muß ich mich noch etwas einfinden. Bei Notepad++ finde ich die Funktionen eher. An das UI von VSCode muß ich mich erst noch gewöhnen. `
                        Ich nutze nicht viel außer dem Dateieditor und der Konsole 😉

                        1 Reply Last reply Reply Quote 0
                        • K
                          klassisch Most Active last edited by

                          Wofür braucht man die Konsole? Edit: Habe gerade die debugging Konsole gefunden - sorry.

                          Bei mir findet er eine Typisierungsdatei nicht. Gibt es da schon eine, die zu ioBroker passt?

                          1 Reply Last reply Reply Quote 0
                          • AlCalzone
                            AlCalzone Developer last edited by

                            @klassisch:

                            Wofür braucht man die Konsole? `
                            Ist etwas fortgeschritten: NPM-Kommandos ausführen und Abhängigkeiten installieren, bestimmte Git-Späße ausführen. Heißt übrigens Terminal in VSCode.

                            @klassisch:

                            Bei mir findet er eine Typisierungsdatei nicht. Gibt es da schon eine, die zu ioBroker passt? `
                            Jein. Für Adapter-Entwicklung gibts die aus dem TypeScript-Template-Adapter: https://github.com/AlCalzone/ioBroker.t … roker.d.ts

                            Für Skripte bin ich noch dran.

                            Aber die solltest du eigentlich nicht brauchen, wenn du JavaScript verwendest. Oder was hast du vor?

                            1 Reply Last reply Reply Quote 0
                            • K
                              klassisch Most Active last edited by

                              @AlCalzone:

                              [Aber die solltest du eigentlich nicht brauchen, wenn du JavaScript verwendest. Oder was hast du vor? ` Keine Ahnung, ob ich die Typisierungsdatei brauche. Aber VSCode hat eingeblendet, dass er die Datei vermisse.

                              Ich möchte nur JS parsen, um ein paar Fehler rechtzeitig zu finden. `

                              1 Reply Last reply Reply Quote 0
                              • AlCalzone
                                AlCalzone Developer last edited by

                                Poste mal nen Screenshot oder Log-Auszug oder so.

                                1 Reply Last reply Reply Quote 0
                                • K
                                  klassisch Most Active last edited by

                                  272_vsc-typisierung-missing.jpg
                                  Vielen Dank, So sieht die gelbe "Warnung" aus und bei Klick auf "weitere Informationen" wird man dorthin katapultiert:

                                  https://code.visualstudio.com/docs/lang … cquisition

                                  1 Reply Last reply Reply Quote 0
                                  • AlCalzone
                                    AlCalzone Developer last edited by

                                    Hast du NodeJS bzw. NPM installiert? Wenn nicht, solltest du das noch tun.

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      klassisch Most Active last edited by

                                      Vielen Dank, wieder mal ein super Tipp. Habe diesen Windows Rechner noch nicht so lange und da war es noch nicht drauf. Habe jetzt mal NodeJS 6.11.4 LTS aufgespielt. Noch kein NPM.

                                      Auf meinem Orange Pi mit dem ioBroker habe ich v4.8.4 und NPM 2.15.11

                                      Passt das oder sollte ich dort auch updaten? Bin da immer etwas zurückhaltend, solange es läuft.

                                      1 Reply Last reply Reply Quote 0
                                      • AlCalzone
                                        AlCalzone Developer last edited by

                                        @klassisch:

                                        Habe jetzt mal NodeJS 6.11.4 LTS aufgespielt. Noch kein NPM. `
                                        Da ist NPM mit dabei 😉 Wird auch benötigt, um die Typisierungsdateien zu installieren.

                                        4.8 kannste aufm Pi erst mal lassen, außer du willst einen Adapter installieren, der 6 oder höher benötigt.

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        745
                                        Online

                                        31.7k
                                        Users

                                        79.8k
                                        Topics

                                        1.3m
                                        Posts

                                        11
                                        40
                                        13810
                                        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