Weiter zum Inhalt

Entwicklung

1.3k Themen 31.8k Beiträge

Diskussionen und Hilfe für die Entwicklung von ioBroker und Adaptern.

NEWS

  • sonnen Adapter - Widget

    adapter sonnen widget
    29
    1
    2 Stimmen
    29 Beiträge
    4k Aufrufe
    G
    @foxriver76 Zunächst einmal vielen Dank für das coole Widget, das ich jetzt schon ein paar Wochen im Einsatz habe. Ich habe noch nicht die Logik bei der Wertdarstellung verstanden, also wann ist der Wert positiv und wann negativ. Aktuell: Solarpanel liefert/produziert Strom = positiv Akku liefert Strom = positiv, Akku speichert = negativ Netz liefert Strom = negativ, Netzeinspeisung = positiv Haus verbraucht Strom = positiv Meine Gedankenwelt wäre, identisch zu den dargestellten Verbindungslinien: Quelle = liefern = positiv und Senke = verbrauchen/einspeisen = negativ, dann müsste es so sein: Solarpanel liefert/produziert Strom = positiv Akku liefert Strom = positiv, Akku speichert = negativ Netz liefert Strom = positiv, Netzeinspeisung = negativ Haus verbraucht Strom = negativ Ich werde mir schätzungsweise ein Skript schreiben, damit die Werte in meine Gedankenwelt passen, vielleicht kann mir aber jemand die aktuelle Logik erklären.
  • Material Design Icons per HTML

    10
    1
    0 Stimmen
    10 Beiträge
    1k Aufrufe
    SKBS
    @stef-heisel In der Tat. Ich lasse die Icons nun dynamisch anderweitig laden. Klappt viel besser. @stef-heisel sagte in Material Design Icons per HTML: @skb Hallo, Ich wäre dankbar, wenn Sie meine Arbeit in Form dieser Website bewerten würden: https://andersenlab.de/services/design-studio/mobile-design Wieso soll ich "Ihre Arbeit bewerten"?
  • TS Adapter debuggen (iobroker.beckhoff)

    1
    0 Stimmen
    1 Beiträge
    227 Aufrufe
    Niemand hat geantwortet
  • shelly mqtt qos einstellen

    5
    1
    0 Stimmen
    5 Beiträge
    484 Aufrufe
    Ben1983B
    @mcu ich habe vom adapter bei jedem gerät die meldung bekommen: received puback for unknown messageId: 2 ich habe jetzt wieder auf 0 gestellt und die meldungen ersxheinen nicht mehr.
  • Unraid in ioBroker

    unraid app instanz api
    8
    0 Stimmen
    8 Beiträge
    3k Aufrufe
    Curtis777C
    Ich verwende Unraid seit mittlerweile 2 JAhren und bin froh von Proxmox weg zu sein. Docker gibt soviel mehr möglichkeiten.
  • Übersetzung

    6
    0 Stimmen
    6 Beiträge
    911 Aufrufe
    mcm1957M
    @killroy2 Sorry für die späte Antwort. Mein Wissensstand ist der nachfolgende. Falls etwas nicht stimmen sollte oder nicht funktioniert frag in Telegram nach. Aus Lesbarkeitsgründen lass ich die englischen Texte so stehen und muss dann wissen den alten Text überall per replace durch den neuen zu ersetzen. OK, spricht derzeit nichts dagegen, Probleme wirst du ev. bekommen, wenn du WEBLATE (siehe https://github.com/ioBrokerTranslator/doc) einsetzen möchtest, da nach meinem Kenntnisstand das Ändern eines Keys in weblate nicht möglich ist sondern einen neuen Text bedeutet. Neue Texte muss ich dann auch im admin/i18n/en/translatons.json händisch anlegen, richtig? Neue Texte musst du eigentlich immer in en/translations.json eintragen. Das translation system parst sicher nicht html, react oder js code um potenzielle Texte zu finden. Was wird alles übersetzet -wie funktioniert die Logik etwas Übersetzungsrelevantes zu finden? npm run translate nimmt en/translations.json als source (zumindest defaultmäßig). Alle Keys die NICHT in den anderssprachigen Dateien enthalten sind werden mittels Google übersetzt in in die andren xx/translation.json eingefügt. Je nach Optionen die du bei npm run translate angegeben hast wird anschließend der Inhalt aller xx/translations.json in das words.js gemerged und words.js damit neu erstellt. Beschreibung siehe https://github.com/ioBroker/adapter-dev#manage-translations. npm run translate all macht lt. Beschreibugn Folgendes: Calls translate and afterwards updates words.js using to-words followed by to-json. Wenn du eine neuerliche Übersetzung von keys haben willst die schon in den anderssprachigen translations.json enthalten sind, dann musst du diese keys in den anderssprachigen Dateien (manuell) löschen. Sinn ist offensichtlich, dass nicht be jeder Änderung korrekturen an z.B. den deutschen Texten wieder vernichtet werden. Alternativ kan nst du die Brachialmethode anwenden und alle xx/tranbslations != en löschen. Das bedeutet aber einen Totalreset und wenn jemand z.B. unsinnigen Text korriogiert hat, dann geht das verloren. Mit WEBLATE ist diese Methode eher inkompatibel. Übrigends: Wenn du einen Key im englischen translations.json löscht so wird dieser Key meines Wissens nach (zumindest derzeit) nicht in den anderssprachigen translations.json gelöscht - außer du setzet WEBLATE ein, hier werde verwaiste Texte entfernt. Was mache ich mit Texten die Formatierungen enthalten, zB Hyperlinks. So mit in translations.json angeben? Da muss ich passen. Versuch als erstes Mal was translate.google.com damit anstellt. Ansonsten kann ich dir hier nicht helfen - Ausprobieren ist sicher einen Versuch Wert. Alternativ trenn zu übersetzende Texte und fixe links in 2 (od. 3) elemente - die müssen ja nicht durch den translator gehen. Hoffe ich konnte ein wenig helfen. McM
  • Bosswerk MI600 Adapter

    75
    0 Stimmen
    75 Beiträge
    26k Aufrufe
    X
    Du bist weiter als ich. Das was ich beim überfliegen gesehen habe sieht schon sehr gut aus.
  • Welche Datentypen + Rollen gibt es denn jetzt noch?

    15
    0 Stimmen
    15 Beiträge
    2k Aufrufe
    haus-automatisierungH
    @apollon77 sagte in Welche Datentypen + Rollen gibt es denn jetzt noch?: Multistate kenn ich als offiziellen Typ gar nicht wenn ich ehrlich bin? Oder fehlt mir das was? Wie ich das jetzt verstanden habe gab es den ganz früher mal und es wurde nur an der einen Stellt im Admin vergessen dieses Überbleibsel zu entfernen. Ich erstelle mal einen PR
  • Frage: MQTT Server (Broker) in Adapter benötigt

    6
    0 Stimmen
    6 Beiträge
    571 Aufrufe
    AcguaA
    @arteck - Danke, das hatte ich auch gesehen (main/lib/mqttServerController.js), ist mit aedes umgesetzt, aber halt nur mit listen und dann Info-Ausgabe in ein paar Zeilen und leider für meinen Use Case so nicht hilfreich... @haus-automatisierung Danke, kann ich sehr gut nachvollziehen, warum man eigene Server in den Adaptern implementiert hat. Langfristig wäre es ganz schön, wenn man für den MQTT-Server Adapter Plugins programmieren könnte (so wie beim web Adapter). Dann bekäme man einfach Nachrichten rein, welche man abonniert hat. +1 @BananaJoe Danke für die "Unterstützung", den mqtt-Adapter zu nehmen :-) Mittlerweile hab ich übrigens herausgefunden, dass der Fully Browser nach einem Neustart nur jede Minute ein neues Info-Paket sendet, nicht alle paar Millisekunden. Nur nach mehreren "intensiven" Tests in der Entwicklungsumgebung kommen diese dann wieder alle paar ms rein. Wohl aber nur aufgrund meiner Tests. Ich schau mir das noch näher an. Aber so wie es aussieht, kann ich wohl doch aedes verwenden in einer sauberen Umgebung und Infos kommen nur jede Minute, Events sofort, wie es sein soll. Jeweils als QOS 1 und Info als retain, event als nicht retain. Code-Auszug /** * fired when a client publishes a message packet on the topic */ this.aedes.on('publish', (packet, client) => { if (!client || !packet) return; if (packet.qos === 1 && packet.retain) { /** * Device Info coming in... * Per fully documentation: The complete device info will be published every 60 seconds as fully/deviceInfo/[deviceId] topic (retaining, QOS=1). */ const info = JSON.parse(packet.payload.toString()); this.adapter.log.debug(`[MQTT] Client ${info.ip4} Publish Info: topic: ${packet.topic}, qos: ${packet.qos}`); } else if (packet.qos === 1 && !packet.retain) { /** * Event coming in... * Per fully documentation: Events will be published as fully/event/[eventId]/[deviceId] topic (non-retaining, QOS=1). */ const event = JSON.parse(packet.payload.toString()); this.adapter.log.debug(`[MQTT] Client Publish Event: topic: ${packet.topic}, qos: ${packet.qos}, payload: ${packet.payload.toString()}`); } else { // Ignore return; } });
  • Array in state speichern

    Verschoben
    21
    0 Stimmen
    21 Beiträge
    5k Aufrufe
    K
    @paul53 Ah. jetzt, vielen Dank!
  • MS Teams Status abfragen

    adapter entwicklung ms teams entwicklung
    7
    0 Stimmen
    7 Beiträge
    4k Aufrufe
    T
    @bananajoe Danke dir... habe ich korrigiert.
  • npm prune löscht Module im javascript-Adapter

    7
    0 Stimmen
    7 Beiträge
    517 Aufrufe
    Thomas BraunT
    @quarkmax Ich hab jetzt mal wie im Issue die rm /opt/iobroker/node_modules/.package-lock.json rm /opt/iobroker/node_modules/iobroker.javascript/node_modules/.package-lock.json rm /opt/iobroker/package-lock.json gelöscht und ein iob rebuild angeschoben. So auf den ersten Blick war es das, das Zusatzmodul überlebt jetzt ein npm prune. echad@chet:/opt/iobroker $ npm ls playactor iobroker.inst@3.0.0 /opt/iobroker └─┬ iobroker.javascript@6.1.4 └── playactor@0.4.1 echad@chet:/opt/iobroker $ npm prune npm WARN skipping integrity check for git dependency ssh://git@github.com/DrozmotiX/ioBroker.switchbot-hub.git npm WARN skipping integrity check for git dependency ssh://git@github.com/nbuenger/ioBroker.govee.git npm WARN deprecated appium-logger@2.1.0: Moved into appium-support npm WARN deprecated core-js@1.2.7: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. removed 785 packages, and changed 31 packages in 1m 99 packages are looking for funding run `npm fund` for details echad@chet:/opt/iobroker $ npm ls playactor iobroker.inst@3.0.0 /opt/iobroker └─┬ iobroker.javascript@6.1.4 └── playactor@0.4.1 €dit: Hat nicht ganz funktioniert, ich habe dann noch alle anderen package-locks in /opt/iobroker rausgeworfen. Nach find "/opt/iobroker/" -iname "*package-lock*" -exec rm -rf "{}" \; ist Ruhe, scheint mir.
  • Tuya Adapter - Beca Thermostat falsche Temperatur Anzeige

    5
    1
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    apollon77A
    Der Tua Adapter 3.14.0 rechnet die Werte um!
  • jsonConfig onload und onsave hook

    19
    0 Stimmen
    19 Beiträge
    2k Aufrufe
    D
    @haus-automatisierung ich schaue mir das mal an, was und wie man das am besten machen könnte. Ich habe da jetzt nicht meine hauptprio drauf und muß mir dann das mit dem react mal anschauen
  • index_m.html -> Select Field refresh

    1
    0 Stimmen
    1 Beiträge
    151 Aufrufe
    Niemand hat geantwortet
  • Umstellung Adapter auf adapter-react-v5

    3
    0 Stimmen
    3 Beiträge
    608 Aufrufe
    M
    Hallo, ich habe mich an das gleiche Abenteuer gewagt. Mit dem Adapter Creator haben ich einen neuen Adapter mit REACT-Seiten erstellt. So weit so gut. Allerdings klappt bei mir die Umstellung auf V5 irgendwie nicht. Ich habe mich so gut wie möglich and die Migrationsanweisungen gehalten, die Seiten laufen jetzt, allerdings wird keine Socket-Verbindung aufgebaut und keine Config-Daten gelagen. Ich hab alles versucht, verzweifele so langsam. Hat jemand ein Beispiel mit eine React-V5-Adapter laufen?
  • `getForeignStateAsync()` liefert nur `ack: false`

    12
    0 Stimmen
    12 Beiträge
    1k Aufrufe
    GaspodeG
    @Lucky_ESA Sorry nochmal für OT Ja, das ist mir schon klar. Ich hatte await und then als zwei Alternativen verstanden, um das Gleiche zu erreichen. Deshalb hat es mich jetzt gewundert, dass du beides mischst. Ich würde entweder try { const obj = await this.getForeignStateAsync("admin.0.info.connected"); this.log.debug("obj: " + JSON.stringify(obj)); catch (e) { this.log.debug("error: " + JSON.stringify(e)); } oder this.getForeignStateAsync("admin.0.info.connected") .then(async obj => { this.log.debug("obj: " + JSON.stringify(obj)); }) .catch(e => this.log.debug("error: " + JSON.stringify(e))); erwarten. Die Mischung aus beidem ist mir bisher nicht über den Weg gelaufen.
  • openweather Fehler

    fehler adapter openweathermap
    6
    0 Stimmen
    6 Beiträge
    856 Aufrufe
    Thomas BraunT
    @kusselin The HyperText Transfer Protocol (HTTP) 401 Unauthorized response status code indicates that the client request has not been completed because it lacks valid authentication credentials for the requested resource. Zugangsdaten prüfen (wenn da welche zu vergeben sind).
  • Free@home

    free@home betaversion
    3
    0 Stimmen
    3 Beiträge
    468 Aufrufe
    haus-automatisierungH
    @sise Aktuell gibt es nur diese Alpha-Version soweit ich weiß: https://github.com/mobilutz/iobroker.freeathome Und die ist nur über GitHub installierbar und nicht über die offiziellen Repositories. Ist aber schon auf dem Weg ins Beta-Repository: https://github.com/ioBroker/ioBroker.repositories/pull/1683 Also entweder über GitHub installieren (würde ich einem Anfänger nicht empfehlen) oder auf die Beta warten.
  • Feiertage Adapter

    Verschoben
    115
    1
    1 Stimmen
    115 Beiträge
    27k Aufrufe
    O
    @cash Dito

499

Online

32.9k

Benutzer

83.0k

Themen

1.3m

Beiträge