Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Gelöst: Update HTML Widget

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    117

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

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

Gelöst: Update HTML Widget

Scheduled Pinned Locked Moved Skripten / Logik
javascript
7 Posts 2 Posters 2.5k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Online
    M Online
    michihorn
    wrote on last edited by michihorn
    #1

    Hallöchen
    wie kann ich manuell ein Update in einem HTML erzwingen?
    Es geht nicht um die Updatezeit die ich im Widget einstellen kann, sondern bei Bedarf neu laden. Ich habe eine Endlos Schleife laufen, dass Video würde sich nicht ändern. Sollte ein neues Video vorhanden sein, dann soll das neue Video in Endlos Schleife laufen, eben bis ein aktuelleres Video zur Verfügung steht.
    Folgende HTML Beschreibung steht im Widget.

    <video autoplay muted loop="true">
        <source src="http://192.168.178.135:8082/vis.0/NL/01Boot.mp4" type="video/mp4">
    </video>
    

    Ob sich ein neues Video eingestellt hat, wird per Script ermittelt

    on({id: 'ring.0.doorbell_21502358.created_at', change: "ne"}, async function (obj) {...........
    

    Hat jemand eine Idee?
    Michael

    OliverIOO 1 Reply Last reply
    0
    • M michihorn

      Hallöchen
      wie kann ich manuell ein Update in einem HTML erzwingen?
      Es geht nicht um die Updatezeit die ich im Widget einstellen kann, sondern bei Bedarf neu laden. Ich habe eine Endlos Schleife laufen, dass Video würde sich nicht ändern. Sollte ein neues Video vorhanden sein, dann soll das neue Video in Endlos Schleife laufen, eben bis ein aktuelleres Video zur Verfügung steht.
      Folgende HTML Beschreibung steht im Widget.

      <video autoplay muted loop="true">
          <source src="http://192.168.178.135:8082/vis.0/NL/01Boot.mp4" type="video/mp4">
      </video>
      

      Ob sich ein neues Video eingestellt hat, wird per Script ermittelt

      on({id: 'ring.0.doorbell_21502358.created_at', change: "ne"}, async function (obj) {...........
      

      Hat jemand eine Idee?
      Michael

      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      wrote on last edited by OliverIO
      #2

      @michihorn

      Funktioniert das Loop Attribut im Video Tag nicht?
      https://developer.mozilla.org/de/docs/Web/HTML/Element/video

      <video muted autoplay loop>

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      M 1 Reply Last reply
      0
      • OliverIOO OliverIO

        @michihorn

        Funktioniert das Loop Attribut im Video Tag nicht?
        https://developer.mozilla.org/de/docs/Web/HTML/Element/video

        <video muted autoplay loop>

        M Online
        M Online
        michihorn
        wrote on last edited by michihorn
        #3

        @oliverio Hallöchen Oliver
        das einmal geladene Video läuft wirklich endlos. Ich speichere allerdings neue Videos meiner RING immer unter dem selben Namen, damit das Widget den richtigen Bezug hat. Sollte sich während des endlos Loops die Quelle geändert haben, also ein neueres Video unter dem selben Namen wie im Widget hinterlegt, wird das nicht berücksichtigt.
        Danke für den Link, ich werde morgen mal Schauen, ob ich damit klar komme.
        Gruß
        Michael

        1 Reply Last reply
        0
        • OliverIOO Offline
          OliverIOO Offline
          OliverIO
          wrote on last edited by
          #4

          @michihorn sagte in Update HTML Widget:

          @oliverio Hallöchen Oliver
          das einmal geladene Video läuft wirklich endlos. Ich speichere allerdings neue Videos meiner RING immer unter dem selben Namen, damit das Widget den richtigen Bezug hat. Sollte sich während des endlos Loops die Quelle geändert haben, also ein neueres Video unter dem selben Namen wie im Widget hinterlegt, wird das nicht berücksichtigt.
          Danke für den Link, ich werde morgen mal Schauen, ob ich damit klar komme.
          Gruß
          Michael

          in dem fall wird die doku zum video tag nicht helfen.
          ein browser kann ja nicht überwachen ob die ursprüngliche ressource (dein video) sich geändert hat.
          mir würde jetzt das folgende einfallen.
          du schreibst die video url in einen datenpunkt und fügst ein veränderliches zeichen hinten an, bspw die zeit in millisekunden. immer wenn du feststellst, das sich das video geändert hat, dann beschreibst du den datenpunkt neu.
          im html widget fügst du per binding diesen datenpunkt an stelle der video url ein.
          damit das veränderliche zeichen das video nicht stört musst du es mit einem fragezeichen trennen (vorher mal im browser probieren)
          Das veränderliche Kennzeichen benötigst du, da bei beschreiben des gleichen Inhalts in einen Datenpunkt in vis sonst keine Änderung ausgelöst wird. theoretisch dürfte der browser in diesem fall alles nach dem Fragezeichen nicht auswerten.

          Beispiel Inhalt des Datnepunkts

          http://192.168.178.135:8082/vis.0/NL/01Boot.mp4?12345
          

          Inhalt des html widgets

          <video autoplay muted loop="true">
              <source src="{Name des Datenpunktes}" type="video/mp4">
          </video>
          

          Also den Namen des Datenpunktes in geschweiften Klammern da reinschreiben wo die Url auftauchen soll.

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          M 1 Reply Last reply
          0
          • OliverIOO OliverIO

            @michihorn sagte in Update HTML Widget:

            @oliverio Hallöchen Oliver
            das einmal geladene Video läuft wirklich endlos. Ich speichere allerdings neue Videos meiner RING immer unter dem selben Namen, damit das Widget den richtigen Bezug hat. Sollte sich während des endlos Loops die Quelle geändert haben, also ein neueres Video unter dem selben Namen wie im Widget hinterlegt, wird das nicht berücksichtigt.
            Danke für den Link, ich werde morgen mal Schauen, ob ich damit klar komme.
            Gruß
            Michael

            in dem fall wird die doku zum video tag nicht helfen.
            ein browser kann ja nicht überwachen ob die ursprüngliche ressource (dein video) sich geändert hat.
            mir würde jetzt das folgende einfallen.
            du schreibst die video url in einen datenpunkt und fügst ein veränderliches zeichen hinten an, bspw die zeit in millisekunden. immer wenn du feststellst, das sich das video geändert hat, dann beschreibst du den datenpunkt neu.
            im html widget fügst du per binding diesen datenpunkt an stelle der video url ein.
            damit das veränderliche zeichen das video nicht stört musst du es mit einem fragezeichen trennen (vorher mal im browser probieren)
            Das veränderliche Kennzeichen benötigst du, da bei beschreiben des gleichen Inhalts in einen Datenpunkt in vis sonst keine Änderung ausgelöst wird. theoretisch dürfte der browser in diesem fall alles nach dem Fragezeichen nicht auswerten.

            Beispiel Inhalt des Datnepunkts

            http://192.168.178.135:8082/vis.0/NL/01Boot.mp4?12345
            

            Inhalt des html widgets

            <video autoplay muted loop="true">
                <source src="{Name des Datenpunktes}" type="video/mp4">
            </video>
            

            Also den Namen des Datenpunktes in geschweiften Klammern da reinschreiben wo die Url auftauchen soll.

            M Online
            M Online
            michihorn
            wrote on last edited by michihorn
            #5

            @oliverio sagte in Update HTML Widget:

            <source src="{Name des Datenpunktes}" type="video/mp4">

            Hallo Oliver,
            der RING Adapter hat folgenden DP angelegt: "ring.0.doorbell_21502358.livestream_url",
            der Inhalt sieht wie folgt aus:
            http://DESKTOP-RQ1PD76(SmartHome):8082/ring.0/doorbell_21502358/livestream21502358_1629730800258.mp4
            somit sieht der Inhalt bei neuem Ereignis immer anders aus.
            Ich gehe davon aus, das "http://DESKTOP-RQ1PD76" durch die physische IP 192.168.178.xxx ersetzt werden muss.
            IM HTML sieht es so aus:

            <video autoplay muted loop="true">
                    <source src="{ring.0.doorbell_21502358.livestream_url}" type="video/mp4">
            </video>
            

            Wie genau soll das Binding aussehen? Leider hat es noch nicht geklappt.
            Gruß
            Michael

            OliverIOO 1 Reply Last reply
            0
            • M michihorn

              @oliverio sagte in Update HTML Widget:

              <source src="{Name des Datenpunktes}" type="video/mp4">

              Hallo Oliver,
              der RING Adapter hat folgenden DP angelegt: "ring.0.doorbell_21502358.livestream_url",
              der Inhalt sieht wie folgt aus:
              http://DESKTOP-RQ1PD76(SmartHome):8082/ring.0/doorbell_21502358/livestream21502358_1629730800258.mp4
              somit sieht der Inhalt bei neuem Ereignis immer anders aus.
              Ich gehe davon aus, das "http://DESKTOP-RQ1PD76" durch die physische IP 192.168.178.xxx ersetzt werden muss.
              IM HTML sieht es so aus:

              <video autoplay muted loop="true">
                      <source src="{ring.0.doorbell_21502358.livestream_url}" type="video/mp4">
              </video>
              

              Wie genau soll das Binding aussehen? Leider hat es noch nicht geklappt.
              Gruß
              Michael

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              wrote on last edited by
              #6

              @michihorn sagte in Update HTML Widget:

              @oliverio sagte in Update HTML Widget:

              <source src="{Name des Datenpunktes}" type="video/mp4">

              Hallo Oliver,
              der RING Adapter hat folgenden DP angelegt: "ring.0.doorbell_21502358.livestream_url",
              der Inhalt sieht wie folgt aus:
              C:\iobroker\SmartHome\iobroker-data\ring_0\snapshot\livestream21502358_1629726449884.mp4
              somit sieht der Inhalt bei neuem Ereignis immer anders aus.
              IM HTML sieht es so aus:

              <video autoplay muted loop="true">
                      <source src="{ring.0.doorbell_21502358.livestream_url}" type="video/mp4">
              </video>
              

              Wie genau soll das Binding aussehen? Leider hat es noch nicht geklappt.
              Gruß
              Michael

              das hat deswegen nicht geklappt, weil du da einen dateipfad und keine url angegeben hast.
              im ersten post hast du doch geschrieben, das das video immer unter der url http://192.168.178.135:8082/vis.0/NL/01Boot.mp4 verfügbar ist

              irgendwie hat sich die fragestellung nun geändert?

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              1 Reply Last reply
              0
              • M Online
                M Online
                michihorn
                wrote on last edited by michihorn
                #7

                @oliverio sagte in Update HTML Widget:

                Also den Namen des Datenpunktes in geschweiften Klammern da reinschreiben wo die Url auftauchen soll.

                Hallo Oliver,
                ich habe Deinen Tip umgesetzt.
                In dem vom RING Adapter angelegten Datenpunkt ist die URL mit Angabe des Hostes abgelegt, dass war nicht so gut, ich habe den Hostnamen gegen die Host IP per Script getauscht.

                on({id: 'ring.0.doorbell_21502358.livestream_url', change: "ne"}, async function (obj) {
                var string = getState("ring.0.doorbell_21502358.livestream_url").val;
                var newstring
                newstring=string.replace("http://DESKTOP-RQ1PD76(SmartHome)","http://192.168.178.xxx");
                log(newstring);
                setState("ring.0.doorbell_21502358.livestream_url",newstring)
                });
                

                Aus "http://DESKTOP-RQ1PD76(SmartHome):8082/ring.0/doorbell_21502358/livestream21502358_1629730800258.mp4" ist nun
                http://192.168.178.xxx:8082/ring.0/doorbell_21502358/livestream21502358_1629730800258.mp4 geworden.

                Der Eintrag im HTML-Widget sieht jetzt so aus:

                <video height="448px" width="800" autoplay muted loop="true">
                        <source src="{ring.0.doorbell_21502358.livestream_url}" type="video/mp4">
                </video>
                

                Das klappt.
                War ein toller Tip mit dem Binding.
                Gruß
                Michael

                1 Reply Last reply
                1
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                Support us

                ioBroker
                Community Adapters
                Donate

                721

                Online

                32.5k

                Users

                81.7k

                Topics

                1.3m

                Posts
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2025
                logo
                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • Home
                • Recent
                • Tags
                • Unread 0
                • Categories
                • Unreplied
                • Popular
                • GitHub
                • Docu
                • Hilfe