Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. TypeScript declarations für ioBroker

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

TypeScript declarations für ioBroker

Geplant Angeheftet Gesperrt Verschoben Entwicklung
18 Beiträge 6 Kommentatoren 4.4k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • AlCalzoneA Offline
    AlCalzoneA Offline
    AlCalzone
    Developer
    schrieb am zuletzt editiert von
    #1

    Hey zusammen,

    da ich neuerdings bevorzugt in TypeScript entwickle, und das auch für Adapter verwenden will, gibt es jetzt ein Adapter-Template in TypeScript

    https://github.com/ioBroker/ioBroker.template-ts

    Das enthält die notwendigen Dateien zur Adapter-Erstellung sowie eine Definitionsdatei ioBroker.d.ts, mit der in unterstützen IDEs Auto-Vervollständigung, Typüberprüfung und kurze Dokumentationen der Funktionen angezeigt werden.

    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

    1 Antwort Letzte Antwort
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      schrieb am zuletzt editiert von
      #2

      Vielleicht sogar ein template erzeugen?

      IoBroker.ts-template

      Da mit gulp/grunt die Übersetzung mitdabei?

      1 Antwort Letzte Antwort
      0
      • apollon77A Offline
        apollon77A Offline
        apollon77
        schrieb am zuletzt editiert von
        #3

        Die Idee find ich cool. Am besten auch gleich noch das Adapter-Testing im TS-Style :-)

        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 Antwort Letzte Antwort
        0
        • AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #4

          @Bluefox:

          Vielleicht sogar ein template erzeugen?

          IoBroker.ts-template `
          Klar, warum nicht! Schau ich mir übers Wochenende mal an.

          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

          1 Antwort Letzte Antwort
          0
          • AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            schrieb am zuletzt editiert von
            #5

            https://github.com/AlCalzone/ioBroker.template-ts

            Erste Version mit automatischer Kompilierung (zumindest in VSCode und Visual Studio) sowie global vorhandenem Namespace ioBroker (unter dem alle Typen zu finden sind).

            Habs noch nicht getestet mit einem tatsächlichen Adapter, erwarte aber nicht allzuviele Probleme. Es könnte jedoch sein, dass "utils" in einem falschen Ordner nach dem Controller sucht, da die Datei jetzt in "./build/lib/" liegt statt "./lib"

            Tests sind bisher unverändert in JS.

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            1 Antwort Letzte Antwort
            0
            • apollon77A Offline
              apollon77A Offline
              apollon77
              schrieb am zuletzt editiert von
              #6

              Könntest Du das bitte nochmal löschen und als eigenes Repo (also nicht als Fork von ioBroker.template) neu anlegen :-)) Ich kann es nicht forken weil ich .template schon geforkt habe

              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 Antwort Letzte Antwort
              0
              • AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von
                #7

                äh ja, wird gemacht :D

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                1 Antwort Letzte Antwort
                0
                • apollon77A Offline
                  apollon77A Offline
                  apollon77
                  schrieb am zuletzt editiert von
                  #8

                  So, hat jetzt auch Default-Adaptertesting dabei :-)

                  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 Antwort Letzte Antwort
                  0
                  • AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    schrieb am zuletzt editiert von
                    #9

                    Habe heute noch einige Deklarationen zum TypeScript Template-Adapter hinzugefügt.

                    An einigen Stellen in https://github.com/AlCalzone/ioBroker.t … roker.d.ts gibts noch Kommentare der Art

                    // TODO find out how this looks like
                    

                    Wenn einer der Profis (Bluefox?) mir nen Tipp geben kann, wie die so markierten Typen aufgebaut sind, wäre ich dankbar. Ansonsten wühle ich mich halt irgendwann mal wieder durch den Code vom JS-Controller :D

                    Edit: Insbesondere hier brauche ich Hilfe:

                    https://github.com/AlCalzone/ioBroker.t … .d.ts#L126

                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                    1 Antwort Letzte Antwort
                    0
                    • AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      Es gibt jetzt zwei Branches:

                      • master: der vollständige Adapter mit Widget, Docs, www-files, etc.

                      • bare: nur das "nötigste", d.h. main-code, TypeScript-Umgebung und Admin-UI-Dateien.

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Antwort Letzte Antwort
                      0
                      • AlCalzoneA Offline
                        AlCalzoneA Offline
                        AlCalzone
                        Developer
                        schrieb am zuletzt editiert von
                        #11

                        Das zukünftige Loglevel "silly" ist auch drin!

                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                        1 Antwort Letzte Antwort
                        0
                        • AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #12

                          Jetzt gibts auch TypeScript-style unit testing, sowohl lokal mit Coverage-Report und online auf Travis/AppVeyor.

                          Beschreibung siehe https://github.com/AlCalzone/ioBroker.t … it-testing

                          Beispiel hier: https://github.com/AlCalzone/ioBroker.t ... in.test.ts

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          1 Antwort Letzte Antwort
                          0
                          • J Offline
                            J Offline
                            JoJ123
                            schrieb am zuletzt editiert von
                            #13

                            Hey, ich wollte heute einen neuen Adapter in Typescript erstellen.

                            Ich habe es mit dem template von Github versucht. Am Code selber habe ich nichts geändert, ich habe den Code in "node_modules" kopiert und anschließend mit npm install alle packages installiert in dem Ordner. Dann den Adapter "upgeloaded".

                            Jedoch startet der Adapter bei mir nicht.

                            Im Instanz Tab ist die Instanz rot.

                            Im Log erscheint lediglich:

                            iobroker	2018-10-09 19:59:55.556	info	exit 0
                            iobroker	2018-10-09 19:59:55.548	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0 created
                            host.DESKTOP-RV0C8KF	2018-10-09 19:59:55.545	info	object change system.adapter.template-ts.0
                            iobroker	2018-10-09 19:59:55.516	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.alive created
                            iobroker	2018-10-09 19:59:55.488	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.connected created
                            iobroker	2018-10-09 19:59:55.461	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.memHeapUsed created
                            iobroker	2018-10-09 19:59:55.433	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.memHeapTotal created
                            iobroker	2018-10-09 19:59:55.404	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.memRss created
                            iobroker	2018-10-09 19:59:55.377	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.uptime created
                            iobroker	2018-10-09 19:59:55.348	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.inputCount created
                            iobroker	2018-10-09 19:59:55.320	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.0.outputCount created
                            iobroker	2018-10-09 19:59:55.292	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts.upload created
                            iobroker	2018-10-09 19:59:55.288	info	host.DESKTOP-RV0C8KF create instance template-ts
                            iobroker	2018-10-09 19:59:55.276	info	host.DESKTOP-RV0C8KF object system.adapter.template-ts created
                            

                            Hat das von euch schon einer zum Laufen gebracht?

                            Ist das Template noch up to date?

                            1 Antwort Letzte Antwort
                            0
                            • AlCalzoneA Offline
                              AlCalzoneA Offline
                              AlCalzone
                              Developer
                              schrieb am zuletzt editiert von
                              #14

                              Das Template müsste noch aktuell sein, wesentliche Änderungen gab es nicht. Ich sehe nicht dass überhaupt versucht wird, die Instanz zu starten. Allerdings hab ich auch noch nie probiert, das Template direkt auszuführen.

                              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                              1 Antwort Letzte Antwort
                              0
                              • J Offline
                                J Offline
                                JoJ123
                                schrieb am zuletzt editiert von
                                #15

                                Gibt es denn einen Adapter der läuft und mit diesem Typescript Template entwickelt wurde? Dann würde ich mich auf die Fehlersuche begeben

                                Gesendet von meinem EML-L09 mit Tapatalk

                                1 Antwort Letzte Antwort
                                0
                                • AlCalzoneA Offline
                                  AlCalzoneA Offline
                                  AlCalzone
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #16

                                  Alle meine: g-homa, tradfri, ble

                                  Vermutlich musst du den Adapter "richtig" installieren. npm install löscht auch Ordner, wenn diese nicht vorhanden sein sollten. Zum Beispiel kannst du den Adapter mit npm pack in einen tarball verpacken, diesen auf den Host schieben und dort im Ordner /opt/iobroker per npm install pfad-zum-tarball installieren.

                                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                  LoredoL 1 Antwort Letzte Antwort
                                  0
                                  • AlCalzoneA AlCalzone

                                    Alle meine: g-homa, tradfri, ble

                                    Vermutlich musst du den Adapter "richtig" installieren. npm install löscht auch Ordner, wenn diese nicht vorhanden sein sollten. Zum Beispiel kannst du den Adapter mit npm pack in einen tarball verpacken, diesen auf den Host schieben und dort im Ordner /opt/iobroker per npm install pfad-zum-tarball installieren.

                                    LoredoL Offline
                                    LoredoL Offline
                                    Loredo
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #17

                                    @alcalzone werden die Declarations noch irgendwie verwendet, wenn ich meinen Adapter über create-adapter erstellt habe?

                                    Die StateQuality Values scheinen wohl nicht aktuell zu sein und ich habe bei der Google Suche nichts anderes gefunden, als die Deklaration in https://github.com/AlCalzone/virtual-tsc/blob/master/test/ioBroker.d.ts .

                                    Daher bin ich nicht sicher, wie/wo man die Deklaration anpassen muss, damit keine Fehler mehr bei der Zuweisung von neueren Weren für state.q generiert werden.

                                    Ich habe dazu ein Issue auf GitHub aufgemacht:
                                    https://github.com/AlCalzone/virtual-tsc/issues/16

                                    1 Antwort Letzte Antwort
                                    0
                                    • mcm1957M Offline
                                      mcm1957M Offline
                                      mcm1957
                                      schrieb am zuletzt editiert von
                                      #18

                                      see
                                      https://github.com/ioBroker/ioBroker.js-controller/issues/2319

                                      Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                                      Support Repositoryverwaltung.

                                      Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                                      LESEN - gute Forenbeitrage

                                      1 Antwort Letzte Antwort
                                      0
                                      Antworten
                                      • In einem neuen Thema antworten
                                      Anmelden zum Antworten
                                      • Älteste zuerst
                                      • Neuste zuerst
                                      • Meiste Stimmen


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      341

                                      Online

                                      32.4k

                                      Benutzer

                                      81.4k

                                      Themen

                                      1.3m

                                      Beiträge
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Anmelden

                                      • Du hast noch kein Konto? Registrieren

                                      • Anmelden oder registrieren, um zu suchen
                                      • Erster Beitrag
                                        Letzter Beitrag
                                      0
                                      • Home
                                      • Aktuell
                                      • Tags
                                      • Ungelesen 0
                                      • Kategorien
                                      • Unreplied
                                      • Beliebt
                                      • GitHub
                                      • Docu
                                      • Hilfe