Weiter zum Inhalt

ioBroker Allgemein

29.8k Themen 438.3k Beiträge
Integrationtsplattform für IoT

NEWS

  • Fritzbox Info LED

    Ungelöst tr-064fritzbox
    5
    0 Stimmen
    5 Beiträge
    227 Aufrufe
    H
    @arteck Danke für die korrekte Einordnung und deine Antwort
  • error: datapoint "ham.0.Window" not found

    29
    0 Stimmen
    29 Beiträge
    3k Aufrufe
    HomoranH
    @hoschiman0 sagte in error: datapoint "ham.0.Window" not found: Der ist das. und woher hat der Adapter die Kategorie Window/Door-Sensor ? Hast du die im Adapter selbst angelegt? oder bringt das ominöse Zigbee Gerät die Kategorie mit?
  • Zwave, was bedeuten Status und Ready und wie Nutzen?

    5
    1
    0 Stimmen
    5 Beiträge
    161 Aufrufe
    Berges01B
    @arteck Das ist zwar nicht 100% aber ein Anfang. Hätte ich auch selber drauf kommen können das so auszuprobieren, so ein Node habe ich auch 4 x. Somit ist das ein Baustein in meinen Überlegungen. Darauf kann ich dann mal aufbauen. Danke für die Info.
  • Nuki lässt sich nicht mehr via ioBroker auf/zu schließen

    2
    0 Stimmen
    2 Beiträge
    141 Aufrufe
    arteckA
    @merlin123 nö bei mir läuft alles mit beiden laufen.. ich nutze den nuki-extended.0 findest die bridge [image: 1642969861834-904d363a-67de-4fa8-88ba-19eb3c253309-grafik.png]
  • View Hintergrund

    material design widgets
    8
    1
    0 Stimmen
    8 Beiträge
    352 Aufrufe
    I
    @Glasfaser Hallöchen, kurze Frage nochmal zu dem Image als background. Ich habe die Visualisierung auf einem Raspberry laufen unter Chromium. Dort erscheint aber nur das Image wenn ich die Seite einmal neu lade. Ist aber immer nur aktuell für das gerade anzeigende View. Wähle ich ein anderes View aus habe ich wieder kein Hintergrund Image { "settings": { "style": { "background_class": "hq-background-h-gradient-black-3", "background-color": "", "background-repeat": "", "background-attachment": "", "background-position": "", "background-size": "", "background-clip": "", "background-origin": "", "background-image": "url(/vis.0/Haussteuerung/Icons/Klima/klima-hintergrund.jpg) }, "theme": "redmond", "sizex": "2130", "sizey": "1150", "gridSize": "", "useBackground": false, "snapType": null }, "widgets": { "e00001": { "tpl": "tplHtml", "data": { "g_fixed": true, "g_visibility": false, "g_css_font_text": true, "g_css_background": true, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "g_last_change": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "refreshInterval": "0", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "html": "Badezimmer Übersicht", "name": "Badezimmer" }, "style": { "left": "0px", "top": "1px", "width": "2130px", "height": "40px", "text-align": "center", "font-family": "Georgia, \"Times New Roman\", Times, serif", "font-style": "oblique", "font-variant": "normal", "font-weight": "bold", "font-size": "xx-large", "background-color": "#3f9ade" }, "widgetSet": "basic" }, "e00002": { "tpl": "tplIFrame", "data": { "g_fixed": false, "g_visibility": false, "g_css_font_text": false, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "g_last_change": false, "refreshInterval": "", "seamless": false, "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "src": "http://XXX/flot/index.html?timeType=relative&relativeEnd=now&range=1440&aggregateType=count&aggregateSpan=300&hoverDetail=false&useComma=false&zoom=false&noedit=true&animation=0&l%5B0%5D%5Bid%5D=hm-rpc.0.000A1BE9A26D2E.1.ACTUAL_TEMPERATURE&l%5B0%5D%5Binstance%5D=sql.0&l%5B0%5D%5Boffset%5D=0&l%5B0%5D%5Baggregate%5D=onchange&l%5B0%5D%5Bcolor%5D=%23000eff&l%5B0%5D%5Bmin%5D=0&l%5B0%5D%5Bmax%5D=27&l%5B0%5D%5Bthickness%5D=1&l%5B0%5D%5Bshadowsize%5D=2&l%5B0%5D%5Bunit%5D=%C2%B0C&l%5B0%5D%5Bname%5D=Temperatur&l%5B0%5D%5Byaxe%5D=right&l%5B0%5D%5Bpoints%5D=false&l%5B0%5D%5BafterComma%5D=2&l%5B0%5D%5Bdashes%5D=false&l%5B0%5D%5BdashLength%5D=10&l%5B0%5D%5BspaceLength%5D=10&l%5B0%5D%5BchartType%5D=line&l%5B0%5D%5Bfill%5D=0&l%5B1%5D%5Bid%5D=javascript.0.Heizung.Ventile.Bad&l%5B1%5D%5Binstance%5D=sql.0&l%5B1%5D%5Boffset%5D=0&l%5B1%5D%5Baggregate%5D=onchange&l%5B1%5D%5Bcolor%5D=%2300FF00&l%5B1%5D%5Bmin%5D=0&l%5B1%5D%5Bmax%5D=100&l%5B1%5D%5Bthickness%5D=1&l%5B1%5D%5Bshadowsize%5D=2&l%5B1%5D%5Bunit%5D=%25&l%5B1%5D%5Bname%5D=Ventilstellung&l%5B1%5D%5Byaxe%5D=off&l%5B1%5D%5BafterComma%5D=2&l%5B1%5D%5Bdashes%5D=false&l%5B1%5D%5BdashLength%5D=10&l%5B1%5D%5BspaceLength%5D=10&l%5B1%5D%5Bmultiplicator%5D=1&l%5B1%5D%5Bfill%5D=0&l%5B1%5D%5BchartType%5D=line&l%5B1%5D%5Bpoints%5D=false&l%5B1%5D%5Bxaxe%5D=off&live=30&noBorder=noborder&bg=%23303030&x_labels_color=%23ffffff&y_labels_color=%23ffffff&barLabels=topover&titleColor=%23ffffff&legend=nw&timeFormat=%25H%3A%25M&m%5B0%5D%5Bl%5D=0&m%5B0%5D%5Bv%5D=22&m%5B0%5D%5Bf%5D=false&m%5B0%5D%5Bc%5D=%23FF0000&m%5B0%5D%5Bt%5D=1&m%5B0%5D%5Bs%5D=2&m%5B0%5D%5Bd%5D=Wohlf%C3%BChltemperatur&m%5B0%5D%5Bp%5D=l&m%5B0%5D%5Bpy%5D=-30&m%5B0%5D%5Bfc%5D=%23ffffff&m%5B0%5D%5Bfs%5D=&m%5B0%5D%5Bvl%5D=17&titleSize=18&title=Badezimmer&start=2019-10-24&start_time=12%3A00&end=2019-10-25&end_time=20%3A00&titlePos=top%3A35%3Bleft%3A50", "noSandbox": false, "refreshWithNoQuery": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide" }, "style": { "left": "476px", "top": "48px", "width": "900px", "height": "300px", "z-index": "11" }, "widgetSet": "basic" }, "e00003": { "tpl": "tplValueFloatBar", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.BOOST_TIME", "visibility-cond": "==", "visibility-val": 1, "factor": "1", "color": "#47aaff", "min": "0", "max": "300", "orientation": "horizontal", "gestures-offsetX": 0, "gestures-offsetY": 0, "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": "3", "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": "3", "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "visibility-groups-action": "hide", "name": "Bad Thermostat Boost Level", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "348.010009765625px", "top": "251px", "width": "80px", "height": "22px", "border-color": "white", "border-radius": "5px", "border-width": "1px", "border-style": "solid", "z-index": "20" }, "widgetSet": "basic" }, "e00004": { "tpl": "tplValueFloat", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.BOOST_TIME", "visibility-cond": "==", "visibility-val": 1, "is_comma": "true", "factor": "1", "html_append_singular": " sek", "html_append_plural": " sek", "is_tdp": "false", "gestures-offsetX": 0, "gestures-offsetY": 0, "digits": "0", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "visibility-groups-action": "hide", "html_prepend": "", "name": "Bad Thermostat Boost Sec", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "gestures-pinching-minimum": "-1", "gestures-pinching-maximum": "-1", "gestures-pinching-delta": "5", "gestures-rotating-delta": "6" }, "style": { "left": "364px", "top": "255px", "width": "48px", "height": "20px", "color": "white", "text-align": "center", "font-family": "Arial, Helvetica, sans-serif", "font-style": "normal", "font-variant": "normal", "font-weight": "bold", "font-size": "small", "z-index": "40", "border-width": "1px", "border-style": "none", "border-color": "white", "border-radius": "0px" }, "widgetSet": "basic" }, "e00005": { "tpl": "tplIconInc", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.SET_POINT_TEMPERATURE", "visibility-cond": "==", "visibility-val": 1, "repeat_delay": "800", "repeat_interval": "800", "src": "/vis.0/Haussteuerung/Icons/Control/control_minus.png", "step": "-0.5", "minmax": "4.5", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "text": "", "visibility-groups-action": "hide", "invert_icon": false, "imageHeight": "98", "name": "Bad Thermostat -", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "40.019989013671875px", "top": "157px", "background": "black", "width": "50px", "height": "50px", "z-index": "30" }, "widgetSet": "jqui" }, "e00006": { "tpl": "tplIconInc", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.SET_POINT_TEMPERATURE", "visibility-cond": "==", "visibility-val": 1, "repeat_delay": "800", "repeat_interval": "800", "src": "/vis.0/Haussteuerung/Icons/Control/control_plus.png", "step": "+0.5", "minmax": "25", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "text": "", "visibility-groups-action": "hide", "name": "Bad Thermostat +", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "346.989990234375px", "top": "157px", "background": "black", "width": "50px", "height": "50px", "z-index": "30" }, "widgetSet": "jqui" }, "e00007": { "tpl": "tplValueFloat", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.SET_POINT_TEMPERATURE", "visibility-cond": "==", "visibility-val": 1, "is_comma": "true", "factor": "1", "html_append_singular": " ºC", "html_append_plural": " ºC", "digits": "1", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "is_tdp": false, "visibility-groups-action": "hide", "html_prepend": "Soll ", "name": "Bad Thermostat Soll", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "210.00997924804687px", "top": "174px", "width": "106px", "height": "25px", "color": "white", "text-align": "center", "font-family": "Arial, Helvetica, sans-serif", "font-style": "normal", "font-variant": "normal", "font-weight": "bold", "font-size": "medium", "z-index": "30" }, "widgetSet": "basic" }, "e00008": { "tpl": "tplValueFloatBar", "data": { "oid": "javascript.0.Heizung.Ventile.Bad", "visibility-cond": "==", "visibility-val": 1, "factor": "1", "color": "{v:javascript.0.Heizung.Ventile.Bad;v < 30 ? \"#FDEE00\" :: v < 60 ? \"#FFA500\" :: \"#FF0000\"}", "min": "0", "max": "100", "orientation": "horizontal", "gestures-offsetX": 0, "gestures-offsetY": 0, "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "visibility-groups-action": "hide", "name": "Bad Thermostat Level", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "comment": "" }, "style": { "left": "107px", "top": "146px", "width": "216px", "height": "16px", "border-color": "white", "border-radius": "5px", "border-width": "1px", "border-style": "solid", "z-index": "30", "color": "{v:hm-rpc.0.000A1A49A10B96.1.LEVEL;v < 30 ? \"#FDEE00\" :: v < 60 ? \"#FFA500\" :: \"#FF0000\"}" }, "widgetSet": "basic" }, "e00009": { "tpl": "tplValueFloat", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.ACTUAL_TEMPERATURE", "visibility-cond": "==", "visibility-val": 1, "is_comma": "true", "factor": "1", "html_append_singular": " ºC", "html_append_plural": " ºC", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "is_tdp": false, "visibility-groups-action": "hide", "html_prepend": "Ist ", "name": "Bad Thermostat", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "151.989990234375px", "top": "103px", "width": "144px", "height": "39px", "color": "white", "text-align": "center", "font-family": "Arial, Helvetica, sans-serif", "font-style": "normal", "font-variant": "normal", "font-weight": "bold", "font-size": "x-large", "z-index": "30", "border-width": "1px", "border-style": "none", "border-color": "white", "border-radius": "0px" }, "widgetSet": "basic" }, "e00010": { "tpl": "tplValueFloat", "data": { "oid": "javascript.0.Heizung.Ventile.Bad", "visibility-cond": "==", "visibility-val": 1, "is_comma": "true", "factor": "", "html_append_singular": " %", "html_append_plural": " %", "is_tdp": "false", "gestures-offsetX": 0, "gestures-offsetY": 0, "digits": "0", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "visibility-groups-action": "hide", "html_prepend": "Heizt mit: ", "name": "Bad Thermostat Level %", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "158.01998901367187px", "top": "148px", "width": "100px", "height": "21px", "color": "white", "text-align": "center", "font-family": "Arial, Helvetica, sans-serif", "font-style": "normal", "font-variant": "normal", "font-weight": "bold", "font-size": "small", "z-index": "40", "border-width": "1px", "border-style": "none", "border-color": "white", "border-radius": "0px" }, "widgetSet": "basic" }, "e00011": { "tpl": "tplImage", "data": { "g_fixed": true, "g_visibility": true, "g_css_font_text": false, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": true, "g_gestures": false, "g_signals": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "refreshInterval": "0", "refreshOnWakeUp": "false", "refreshOnViewChange": "false", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "src": "/vis.0/Haussteuerung/Icons/Klima/metal_background.jpg", "name": "Bad Thermostat Hintergrund", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "-2px", "top": "86px", "width": "450px", "height": "215px", "z-index": "10", "border-color": "#484851", "border-radius": "", "border-style": "solid", "border-width": "3px" }, "widgetSet": "basic" }, "e00012": { "tpl": "tplValueListHtml8", "data": { "oid": "hm-rpc.0.000A1A49A10B96.1.BOOST_MODE", "visibility-cond": "==", "visibility-val": 1, "count": "1", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "value0": "AUTO", "value1": "Boost", "style0": "background-color: green; padding-top:3px;", "style1": "background-color: red; padding-top:3px;", "test_list": "0", "visibility-groups-action": "hide", "style2": "", "value2": "", "value3": "Boost", "style3": "background-color: blue; padding-top:3px;", "name": "Bad Thermostat Mode", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "comment": "" }, "style": { "left": "131.989990234375px", "top": "173px", "z-index": "30", "color": "#ffffff", "text-align": "center", "width": "75px", "height": "20px", "border-radius": "4px", "padding-top": "", "line-height": "", "font-size": "x-small", "background-color": "#FFFFFF" }, "widgetSet": "basic" }, "e00013": { "tpl": "tplJquiButtonState", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.BOOST_MODE", "visibility-cond": "==", "visibility-val": 1, "buttontext": "Auto", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "value": "false", "visibility-groups-action": "hide", "no_style": false, "name": "Bad Thermostat Auto", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "locked": false }, "style": { "left": "133px", "top": "240px", "font-size": "small", "width": "80px", "text-align": "center", "z-index": "30", "height": "32px", "background": "", "background-color": "" }, "widgetSet": "jqui" }, "e00014": { "tpl": "tplJquiButtonState", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.BOOST_MODE", "visibility-cond": "==", "visibility-val": 1, "buttontext": "Boost", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "value": "True", "visibility-groups-action": "hide", "name": "Bad Thermostat Boost", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "no_style": false }, "style": { "left": "217px", "top": "240px", "font-size": "small", "width": "80px", "text-align": "center", "z-index": "30", "height": "32px" }, "widgetSet": "jqui" }, "e00015": { "tpl": "tplValueLastchange", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.1.SET_POINT_TEMPERATURE", "visibility-cond": "==", "visibility-val": 1, "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "format_date": "DD.MM.YYYY um hh:mm:ss Uhr", "html_prepend": "<b>Letzte Einstellung: </b>", "visibility-groups-action": "hide", "name": "Bad Thermostat letzte Änderung", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0 }, "style": { "left": "43px", "top": "289px", "width": "340px", "font-style": "normal", "font-variant": "normal", "font-size": "x-small", "height": "10px", "color": "rgb(38, 179, 247)", "z-index": "30", "text-align": "center" }, "widgetSet": "basic" }, "e00016": { "tpl": "tplFrame", "data": { "visibility-cond": "==", "visibility-val": 1, "title": "Thermostat", "title_color": "black", "title_top": "5", "title_left": "15", "header_height": "30", "header_color": "#47aaff", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "visibility-groups-action": "hide", "name": "Bad Thermostat", "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "title_font": "" }, "style": { "left": "0px", "top": "52px", "width": "450px", "height": "250px", "font-family": "Arial, Helvetica, sans-serif", "font-style": "normal", "font-variant": "normal", "font-weight": "bold", "font-size": "large", "z-index": "1", "background": "black", "border-width": "3px", "border-style": "solid", "border-color": "#484851", "border-radius": "" }, "widgetSet": "basic" }, "e00017": { "tpl": "tplMfdCustom10", "data": { "oid": "hm-rpc.0.000A1BE9A26D2E.0.OPERATING_VOLTAGE", "g_fixed": true, "g_visibility": false, "g_css_font_text": false, "g_css_background": false, "g_css_shadow_padding": false, "g_css_border": false, "g_gestures": false, "g_signals": false, "g_last_change": false, "visibility-cond": "==", "visibility-val": 1, "visibility-groups-action": "hide", "asButton": false, "icon0": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_0.png", "icon1": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_0.svg", "icon2": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_25.png", "icon3": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_25.png", "icon4": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_50.png", "icon5": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_50.png", "icon6": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_50.png", "icon7": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_75.png", "icon8": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_75.png", "icon9": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_100.png", "icon10": "/vis.0/Haussteuerung/Icons/Battery/measure_battery_100.png", "signals-cond-0": "==", "signals-val-0": true, "signals-icon-0": "/vis/signals/lowbattery.png", "signals-icon-size-0": 0, "signals-blink-0": false, "signals-horz-0": 0, "signals-vert-0": 0, "signals-hide-edit-0": false, "signals-cond-1": "==", "signals-val-1": true, "signals-icon-1": "/vis/signals/lowbattery.png", "signals-icon-size-1": 0, "signals-blink-1": false, "signals-horz-1": 0, "signals-vert-1": 0, "signals-hide-edit-1": false, "signals-cond-2": "==", "signals-val-2": true, "signals-icon-2": "/vis/signals/lowbattery.png", "signals-icon-size-2": 0, "signals-blink-2": false, "signals-horz-2": 0, "signals-vert-2": 0, "signals-hide-edit-2": false, "lc-type": "last-change", "lc-is-interval": true, "lc-is-moment": false, "lc-format": "", "lc-position-vert": "top", "lc-position-horz": "right", "lc-offset-vert": 0, "lc-offset-horz": 0, "lc-font-size": "12px", "lc-font-family": "", "lc-font-style": "", "lc-bkg-color": "", "lc-color": "", "lc-border-width": "0", "lc-border-style": "", "lc-border-color": "", "lc-border-radius": 10, "lc-zindex": 0, "min": "0", "max": "3", "iconColor0": "#FFFFFF", "iconColor1": "#f25052", "iconColor2": "#f8c3c3", "name": "Bad Thermostat Batterie", "invert_value": false, "show_active": false }, "style": { "left": "40px", "top": "231px", "width": "50px", "height": "50px", "z-index": "30" }, "widgetSet": "jqui-mfd" } }, "name": "1100_Wohnbereich_Bad", "filterList": [] } Nach dem auswählen eingesandten Views über das Menü und dann zurück auf die selbe Seite wieder wird der Hintergrund nicht mehr geladen
  • [gelöst] Zigbee Instanz - Coordinator/Empfangsgerät wechseln

    5
    0 Stimmen
    5 Beiträge
    543 Aufrufe
    arteckA
    @heisenberg0709 innerhalb der ccxxxx reihe geht das.. ok vielleich tnicht mit den ollen cc2531 und cc2530.. aber mit den "besseren" schon da diese ein vnram abbild auf der platte schreiben wenns um die scripte geht kannst du dir eine schatten kopie in ein irdner legen und den per suche durchschen.. obs aber mit blokly geht kein plan hier die Einstellungen.. [image: 1642968894948-b0eed943-1e3e-401f-b1ce-6117d4a6e0af-grafik.png] die musst du nur EINMAL machen in der javscript.0 instanz ..gilt dann für alle
  • Sourceanalytix - invalide Werte, Probleme mit Homematic?

    7
    4
    0 Stimmen
    7 Beiträge
    840 Aufrufe
    crunchipC
    @tqyazatjc2vo9d sagte in Sourceanalytix - invalide Werte, Probleme mit Homematic?: ich hab diesen Startwert nicht eingetragen @tqyazatjc2vo9d sagte in Sourceanalytix - invalide Werte, Probleme mit Homematic?: Ich hab den Inhalt des EnergyCounter-DP kopiert (Wattstunden) und in das Feld für den Start-Tageswert @tqyazatjc2vo9d sagte in Sourceanalytix - invalide Werte, Probleme mit Homematic?: der aktuelle Zählerstand ist laut ioBroker/Homematic ~74666.60 Wh: das interessiert nicht, ich brauche den aktuellen original Zählerstand
  • Datenpunkte überall anlegen

    15
    1
    0 Stimmen
    15 Beiträge
    930 Aufrufe
    mickymM
    @bahnuhr sagte in Datenpunkte überall anlegen: @mickym sagte in Datenpunkte überall anlegen: Es ist nur einfach traurig, dass nun nach fast einem halben Jahr sich nichts bewegt. Kann ich sehr gut nachvollziehen. Auch ich habe ein paar Punkte/Issues die einfach ignoriert werden. (oder nicht gewollt sind; oder was auch immer). Fazit: Bin ruhiger geworden. Is halt so. Lebbe geht weiter ;-) Ich eigentlich auch. Und im Prinzip sollte ich in diese Threads schon gar nichts mehr schreiben. Ich habs ja auch erst neutral geschrieben - nur als dann die Diskussion weiterging, um festzustellen was vorher alles ging und was heute nicht mehr geht - da sind ein paar Mikrowellen durch mein Zornzentrum gegangen und haben es wieder bissi aufgeheizt. Bin aber wieder
  • [gelöst] SONOFF S20 Tasmota updaten

    14
    2
    0 Stimmen
    14 Beiträge
    1k Aufrufe
    GregorSG
    @Dragon @frankyboy73 Hat doch funktioniert Hab ihn doch in meinem Netz gefunden. Er hat jetzt die Version 6.1 aber das ist mir erstmal egal. Er hatte noch die alte Bezeichung, aber eine neue Adresse. Danke für Eure Hilfe !!! #Bleibt gesund
  • RTSP Stream Kamera Aufnahme beenden oder Zeitlich begrenzen.

    4
    0 Stimmen
    4 Beiträge
    520 Aufrufe
    hydrotecH
    @yoda jeder fängt einmal an ;-) Hört sich komplizierter an, wie es ist. Hier mal ein kurzer Auszug, wie ich es, in dem anderen Forum, beschrieben hatte. Eventuell kannst du ja das Grundprinzip in blockly umsetzen. !!! Den hier gezeigten Code keinenfalls in ioBroker verwenden. !!! (dient nur zur Veranschaulichung) Auszug Beschreibung Ok, dann versuche ich mal die Funktion zu beschreiben. Sollte etwas unklar sein, Rückfragen sind erwünscht. Zuerst braucht man ein device welches das motion der Kamera erkennt, um darauf reagieren zu können. Vermutlich wird es bei den meisten Kameras über MQTT/MQTT2 umgesetzt. Prinzipiell ist es egal, man benötigt ja nur das event. Danach noch ein DOIF, welches auf das event reagiert, mit dem Funktionsaufruf erstellen. (Der trigger muss natürlich auf das vorher angelegte device der Kamera angepasst werden. ([mq_XXX_01:"^motion:.ON$"]) {camera_ffmpeg_XX("$SELF", 'address stream', 'camera name', 'destination', 'duration')} Beschreibung des Funktionaufrufes: {camera_ffmpeg_XX(...)} -> Funktionsbezeichnung - Muss einmalig sein, da jede Kamera ihre eigene Funktionsbezeichnung benötigt. - Bspl.: camera_ffmpeg_01, camera_ffmpeg_02, ... "$SELF" -> Damit die readings in das aufrufende Device geschrieben werden. 'address stream' -> Die Adresse unter welcher der rtsp-stream der Kamera aufgerufen werden kann. - Bspl.: 'rtsp://192.168.178.186:8554/unicast' oder 'rtsp://{USERNAME}:{PASSWORD}\@192.168.178.186:8554/unicast' 'camera name' -> Eine einmalige Bezeichnung - Am einfachsten den Namen der Kamera welche motion triggert verwenden - Bspl.: 'mq_XXX_01' 'destination' -> Verzeichnispfad wo die Dateien später landen sollen - kann ein lokales oder entferntes Verzeichnis sein 'duration' -> Aufnahmedauer in Sekunden Anschließend noch die im Anhang befindliche "99_myUtils_camera.pm" in das Verzeichnis, in dem auch die anderen "99_myUtils" Dateien angelegt sind, kopieren. Entweder direkt kopieren, oder den Inhalt der Datei über die FHEM Oberfläche (Edit files) in eine "99_myUtils" einfügen. https://wiki.fhem.de/wiki/99_myUtils_anlegen Jetzt ist noch etwas eigene Arbeit angesagt. In der angelegten "99_myUtils_camera.pm" MUSS für jede Kamera eine Funktion vorhanden sein. Heißt, man kopiert den ganzen Block einer Kamera, und passt die Funktion dementsprechend an. Beispiel: sub camera_ffmpeg_01 {...} sub camera_ffmpeg_02 {...} sub camera_ffmpeg_03 {...} usw. Genauso wird für jede Kamera ein DOIF mit dem jeweiligen Funktionsaufruf benötigt. Beispiel: {camera_ffmpeg_01(...)} {camera_ffmpeg_02(...)} {camera_ffmpeg_03(...)} usw. Das war es im Prinzip schon. Kurzbeschreibung: Die Kamera triggert das DOIF, ffmpeg wird gestartet, und die PID an fhem übergeben. Nachdem die eingestellte Dauer abgelaufen ist, wird ffmpeg mit der zugewiesenen PID wieder gestoppt. Sollte während der laufenden Aufnahme die Kamera erneut triggern, wird die aktuell noch laufende Aufnahme um die eingestellte Dauer verlängert. Die zugehörige PID bleibt erhalten, auch wenn ein anderes Gerät ffmpeg startet. Inhalt "99_myUtils_camera.pm" ############################################## # $Id: 99_myUtils_camera.pm 00011 2020-12-24 11:30:00Z kst $ # #************************************************************************ # 2020-12-19 - Datei erstellt # 2020-12-20 - ffmpeg direkt zu starten, anstatt ueber script # 2020-12-21 - ffmpeg wird gestartet, und die zugehoerige PID im reading angelegt # - Funktion mit DOIF erfolgreich getestet # 2020-12-22 - Funktion nur noch mit DOIF getestet # - ffmpeg wird mit der entsprechenden PID gestoppt # - wenn wiederholt geriggert wird, waehrend eine Aufnahme laeuft, # wird die Aufnahme um den Wert der Dauer verlaengert # 2020-12-23 - mit einer sub fuer alle Kameras geht nicht # - fuer jede Kamera eine sub funktioniert # 2020-12-24 - Funktion das die Aufnahmen nach 2 Tagen geloescht werden # - Aufruf durch at # - # - # - # - # - # #------------------------------------------------------------------------ package main; use strict; use warnings; sub myUtils_camera_Initialize($$) { my ($hash) = @_; } # Enter you functions below _this_ line. #************************************************************************ # camera ffmpeg mq_dafang_01 #************************************************************************ sub camera_ffmpeg_dafang_01 { # Pflicht-Uebernahmeparameter (Name des Geraetes von dem die sub aufgerufen wird), mit Ueberpruefung my $kst_name_device = shift // return '!!! Error: minimum call {camera_ffmpeg_dafang_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Uebernahmeparameter (Adresse der Kamera unter welcher der stream aufgerufen werden kann), mit Ueberpruefung # Beispiel: 'rtsp://192.168.78.86:8554/unicast' # Beispiel: 'rtsp://{USERNAME}:{PASSWORD}\@192.168.78.86:8554/unicast' my $kst_stream_camera = shift // return '!!! Error: minimum call {camera_ffmpeg_dafang_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Uebernahmeparameter (Name der Kamera (Device NAME) welche triggert), mit Ueberpruefung # Beispiel: 'mq_dafang_01' my $kst_name_camera = shift // return '!!! Error: minimum call {camera_ffmpeg_dafang_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Parameter (Zielverzeichnis in welchem die Ordner und Dateien angelegt werden), mit Ueberpruefung # Beispiel: '/mnt/ipcam/dafang_01/movie' my $kst_folder_path = shift // return '!!! Error: minimum call {camera_ffmpeg_dafang_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Parameter (Dauer der Aufnahme wenn nur einmal ausgeloest wird), mit Ueberpruefung # Beispiel: '120' fuer zwei Minuten my $kst_ffmpeg_duration = shift // return '!!! Error: minimum call {camera_ffmpeg_dafang_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Benoetigte Ordner und Dateinamen my $kst_folder_sub1 = strftime("%Y-%m", localtime); my $kst_folder_sub2 = strftime("%d", localtime); my $kst_file_name = strftime("%Y_%m_%d__%H_%M_%S.mp4", localtime); my $kst_folder_destination = "$kst_folder_path/$kst_folder_sub1/$kst_folder_sub2"; my $kst_file_destination = "$kst_folder_path/$kst_folder_sub1/$kst_folder_sub2/$kst_file_name"; my $kst_folder_log = "$kst_folder_path/log"; my $kst_file_log = "$kst_name_camera.log"; my $kst_log_destination = "$kst_folder_log/$kst_file_log"; # Meta Daten, die spaeter in der Aufnahme hinterlegt sind (koennen an eigene Beduerfnisse angepasst werden) # Moechte man die Meta Daten nicht verwenden, muss der Aufruf von ffmpeg angepasst werden. # Beispiel: Ohne Titel einfach "-metadata title=$kst_meta_title" entfernen my $kst_meta_title = strftime("%Y_%m_%d__%H_%M_%S", localtime); my $kst_meta_artist = 'kst'; my $kst_meta_comment = 'Livestream'; my $kst_meta_date = strftime("%Y", localtime); my $kst_meta_copyright = "'(c) $kst_meta_date by kst'"; if (defined "$kst_name_device:007_ffmpeg_active" && ReadingsNum("$kst_name_device","007_ffmpeg_active",0)==1) { goto continue_rec; } else { fhem("setreading $kst_name_device 007_ffmpeg_active 0"); } # Readings fuer eine Uebersicht im verwendeten Geraet # Readings werden nur in einem DOIF geschrieben fhem("setreading $kst_name_device 001_name_device $kst_name_device"); fhem("setreading $kst_name_device 002_name_camera $kst_name_camera"); fhem("setreading $kst_name_device 003_file_destination $kst_file_destination"); fhem("setreading $kst_name_device 004_log_destination $kst_log_destination"); # setreading 005_ffmpeg_pid weiter unten im code fhem("setreading $kst_name_device 006_ffmpeg_duration $kst_ffmpeg_duration"); # setreading 007_ffmpeg_active oben und weiter unten im code if (! -d "$kst_folder_log") { system("mkdir -p $kst_folder_log && wait \$!"); Log3 $kst_name_device, 3, "$kst_name_device: $kst_folder_log wurde erstellt"; } if (! -e "$kst_log_destination") { system("touch $kst_log_destination && wait \$!"); Log3 $kst_name_device, 3, "$kst_name_device: $kst_log_destination wurde erstellt"; } if (! -d "$kst_folder_destination") { system("mkdir -p $kst_folder_destination && wait \$!"); Log3 $kst_name_device, 3, "$kst_name_device: $kst_folder_destination wurde erstellt"; } system("ffmpeg -loglevel quiet -rtsp_transport tcp -y -i $kst_stream_camera -vcodec copy -metadata title=$kst_meta_title -metadata comment=$kst_meta_comment -metadata artist=$kst_meta_artist -metadata copyright=$kst_meta_copyright -metadata date=$kst_meta_date $kst_file_destination&"); fhem("setreading $kst_name_device 007_ffmpeg_active 1"); system("wait \$! && ps -fC ffmpeg | awk '/ffmpeg/ {print \$2}' | tail -n 1 >$kst_log_destination && wait \$!"); continue_rec: my ($error, @content) = FileRead({FileName => "$kst_log_destination", ForceType => "file"}); return $error if ($error); my $kst_ffmpeg_pid = $content[0]; fhem ("sleep 0.5; setreading $kst_name_device 005_ffmpeg_pid $kst_ffmpeg_pid"); Log3 $kst_name_device, 3, "$kst_name_device:ffmpeg mit PID: $kst_ffmpeg_pid gestartet"; fhem ("sleep ".($kst_ffmpeg_duration)." ".($kst_name_camera)." quiet; {system('kill -15 \"$kst_ffmpeg_pid\"')}; {Log3 \"$kst_name_device\", 3, \"$kst_name_device:ffmpeg mit PID: $kst_ffmpeg_pid gestoppt\"}; setreading $kst_name_device 007_ffmpeg_active 0"); } #************************************************************************ # camera ffmpeg mq_yi_home_01 #************************************************************************ sub camera_ffmpeg_yi_home_01 { # Pflicht-Uebernahmeparameter (Name des Geraetes von dem die sub aufgerufen wird), mit Ueberpruefung my $kst_name_device = shift // return '!!! Error: minimum call {camera_ffmpeg_yi_home_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Uebernahmeparameter (Adresse der Kamera unter welcher der stream aufgerufen werden kann), mit Ueberpruefung # Beispiel: 'rtsp://192.168.78.86:8554/unicast' # Beispiel: 'rtsp://{USERNAME}:{PASSWORD}\@192.168.78.86:8554/unicast' my $kst_stream_camera = shift // return '!!! Error: minimum call {camera_ffmpeg_yi_home_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Uebernahmeparameter (Name der Kamera (Device NAME) welche triggert), mit Ueberpruefung # Beispiel: 'mq_dafang_01' my $kst_name_camera = shift // return '!!! Error: minimum call {camera_ffmpeg_yi_home_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Parameter (Zielverzeichnis in welchem die Ordner und Dateien angelegt werden), mit Ueberpruefung # Beispiel: '/mnt/ipcam/dafang_01/movie' my $kst_folder_path = shift // return '!!! Error: minimum call {camera_ffmpeg_yi_home_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Pflicht-Parameter (Dauer der Aufnahme wenn nur einmal ausgeloest wird), mit Ueberpruefung # Beispiel: '120' fuer zwei Minuten my $kst_ffmpeg_duration = shift // return '!!! Error: minimum call {camera_ffmpeg_yi_home_01(\"$SELF\", \'address stream\', \'camera name\', \'destination\', \'duration\')} !!!'; # Benoetigte Ordner und Dateinamen my $kst_folder_sub1 = strftime("%Y-%m", localtime); my $kst_folder_sub2 = strftime("%d", localtime); my $kst_file_name = strftime("%Y_%m_%d__%H_%M_%S.mp4", localtime); my $kst_folder_destination = "$kst_folder_path/$kst_folder_sub1/$kst_folder_sub2"; my $kst_file_destination = "$kst_folder_path/$kst_folder_sub1/$kst_folder_sub2/$kst_file_name"; my $kst_folder_log = "$kst_folder_path/log"; my $kst_file_log = "$kst_name_camera.log"; my $kst_log_destination = "$kst_folder_log/$kst_file_log"; # Meta Daten, die spaeter in der Aufnahme hinterlegt sind (koennen an eigene Beduerfnisse angepasst werden) # Moechte man die Meta Daten nicht verwenden, muss der Aufruf von ffmpeg angepasst werden. # Beispiel: Ohne Titel einfach "-metadata title=$kst_meta_title" entfernen my $kst_meta_title = strftime("%Y_%m_%d__%H_%M_%S", localtime); my $kst_meta_artist = 'kst'; my $kst_meta_comment = 'Livestream'; my $kst_meta_date = strftime("%Y", localtime); my $kst_meta_copyright = "'(c) $kst_meta_date by kst'"; if (defined "$kst_name_device:007_ffmpeg_active" && ReadingsNum("$kst_name_device","007_ffmpeg_active",0)==1) { goto continue_rec; } else { fhem("setreading $kst_name_device 007_ffmpeg_active 0"); } # Readings fuer eine Uebersicht im verwendeten Geraet # Readings werden nur in einem DOIF geschrieben fhem("setreading $kst_name_device 001_name_device $kst_name_device"); fhem("setreading $kst_name_device 002_name_camera $kst_name_camera"); fhem("setreading $kst_name_device 003_file_destination $kst_file_destination"); fhem("setreading $kst_name_device 004_log_destination $kst_log_destination"); # setreading 005_ffmpeg_pid weiter unten im code fhem("setreading $kst_name_device 006_ffmpeg_duration $kst_ffmpeg_duration"); # setreading 007_ffmpeg_active oben und weiter unten im code if (! -d "$kst_folder_log") { system("mkdir -p $kst_folder_log && wait \$!"); Log3 $kst_name_device, 3, "$kst_name_device: $kst_folder_log wurde erstellt"; } if (! -e "$kst_log_destination") { system("touch $kst_log_destination && wait \$!"); Log3 $kst_name_device, 3, "$kst_name_device: $kst_log_destination wurde erstellt"; } if (! -d "$kst_folder_destination") { system("mkdir -p $kst_folder_destination && wait \$!"); Log3 $kst_name_device, 3, "$kst_name_device: $kst_folder_destination wurde erstellt"; } system("ffmpeg -loglevel quiet -rtsp_transport tcp -y -i $kst_stream_camera -vcodec copy -metadata title=$kst_meta_title -metadata comment=$kst_meta_comment -metadata artist=$kst_meta_artist -metadata copyright=$kst_meta_copyright -metadata date=$kst_meta_date $kst_file_destination&"); fhem("setreading $kst_name_device 007_ffmpeg_active 1"); system("wait \$! && ps -fC ffmpeg | awk '/ffmpeg/ {print \$2}' | tail -n 1 >$kst_log_destination && wait \$!"); continue_rec: my ($error, @content) = FileRead({FileName => "$kst_log_destination", ForceType => "file"}); return $error if ($error); my $kst_ffmpeg_pid = $content[0]; fhem ("sleep 0.5; setreading $kst_name_device 005_ffmpeg_pid $kst_ffmpeg_pid"); Log3 $kst_name_device, 3, "$kst_name_device:ffmpeg mit PID: $kst_ffmpeg_pid gestartet"; fhem ("sleep ".($kst_ffmpeg_duration)." ".($kst_name_camera)." quiet; {system('kill -15 \"$kst_ffmpeg_pid\"')}; {Log3 \"$kst_name_device\", 3, \"$kst_name_device:ffmpeg mit PID: $kst_ffmpeg_pid gestoppt\"}; setreading $kst_name_device 007_ffmpeg_active 0"); } #************************************************************************ # camera ffmpeg files deleted after 2 days #************************************************************************ sub camera_ffmpeg_file_delete { system("find /mnt/ipcam/dafang_01/movie /mnt/ipcam/yi_01/movie -daystart -mtime +2 -delete && wait \$!"); system("find /mnt/ipcam/dafang_01/movie /mnt/ipcam/yi_01/movie -empty -delete &"); } #************************************************************************ # Temporaer #************************************************************************ # #FFMPEG loggen muss folgende Zeile vor dem ffmpeg befehl stehen #FFREPORT=file=\$kst_folder_log/ffreport.log:level=32 #Beispiel: system("FFREPORT=file=\$kst_folder_log/ffreport.log:level=32 ffmpeg -loglevel quiet ...") # # # 1; Werde das bestimmt auch noch zu ioBroker umsetzen, doch dazu fehlt mir gerade die Zeit und Muse. Fang einfach mal an, und wenn du nicht weiterkommst, kann ich, oder jemand, der den Code lesen kann, weiterhelfen.
  • Firefox: Fehlende Symbole in Skript-Suchfeld

    9
    1
    0 Stimmen
    9 Beiträge
    557 Aufrufe
    C
    @glasfaser Richtig ich habe V5.2.13 stable. Vielen Dank für die Info. Ich verstehe auch das '(again)': Das Problem bestand, dann wurde es behoben, jetzt besteht es wieder. Vielen Dank, dann warte ich mal bis es im stable angekommen ist!
  • Alexa2 Query Abfrage + SQL Fehlermeldung

    3
    2
    0 Stimmen
    3 Beiträge
    286 Aufrufe
    F
    @bananajoe Ok, das teste ich mal. Ich dachte es reicht den Haken bei "Nur Änderungen aufzeichnen" zu setzten. Es gibt ja schließlich zu der Zeit der Fehlermeldung keine Änderung bei dem Datenpunkt, warum wird dann trotzdem versucht den Wert in die Datenbank zu schreiben? Edit: Leider kommt die Fehlermeldung auch mit der Einstellung immer noch. [image: 1642947031556-echoh%C3%BCtte3.jpg] sql.0 2022-01-23 15:08:01.037 error Cannot insert INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(33, 1642946526589, 21.3, 1, 5, 0);: Error: ER_DUP_ENTRY: Duplicate entry '33-1642946526589' for key 'PRIMARY' (id: alexa2.0.Smart-Home-Devices.ae10ab1e-9db0-47d8-959f-5329687aba49.temperature) sql.0 2022-01-23 14:52:54.912 info enabled logging of alexa2.0.Smart-Home-Devices.959f-5329687aba49.temperature, Alias=false
  • [Gelöst] State in Flot nicht auswählbar

    11
    2
    0 Stimmen
    11 Beiträge
    734 Aufrufe
    M
    @homoran said in State in Flot nicht auswählbar: @martinschm sagte in State in Flot nicht auswählbar: Daten wurden über history historisiert und nicht über influx und genau dafür wollte ich die Konfig sehen Mea culpa. Bin gestern zwischen zu vielen Sachen hin und her gesprungen. Für manche Themen braucht man einfach 120% der Aufmerksamkeit. Sorry, das ich euch die Zeit gestohlen habe. Hab die Lösung oben in den Eingangspost notiert, erspart anderen hoffentlich etwas Zeit.
  • Mit Yahia Adapter Solaranlage anzeigen

    yahka adapter yahka
    1
    0 Stimmen
    1 Beiträge
    147 Aufrufe
    Niemand hat geantwortet
  • Fritzbox CheckPresence brauch 5-10 Minuten

    11
    0 Stimmen
    11 Beiträge
    432 Aufrufe
    AndreiosA
    @lptr sagte in Fritzbox CheckPresence brauch 5-10 Minuten: Bei mir ist es auch die 7490 mit OS 7.29... Habe gerade mal die Stoppuhr mitlaufen lassen. Bei einem 10 Sek Abfrageintervall (TR-064) wurde das device nach 13 Sekunden auf false gestellt. Da fällt mir noch ein Verursacher ein: Ich bin nicht über das Fritzbox-WLAN im Netz, sondern habe Ubiquiti-Accessspoints. Diese laufen schon ein paar Jahre und ich komme aktuell nicht an diese heran, da die neuere Config-Software mit den alten Accesspoints anscheinend nicht funktioniert. Einmal eingerichtet, seitdem laufen die Dinger und ich habe mich dummerweise nicht mehr darum gekümmert. Es könnte natürlich auch sein, dass diese der Fritzbox noch eine Weile vorgaukeln, dass das Device noch vorhanden ist. Ich weiß zwar nicht, warum die das machen sollten, aber das wäre eine Erklärung für die unterschiedlichen Zeiten. Naja, da werde ich mich doch in den nächsten Tagen einmal darum kümmern müssen, dass ich wieder an die APs komme und das einmal prüfen.
  • [gelöst] Debian (bullseye) feste IP Adresse

    9
    0 Stimmen
    9 Beiträge
    15k Aufrufe
    Thomas BraunT
    @dominik-braun82 Schmeiß den raus sudo apt remove connman Wie kommt der überhaupt auf das System? In einer Grundinstallation von Bullseye Lite ist der nämlich nicht installiert: Last login: Sat Jan 22 23:10:37 2022 from 100.75.198.95 Wi-Fi is currently blocked by rfkill. Use raspi-config to set the country before use. pi@chet:~ $ systemctl status connman Unit connman.service could not be found. pi@chet:~ $ apt policy connman connman: Installed: (none) Candidate: 1.36-2.2 Version table: 1.36-2.2 500 500 http://deb.debian.org/debian bullseye/main arm64 Packages pi@chet:~ $
  • [Frage] redis - Installation lokal oder extern

    container installation lokal redis
    10
    0 Stimmen
    10 Beiträge
    853 Aufrufe
    hydrotecH
    @apollon77 Wieder was gelernt :-) @apollon77 sagte in [Frage] redis - Installation lokal oder extern: Wie man es sieht :-)) Wenn man 3 Hosts hat ... why not Das ist dann etwas anderes, doch bis dahin bin ich vermutlich schon in Rente ;-)
  • Fire.TV: Prime Video App starten

    6
    0 Stimmen
    6 Beiträge
    863 Aufrufe
    metaxaM
    @bruesche sagte in Fire.TV: Prime Video App starten: abe auch den Link v hast du eine Lösung gefunden für Prime Video?
  • [erledigt] Shutdown Slave - wie klappt das mit Blockly?

    4
    2
    0 Stimmen
    4 Beiträge
    386 Aufrufe
    J
    Ich hatte dasselbe Problem. Dem Linux Adapter jedoch Zugangsdaten auf einen Linuxrechner zu geben, war keine Lösung für mich. Deshalb habe ich einen Adapter geschrieben, über den ein slave (oder master) heruntergefahrenn oder neu gestartet werden kann. https://www.npmjs.com/package/iobroker.power-off [image: 1642894804881-5fe36abf-3e52-47aa-8e0b-023b8d73c698-image.png]
  • [Problem] 1-Wire DS2408 mit OWFS Adapter

    Verschoben
    19
    0 Stimmen
    19 Beiträge
    4k Aufrufe
    Thomas BraunT
    @edstobi Vermutlich wäre es zielführender einen neuen Thread zu starten. Das Ding ist zwei Jahre alt.

285

Online

32.9k

Benutzer

83.0k

Themen

1.3m

Beiträge