Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      Rookie50 last edited by

      Hi, falls es jemanden interessiert. Ich habe es nun geschafft meine Kameras mit RTSPtoWeb in iQontrol darzustellen. Man muss einfach ein neues Geräte als Widget erstellen und unter Background_HTML folgenden Code einfügen:

      <input type="hidden" name="webrtc-url" id="webrtc-url" value="http://192.168.2.2:8083/stream/a34525d7-6d13-421d-9127-2cd7bc4323dc/channel/0/webrtc" /> 
      <video id="webrtc-video" autoplay muted playsinline controls style="max-width: 100%; max-height: 100%;" />
      <script>
      setTimeout(function () {
        function startPlay(videoEl, url) {
          const webrtc = new RTCPeerConnection({
            iceServers: [
              {
                urls: ["stun:stun.l.google.com:19302"],
              },
            ],
            sdpSemantics: "unified-plan",
          });
          webrtc.ontrack = function (event) {
            console.log(event.streams.length + " track is delivered");
            videoEl.srcObject = event.streams[0];
            videoEl.play();
          };
          webrtc.addTransceiver("video", { direction: "sendrecv" });
          webrtc.onnegotiationneeded = async function handleNegotiationNeeded() {
            const offer = await webrtc.createOffer();
       
            await webrtc.setLocalDescription(offer);
       
            fetch(url, {
              method: "POST",
              body: new URLSearchParams({ data: btoa(webrtc.localDescription.sdp) }),
            })
              .then((response) => response.text())
              .then((data) => {
                try {
                  webrtc.setRemoteDescription(new RTCSessionDescription({ type: "answer", sdp: atob(data) }));
                } catch (e) {
                  console.warn(e);
                }
              });
          };
       
          const webrtcSendChannel = webrtc.createDataChannel("rtsptowebSendChannel");
          webrtcSendChannel.onopen = (event) => {
            console.log(`${webrtcSendChannel.label} has opened`);
            webrtcSendChannel.send("ping");
          };
          webrtcSendChannel.onclose = (_event) => {
            console.log(`${webrtcSendChannel.label} has closed`);
            startPlay(videoEl, url);
          };
          webrtcSendChannel.onmessage = (event) => console.log(event.data);
        }
       
        const videoEl = document.querySelector("#webrtc-video");
        const webrtcUrl = document.querySelector("#webrtc-url").value;
       
        startPlay(videoEl, webrtcUrl);
      }, 1000);
      </script>
      

      In der erste Zeile muss nur die IP addresse und die Kamera ID angepasst werden:
      http://192.168.2.2:8083/stream/a34525d7-6d13-421d-9127-2cd7bc4323dc/channel/0/webrtc

      Sobald die Ansicht geladen wird startet der Player mit Videobild.

      s.bormann B 2 Replies Last reply Reply Quote 0
      • s.bormann
        s.bormann Most Active @Rookie50 last edited by

        @rookie50 sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

        Hi, falls es jemanden interessiert. Ich habe es nun geschafft meine Kameras mit RTSPtoWeb in iQontrol darzustellen. Man muss einfach ein neues Geräte als Widget erstellen und unter Background_HTML folgenden Code einfügen:

        <input type="hidden" name="webrtc-url" id="webrtc-url" value="http://192.168.2.2:8083/stream/a34525d7-6d13-421d-9127-2cd7bc4323dc/channel/0/webrtc" /> 
        <video id="webrtc-video" autoplay muted playsinline controls style="max-width: 100%; max-height: 100%;" />
        <script>
        setTimeout(function () {
          function startPlay(videoEl, url) {
            const webrtc = new RTCPeerConnection({
              iceServers: [
                {
                  urls: ["stun:stun.l.google.com:19302"],
                },
              ],
              sdpSemantics: "unified-plan",
            });
            webrtc.ontrack = function (event) {
              console.log(event.streams.length + " track is delivered");
              videoEl.srcObject = event.streams[0];
              videoEl.play();
            };
            webrtc.addTransceiver("video", { direction: "sendrecv" });
            webrtc.onnegotiationneeded = async function handleNegotiationNeeded() {
              const offer = await webrtc.createOffer();
         
              await webrtc.setLocalDescription(offer);
         
              fetch(url, {
                method: "POST",
                body: new URLSearchParams({ data: btoa(webrtc.localDescription.sdp) }),
              })
                .then((response) => response.text())
                .then((data) => {
                  try {
                    webrtc.setRemoteDescription(new RTCSessionDescription({ type: "answer", sdp: atob(data) }));
                  } catch (e) {
                    console.warn(e);
                  }
                });
            };
         
            const webrtcSendChannel = webrtc.createDataChannel("rtsptowebSendChannel");
            webrtcSendChannel.onopen = (event) => {
              console.log(`${webrtcSendChannel.label} has opened`);
              webrtcSendChannel.send("ping");
            };
            webrtcSendChannel.onclose = (_event) => {
              console.log(`${webrtcSendChannel.label} has closed`);
              startPlay(videoEl, url);
            };
            webrtcSendChannel.onmessage = (event) => console.log(event.data);
          }
         
          const videoEl = document.querySelector("#webrtc-video");
          const webrtcUrl = document.querySelector("#webrtc-url").value;
         
          startPlay(videoEl, webrtcUrl);
        }, 1000);
        </script>
        

        In der erste Zeile muss nur die IP addresse und die Kamera ID angepasst werden:
        http://192.168.2.2:8083/stream/a34525d7-6d13-421d-9127-2cd7bc4323dc/channel/0/webrtc

        Sobald die Ansicht geladen wird startet der Player mit Videobild.

        Klasse!
        Könntest Du ggf. einen kurzen Wiki-Artikel erstellen? Also im Prinzip dieser Beitrag + ganz kurz, wie das mit rtsptoweb geht.
        Das wäre echt klasse!

        R 1 Reply Last reply Reply Quote 0
        • R
          Rookie50 @s.bormann last edited by

          @s-bormann Hi, ist im Wiki 😄 Habe ein bisschen von tombox geklaut 😉 Bitte geht mal durch, ob es so verständlich ist.

          s.bormann 1 Reply Last reply Reply Quote 0
          • s.bormann
            s.bormann Most Active @Rookie50 last edited by

            @rookie50 sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

            @s-bormann Hi, ist im Wiki 😄 Habe ein bisschen von tombox geklaut 😉 Bitte geht mal durch, ob es so verständlich ist.

            Klasse!! Sieht super aus, vielen Dank!!

            1 Reply Last reply Reply Quote 0
            • M
              muuulle @muuulle last edited by muuulle

              @muuulle said in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

              @s-bormann

              Moin Sebastian,

              die persistenten Popup sind großartig. Zwei bebilderte Fragen:

              1. Kann man die Transparenz reduzieren?
                Bildschirmfoto 2023-03-29 um 20.55.11.png.png

              2. Was bedeuten die Info- und Warnmeldung vom Web Adapter?
                logs - pi-broker.png.png

              Besten Dank

              @s-bormann
              Moin,

              neben den beiden hier zitierten Punkten, habe ich noch eine weitere Frage/Anregung 😊

              Kann man persistente Popup einer bestimmten ID über einen Blockly Befehl löschen?

              Schönes Wochenende

              s.bormann 1 Reply Last reply Reply Quote 0
              • s.bormann
                s.bormann Most Active @muuulle last edited by

                @muuulle sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                @muuulle said in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                @s-bormann

                Moin Sebastian,

                die persistenten Popup sind großartig. Zwei bebilderte Fragen:

                1. Kann man die Transparenz reduzieren?
                  Bildschirmfoto 2023-03-29 um 20.55.11.png.png

                2. Was bedeuten die Info- und Warnmeldung vom Web Adapter?
                  logs - pi-broker.png.png

                Besten Dank

                @s-bormann
                Moin,

                neben den beiden hier zitierten Punkten, habe ich noch eine weitere Frage/Anregung 😊

                Kann man persistente Popup einer bestimmten ID über einen Blockly Befehl löschen?

                Schönes Wochenende

                Hi,

                Zu 1.: Transprarenz wollte ich noch als Option einbauen - bin aber gerade anderweitig beschäftigt, deshalb wird es noch ein klein wenig dauern. Bis dahin könntest Du im Benutzerdefinierten CSS folgendes eingeben:

                #popup{
                	opacity: 1 !important;
                }
                

                Damit fadet es zwar nicht mehr so schön ein- und aus, aber es kann als Überbrückung bis alles user-wählbar ist genutzt werden. Ich werde dann auch noch die Hintergrundfarbe anpassbar machen.

                Zu 2.: Die Warnungen im Web-Adapter kann man erst mal ignorieren, da muss ich noch das ack-flag korrekt setzen, werde ich demnächst bearbeiten.

                Zu 3.: Das geht mit dem "steuere"-Blockly auf den Datenpunkt iqontrol.<x>.Popup.PERSISTENT_MESSAGES_DELETE_ID:
                727a49a6-da18-42a6-a0b9-c83d35028d94-image.png

                LG!!

                1 Reply Last reply Reply Quote 0
                • E
                  Easyghost last edited by

                  Hi benötige eure Hilfe
                  Das ist mein Aktueller Stand
                  Screenshot_20230403-094211.png

                  Hätte es gerne so

                  Screenshot_20230403-095057.png

                  Habe aktuell das Problem das es sich nicht zu und aufklappen lässt finde einfach nicht die Einstellung dazu!

                  Danke für eure Mühe

                  dslraser s.bormann 2 Replies Last reply Reply Quote 0
                  • dslraser
                    dslraser Forum Testing Most Active @Easyghost last edited by dslraser

                    @easyghost sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                    Hi benötige eure Hilfe
                    Das ist mein Aktueller Stand
                    Screenshot_20230403-094211.png

                    Hätte es gerne so

                    Screenshot_20230403-095057.png

                    Habe aktuell das Problem das es sich nicht zu und aufklappen lässt finde einfach nicht die Einstellung dazu!

                    Danke für eure Mühe

                    Das ist ein altes Foto von mir. Damals hatte ich das noch so. (da ist auch eine Beschreibung)

                    https://forum.iobroker.net/post/752651

                    Dann hatte ich noch eine neuere Version davon gemacht.

                    https://forum.iobroker.net/post/755066

                    Dazu musst Du wahrscheinlich etwas Zeit zum Einlesen investieren.
                    Es gibt auch noch andere Möglichkeiten so etwas umzusetzen, allerdings müsste ich dafür auch erst im Forum auf die Suche gehen…(irgendwo ist das hier im Forum schon alles beschrieben)

                    E 2 Replies Last reply Reply Quote 0
                    • s.bormann
                      s.bormann Most Active @Easyghost last edited by

                      @easyghost sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                      Hi benötige eure Hilfe
                      Das ist mein Aktueller Stand
                      Screenshot_20230403-094211.png

                      Hätte es gerne so

                      Screenshot_20230403-095057.png

                      Habe aktuell das Problem das es sich nicht zu und aufklappen lässt finde einfach nicht die Einstellung dazu!

                      Danke für eure Mühe

                      Schau auch mal im wiki:
                      https://github.com/sbormann/ioBroker.iqontrol/wiki/Listen-Zähler

                      E 1 Reply Last reply Reply Quote 0
                      • E
                        Easyghost @dslraser last edited by

                        @dslraser OK Danke Versuch es heute Abend Mal nach der neuen Version

                        1 Reply Last reply Reply Quote 1
                        • E
                          Easyghost @s.bormann last edited by Easyghost

                          @s-bormann ja nach dem Wiki habe ich es gemacht aber leider ist das nicht mehr aktuell und bekomme es auch nicht hin das es sich aufklappt und schließt.

                          PS: und erstmal großes Lob von mir für den Adapter iQontrol.

                          1 Reply Last reply Reply Quote 0
                          • E
                            Easyghost @dslraser last edited by Easyghost

                            @dslraser Hi habe es nochmal mit der neuen Version gemacht
                            Screenshot_20230403-211233.png
                            Screenshot_20230403-211227.png

                            Da komme ich so weit bin nur nicht ganz sicher ob der Fehler in der Überschrift am Blockly oder am iQontrol liegt?

                            da_Woody dslraser 2 Replies Last reply Reply Quote 0
                            • da_Woody
                              da_Woody @Easyghost last edited by

                              @easyghost du meinst 39225417-c8e3-4543-873d-342730e9ff9a-grafik.png ?

                              E 1 Reply Last reply Reply Quote 0
                              • E
                                Easyghost @da_Woody last edited by Easyghost

                                @da_woody ja habe eins offen eins gekippt dann sollte doch oben stehen 2 Fenster geöffnet oder ? Weiß aber nicht wo der Fehler liegt

                                da_Woody 1 Reply Last reply Reply Quote 0
                                • da_Woody
                                  da_Woody @Easyghost last edited by

                                  @easyghost hab dich verstanden. ich verwende das so nicht, aber hab mir das blockly mal runtergeladen, da steht nix von okay drinnen. würde also sagen, du hast da in iQontrol was falsch eingestellt.
                                  kontrolliere anhand vom wiki nochmal alles, oder machs gegebene falles komplett neu...

                                  1 Reply Last reply Reply Quote 0
                                  • dslraser
                                    dslraser Forum Testing Most Active @Easyghost last edited by

                                    @easyghost
                                    ich habe Dir mal eine Chat Nachricht geschrieben.
                                    Die Überschrift macht das Blockly. Du hast wahrscheinlich im Blockly etwas nicht bzw. etwas falsch eingestellt.
                                    Bei mir laufen diese Blockly seit sehr langer Zeit Fehlerfrei.

                                    E 1 Reply Last reply Reply Quote 0
                                    • E
                                      Easyghost @dslraser last edited by

                                      @dslraser

                                      Danke für eure Hilfe habe es hinbekommen Screenshot_20230404-221836.png

                                      War eine Einstellung in der Liste im iQontrol habe es nach den Bildern gemach aus dem Wiki
                                      149938703-94bd37bb-aeca-4547-85a1-559cf6126f47.png 149938704-37e620a4-6b71-41ff-bc12-94ae801fdfb8.png 149938707-ebd82516-cb25-4fd7-afb8-6fb8f561b141.png

                                      Und so muss es bei mir sein
                                      Screenshot_20230404-222816.png Screenshot_20230404-222829.png Screenshot_20230404-222752.png

                                      dslraser 1 Reply Last reply Reply Quote 1
                                      • dslraser
                                        dslraser Forum Testing Most Active @Easyghost last edited by dslraser

                                        @easyghost

                                        War eine Einstellung in der Liste im iQontrol habe es nach den Bildern gemach aus dem Wiki

                                        Ich habe Alias in Verwendung und diese dann auf deutsch erstellt, also nicht mit CLOSED/TILTED oder OPEN.

                                        Beispiel von einem alias für ein Fenster wie ich es verwende

                                        {
                                          "type": "state",
                                          "common": {
                                            "name": "Bad links",
                                            "def": 0,
                                            "type": "number",
                                            "role": "window.value",
                                            "read": true,
                                            "write": false,
                                            "min": 0,
                                            "max": 2,
                                            "states": {
                                              "0": "geschlossen",
                                              "1": "gekippt",
                                              "2": "geöffnet"
                                            },
                                            "alias": {
                                              "id": "hm-rpc.xxxxxxxxxxxx.1.STATE"
                                            }
                                          },
                                          "native": {},
                                          "from": "system.adapter.javascript.0",
                                          "user": "system.user.admin",
                                          "ts": 1615639416752,
                                          "_id": "alias.0.Fenster.Bad_Fenster_links",
                                          "acl": {
                                            "object": 1636,
                                            "state": 1636,
                                            "owner": "system.user.admin",
                                            "ownerGroup": "system.group.administrator"
                                          }
                                        }
                                        

                                        jetzt vielleicht nur noch "einheitliche" Schreibweisen in groß oder klein und "passende" Symbole für geschlossen/gekippt und geöffnet verwenden und vielleicht Alias anlegen ohne ".STATE" 👍 , dann sieht es noch besser aus.😊

                                        3DB89260-C2C9-4977-A76A-4459E10BF02C.png

                                        E 1 Reply Last reply Reply Quote 1
                                        • E
                                          Easyghost @dslraser last edited by Easyghost

                                          @dslraser ja das muss ich später noch ändern für mich ist erst Mal die Funktion wichtig und das ich es verstehe außensehen kommt zum Schluss 😜.
                                          Das ist ne andere Aufgabe nun muss ich als nächstes erst Mal schauen wie das mit der digitalen Uhr läuft.
                                          Aber Danke für das Skript kann es dann direkt mit machen.

                                          dslraser 1 Reply Last reply Reply Quote 0
                                          • dslraser
                                            dslraser Forum Testing Most Active @Easyghost last edited by

                                            @easyghost sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                                            Aber Danke für das Skript kann es dann direkt mit machen.

                                            ? was für’n Skript ?

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            app dark-mode iqontrol responsive vis visualisierung visualization widget
                                            295
                                            7633
                                            6192340
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo