Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. WebSocket Client in einem Skript verwenden?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    WebSocket Client in einem Skript verwenden?

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      picky @Worlik last edited by

      @worlik Wenn du IoBroker pro gebucht hast, würde ich eventuell dafür iot/SimpleAPI benutzen, so das du per Script auf Server direkt oder übers Internet Datenpunkte schreiben/lesen kannst.

      W 1 Reply Last reply Reply Quote 0
      • W
        Worlik @picky last edited by

        @picky Mein iobroker läuft lokal auf einem Raspberry PI. Ich bräuchte schon ein Skript, denn es geht darum auf geänderte Objekte zu reagieren, und dann via Websocket in OBS Filter, Quellen und Szenen zu schalten. Die Seite von OBS ist dokumentiert. In iobroker weiß ich aber nicht, wie ich einen Websocket Client umsetze.

        Die SimpleAPI eignet sich dazu meines wissens ja nicht, weil hier nur von außen Objekte gelesen und geändert werden können. Das ist mehr ein Server, als ein Client und er spricht auch die "falsche" Sprache für mein Vorhaben.

        1 Reply Last reply Reply Quote 0
        • OliverIO
          OliverIO @Worlik last edited by OliverIO

          @worlik
          Iobroker arbeitet ja mit Node js
          Im JavaScript Adapter kannst du eigene Skripte erstellen und auch zusätzliche Bibliotheken installieren und hinzufügen.

          Die folgende Bibliothek hilft dir einen websocket Client zu erstellen.
          Ein Beispiel ist in der readme enthalten
          https://www.npmjs.com/package/websocket

          Die Kommunikation mit dem Skript und die Steuerung was gesendet werden soll kannst du über datenpunkte umsetzen.

          1 Reply Last reply Reply Quote 0
          • T
            ticaki Developer last edited by

            @worlik

            soweit ich das sehe ist das hier eine linux cli Anwendung die Befehle an OBS sendet. Sollte einfacher sein per (Scriptadapter exec) diese aufzurufen, als sich durch websocket zu arbeiten.

            https://github.com/muesli/obs-cli

            W 1 Reply Last reply Reply Quote 0
            • W
              Worlik @ticaki last edited by

              @oliverio In welchem Verzeichnis muss ich npm install websocket denn ausführen, damit es dann im Skript auch zur Verfügung steht? Bisher meckert der Admin da immer herum, dass er websocket nicht kennt.

              @ticaki Das sieht auf jeden Fall auch nach einer guten Lösung aus. In der readme sehe ich gerade noch nichts von Filtern, aber ich hoffe einfach mal, dass es trotzdem ein Kommando dafür gibt. Über die sichtbarmachung eines Filters lässt sich zum Beispiel die Kamera schwenken.

              DJMarc75 T 2 Replies Last reply Reply Quote 0
              • DJMarc75
                DJMarc75 @Worlik last edited by

                @worlik sagte in WebSocket Client in einem Skript verwenden?:

                In welchem Verzeichnis muss ich npm install websocket denn ausführen

                Das musst Du direkt in der Instanz vom JavaSkriptAdapter eingeben:

                Screenshot 2023-06-17 140447.png

                W 1 Reply Last reply Reply Quote 0
                • W
                  Worlik @DJMarc75 last edited by

                  @djmarc75 click das hätte ich nie gefunden, vielen dank

                  1 Reply Last reply Reply Quote 0
                  • T
                    ticaki Developer @Worlik last edited by

                    @worlik sagte in WebSocket Client in einem Skript verwenden?:

                    @ticaki Das sieht auf jeden Fall auch nach einer guten Lösung aus. In der readme sehe ich gerade noch nichts von Filtern, aber ich hoffe einfach mal, dass es trotzdem ein Kommando dafür gibt. Über die sichtbarmachung eines Filters lässt sich zum Beispiel die Kamera schwenken.

                    Nimmste den da: https://pypi.org/project/obs-cli/

                    🙂 wenns der auch nicht ist benutze "obs cli" mit google

                    W 1 Reply Last reply Reply Quote 0
                    • W
                      Worlik @ticaki last edited by

                      @ticaki Ja die Idee mit einem Kommandozeilentool ist auf jeden Fall gut. Ich kam gar nicht auf die Idee, sondern dachte es geht ja nur direkt mit Websocket. Ich werde auf jeden Fall beides ausprobieren.

                      W 1 Reply Last reply Reply Quote 0
                      • W
                        Worlik @Worlik last edited by

                        Ich habe nun eine OBS Websocket Implementation gefunden, welche man in iobroker nutzen kann. Ich habe das Modul nun einfach wie im Screenshot von @DJMarc75 gezeigt hinzugefügt und man kann anfangen. Damit kann man sogar auf Events, wie zum Beispiel Szenenwechsel, reagieren. Vielen Dank euch. 🙂

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        732
                        Online

                        31.7k
                        Users

                        79.8k
                        Topics

                        1.3m
                        Posts

                        5
                        13
                        575
                        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