Weiter zum Inhalt

NEWS

  • News and Announcements for ioBroker and around the forum

    91 200
    91 Themen
    200 Beiträge
    HomoranH
    🚨 Dringendes Update: js-controller 7.2.2 Der js-controller 7.2.2 ist jetzt im STABLE-Repository verfügbar. Nutzer der Versionen 7.1.x, 7.2.0 und 7.2.1 sollten bitte schnellstmöglich aktualisieren. Die älteren Versionen erzeugen aktuell sehr viele zentrale Fehlerprotokolle. Dadurch werden die ioBroker-Server stark belastet und die Funktionalität kann für alle Nutzer beeinträchtigt werden. Das Update enthält außerdem wichtige Anpassungen für zukünftige Adapter-Versionen. ⚠️ Bitte wundert euch nicht, wenn ihr die Admin-Information auch nach einem bereits durchgeführten Update angezeigt bekommt. Die Nachricht kann technisch nicht auf bestimmte js-controller-Versionen begrenzt werden und wird daher an alle Nutzer verteilt. Bitte prüft eure Version und aktualisiert euer System bei Bedarf zeitnah. Vielen Dank! 🙏
  • 82k Themen
    1m Beiträge
    OliverIOO
    @icebear also das problem aus der obigen fehlermeldung konnte ich verbessern, das liegt daran, das vis immer mehrfach den datenpunkt aktualisiert. einmal ohne daten und einmal mit daten. der fehler kommt davon, wenn der datenpunkt keine daten enthält. ist aber ein vis typisches verhalten. leider hast du mir dein template mitgeschickt, daher habe ich auf basis meiner version dass auf dunkel umgestellt. alle eigenschaften der auswahlbox sind in den css-anweisungen im template enthalten Spoiler <% let localmapdatapoint="local_map"; let selected=""; let options = Object.keys(data).map(el=>{ return { value: el, label:new Date(el).toLocaleString(undefined, { dateStyle: "short" }) } }) console.log(data); console.log(options); window.jsontemplate=[] window.jsontemplate[widgetid]={}; window.jsontemplate[widgetid].data=data; window.jsontemplate[widgetid].localmapdatapoint=localmapdatapoint; %> <style> .mui-select-wrapper { position: relative; display: inline-flex; flex-direction: column; min-width: 220px; margin: 16px 0; font-family: Roboto, Arial, sans-serif; } .mui-select-label { position: absolute; top: -8px; left: 12px; background: #1e1e1e; padding: 0 4px; font-size: 12px; color: rgba(255, 255, 255, 0.7); z-index: 1; } .mui-select { height: 56px; padding: 16px 40px 16px 14px; border: 1px solid rgba(255, 255, 255, 0.23); border-radius: 4px; background-color: #1e1e1e; font-size: 16px; color: rgba(255, 255, 255, 0.87); outline: none; appearance: none; cursor: pointer; } .mui-select-wrapper::after { content: ""; position: absolute; right: 16px; top: 34px; width: 0; height: 0; pointer-events: none; border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 6px solid rgba(255, 255, 255, 0.7); } .mui-select:hover { border-color: rgba(255, 255, 255, 0.87); } .mui-select:focus { border: 2px solid #90caf9; padding: 15px 39px 15px 13px; } .mui-select:focus+.mui-select-label, .mui-select-wrapper:focus-within .mui-select-label { color: #90caf9; } .mui-select:disabled { color: rgba(255, 255, 255, 0.38); border-color: rgba(255, 255, 255, 0.12); background-color: #2b2b2b; cursor: default; } /* Für die Optionen im Dropdown */ .mui-select option { background-color: #1e1e1e; color: rgba(255, 255, 255, 0.87); } </style> <div class="mui-select-wrapper"> <select id="select_<%= widgetid %>" class="mui-select" data-widgetid="<%= widgetid %>" > <% options.forEach(function(option) { %> <option value="<%= option.value %>" <%= option.value === selected ? 'selected' : '' %> > <%= option.label %> </option> <% }); %> </select> </div> <script> (() => { const select = document.getElementById("select_<%= widgetid %>"); const widgetid = select.dataset.widgetid; const data = window.jsontemplate[widgetid]; const key = Object.keys(data.data)[0]; console.log("key",key); key && onSelectionChanged(widgetid,key); select.addEventListener("change", (event) => { const value = event.target.value; const widgetid = event.target.dataset.widgetid; onSelectionChanged(widgetid,value); }); function onSelectionChanged(widgetid,value) { console.log("change",value); vis.setValue(window.jsontemplate[widgetid].localmapdatapoint,JSON.stringify(window.jsontemplate[widgetid].data[value].map)) } })(); </script> das verhalten das bei einem reiter wechsel hin und zurück die marker weg sind konnte ich nicht nachvollziehen. in der runtime hat das immer gut funktioniert. die versionen von dir sind identisch zu meinen. da bei mir der effekt nicht auftritt, ist es schwer nachzuvollziehen. tritt das nur im vis edit mode auf oder auch im runtime? dann bitte nach der aktualisierung auch nochmal auf die fehler schauen. ggfs muss ich auch mal noch die debug ausgaben des map widgets nachschärfen, so das man im browser log besser nachvollziehen kann, was passiert oder auch was nicht passiert. im edit modus hat es auch etwas mit dem vis verhalten zu tun. da habe ich 2 dinge festgestellt, die ich unabhängig von deinem problem mal noch mal tiefer untersuchen muss. das ist leider debug technisch etwas aufwändiger. eigentlich abonniert vis/vis2 im edit mode alle datenpunkte. da scheint sich etwas geändert zu haben, auch bekomme ich im browser log (nicht immer) den hinweis: only admin allowed wo ich vermute das es damit zu tun hat. auch bekommt im edit modus nicht immer die daten aus dem datenpunkt an. da aber die dynamische aktualisierung unter vis im edit mode deaktiviert ist, kommen da keine weiteren aktualisierungen, wie es im runtime mode der fall ist. das ist/war eigentlich auch ok. auch hier will ich mal schauen ob ich das noch verbessern kann. hat aber evtl auswirkungen auf das erstellen und debuggen von den templates
  • 357 Themen
    2k Beiträge
    Q
    @alansru would your adapter also work with a iiyama ProLite TF4339AS-B1AG or similar model ? best regards
  • 633 Themen
    8k Beiträge
    mcm1957M
    @hawkeye Thanks for clearification. I already assumed that goggle translation did not get the conplete context. As I cannot read rusky language, I'll write in english and hope translation is correct. For the technical facts: The maintainer of the adapter did not grant access to npm although request for a long time. So its technical impossible to move the adapter to iobroker-community-adapters. As no maintainance has been done for a long time the adapter has been removed from repositories. It ist still possible to install it directly from nom using url iobroker.megadd. BUT there is some news too. I just detected that there is an adapter iobroker.megadd2. This adapter has been archived too and is not published at repositories. But it has been written by @Bluefox which ist one ofe the active core developers. So maybe he can held - ans as far as I know he can communicate using rusky languge very well. @Bluefox Please respond if you have time to do so. Спасибо за разъяснения. Я уже предполагал, что перевод Google не передал весь контекст. Поскольку я не могу читать на русском языке, напишу на английском и надеюсь, что перевод будет верным. Технические факты: Разработчик адаптера долгое время не предоставлял доступ к npm, несмотря на запрос. Поэтому технически невозможно перенести адаптер в iobroker-community-adapters. Поскольку поддержка не производилась в течение длительного времени, адаптер был удалён из репозиториев. Его всё ещё можно установить напрямую из nom, используя URL iobroker.megadd. НО есть и новости. Я только что обнаружил, что существует адаптер iobroker.megadd2. Этот адаптер тоже заархивирован и не опубликован в репозиториях. Но его написал @Bluefox, один из активных разработчиков ядра. Так что, возможно, он сможет помочь — и, насколько мне известно, он очень хорошо умеет общаться на русском языке. @Bluefox Пожалуйста, ответьте, если у вас есть время.
  • 19 Themen
    111 Beiträge
    Henk-Jan van EsterikH
    @tanelkoth Ik zie dat je deze vraag hebt. Mocht je vraag nog actueel zijn, laat het even weten. Met behulp van een Blockly script kan je eenvoudig dit regelen.
  • Português Fórum de suporte

    4 20
    4 Themen
    20 Beiträge
    ldittmarL
    @polegato Estou devolta aqui :-) ... O exemplo do lobomau é perfeito. Vc tem que instalar o ioBroker.javascript para isso e fazer um Blockly. Com esse Blockly vc pode montar automacao como um quebra cabeca. Muito legal e depois de algums, ja fica bem mais fácil.

459

Online

33.0k

Benutzer

83.4k

Themen

1.3m

Beiträge