WLAN-Devices mit REST-API ein- und ausschalten

  • Griaß Euch,

    ich bin zwar neu - hab aber schon das halbe Forum nach meinem Problem durchsucht und leider keine Antwort gefunden.


    Ich möchte DMXControl 3 und Nodle einige DMX-Interfacs zur Musik steuern. Zusätzliche möchte ich Leuchten per WLAN-Schalter (ESP01 bzw. Sonoff-Mini) über Rest-API ein- bzw. ausschalten. Dabei reagieren die WLAN-Leuchten auf "http://x.x.x.x/leuchte/001/turn_on" für Leuchte 001 ein und ".../turn_off" für Leuchte aus.

    Wie kann ich dieses URL-Aufrufe in DMXControl zeitgesteuert einbauen?


    Ich bin für jeden Hinweis dankbar

    Charly

  • JPK

    Approved the thread.
  • Griaß di Charly!


    Herzlich willkommen bei uns, und schön, dass du dir die Mühe gemacht hast, für dein Problem erst mal das Forum zu durchsuchen!


    Ich hab mal auf deinem Problem ein bisschen herumüberlegt, bin aber leider auch zu keiner Lösung gekommen. DMXControl ist da leider sehr auf DMX/Art-Net/sACN ausgelegt - das sind die Protokolle, die in der Veranstaltungstechnik üblich sind.


    HTTP ist mehr ein Protokoll aus der Webtechnologie, was auch für Hausautomatisierung eingesetzt wird. Programme daraus wären dann auch meine Idee, um eine Umsetzung von Art-Net nach HTTP zu erledigen. Leider können die mir bekannten Programme da nur Art-Net senden, aber nicht selbst empfangen, was für diesen Anwendungszweck nötig wäre.


    Dann gäbe es die Möglichkeit, auf deinen Geräten eine andere Firmware einzusetzen - sehr bekannt dafür ist Tasmota von Theo Arends, das würde schon mal eine Vielzahl von neuen Protokollen mitbringen - nur eben leider nicht Art-Net. Da wäre MQTT mit dabei, aber leider spricht DMXControl noch kein MQTT :(


    Für Art-Net auf dem ESP8266 (das ist der Mikrocontroller, der in deinen Geräten steckt) ist mir ein Projekt von Ulrich Radig bekannt - allerdings müsste man das dann noch anpassen, sodass er nicht DMX ausgibt, sondern dann auf einen Kanal reagiert und dein Gerät schaltet.


    Wenn du bei dieser Hardware bleiben willst, dann sehe ich also nur zwei Lösungen, die aber jeweils Programmierarbeit nötig machen:
    1. Du schreibst (in einer Programmiersprache deiner Wahl) einen Umsetzer von Art-Net nach HTTP

    2. Du schreibst eine neue Firmware für dein Gerät, die dann Art-Net kann


    Ich an deiner Stelle würde versuchen, deine Leuchten auf andere Art und Weise anzusteuern (z.B. mit einem DMX Switchpack), dürfte die einfachste Lösung sein.

  • Hmm, eine Idee hab ich doch noch: vvvv - a multipurpose toolkit, ist für nichtkommerziellen Einsatz kostenlos nutzbar.


    Laut Protokoll-Dokumentation kann der Art-Net empfangen und HTTP Requests (Get und Post) senden


    Vorteil ist da, du musst da erst mal nicht programmieren können, sondern kannst dir da reicht weit alles auf einer grafischen Oberfläche zusammenklicken. Wie genau kann ich aber nicht sagen, ich habe mit dem Tool noch keine große Erfahrung.

  • Beim Lesen der Antwort von Stefan fällt mir noch eine dritte Lösung ein:

    Du schreibst in C# ein Plugin für DMXControl 3, welches die Web-Calls durchführt. Dieses Plugin müsste dabei vermutlich nicht mal so groß sein, sondern bräuchte nur etwas Logik für das Schicken des Rest-API-Calls und einen Node im Input Assignment, über den man einen API-Call konfiguriert. An diese Sachen kommt man auch per Plugin heran.

    Viele Grüße

    JP

  • Möglicherweise geht´s auch mit "Bomes Midi Translator".

    DMXControl schickt - sobald gewünscht eine spezielle Midi-Note über den virtuellen Midi-Kanal zu Bomes. Bomes reagiert darauf und kann als Folgeaktion eine Datei ausführen. Darin kann ja dann alles mögliche passieren.

  • So - Danke mal für eure Antworten und Hinweise. Ich hätte gehofft, es gäbe was, was ich in der Beschreibung bzw. per Internet-Suche nicht gefunden habe. Dennoch werde ich mir eure Hinweise genauer anschauen und wenn ich's was brauchbares zusammen bring, auch hier mitteilen.

    Danke Charly

  • Passender könnte dieser Thread für mich gar nicht sein!


    Momentan brainstorme ich darüber irgendwie meine Elgato Key Light einbinden zu können. In meinem Fall zwar ein anderes Device, aber von der Vorgehensweise dann identisch zu den Geräten von charly.h, also HTTP basiert, mit eigenem integrierten HTTP Server mit API, auf den Key Light.

    Ich könnte zwar ein eigenständiges Tool dafür aufsetzen (weil ich auf MIDI Signale reagieren will), aber es wäre halt echt genial, dies in DMXControl eingebaut zu kriegen. Daher tendiere ich, wie von JPK angebracht, zu einer Plugin-basierten Lösung.

    Alles in Richtung der Lampen ist kein Problem. Allerdings ist mir noch nicht klar, wie ich mich dann mit DMXControl kommunizieren lasse. Vermutlich mittels IA (da fehlt mir nur bisher leider noch die Tiefe). Habe aber das Gefühl, dass ggfs Events vom IA heraus noch einfach sind. Aber wie ich das dann in einer Cue(list) setzen und entsprechen verarbeiten kann.. ja, da bin ich noch planlos.

    Evtl hat da jemand direkt einen Ansatz parat, wo ich mich dran hängen und weiter vertiefen kann.


    charly.h Da wir beide momentan dasselbe Ziel verfolgen, biete ich mich da gerne an, bei der Umsetzung eines Plugins zu helfen oder, falls keine entsprechenden Möglichkeiten bei dir selbst gegeben sind, das zu übernehmen und zu begleiten.

  • Allerdings ist mir noch nicht klar, wie ich mich dann mit DMXControl kommunizieren lasse. Vermutlich mittels IA (da fehlt mir nur bisher leider noch die Tiefe). Habe aber das Gefühl, dass ggfs Events vom IA heraus noch einfach sind. Aber wie ich das dann in einer Cue(list) setzen und entsprechen verarbeiten kann.. ja, da bin ich noch planlos.

    Evtl hat da jemand direkt einen Ansatz parat, wo ich mich dran hängen und weiter vertiefen kann.

    Einen direkten Ansatz habe ich nicht, sondern kann es nur von oben betrachten und Tipps geben. Aber es ist auch möglich, die Lampe über das Plugin direkt als weiteres Gerät einzubinden. So wird schon von Beginn an mit der DeskLamp verfahren und mittlerweile auch mit dem Nanoleaf-Plugin. Im letzteren Fall ist es so, dass es eben zusätzlich noch einen Konfigurations-Dialog gibt. Aber das Input Assignment (IA) wird hier nicht benötigt. Dank des HAL ist es dann eben so, als würdest du einfach weitere DMX-Geräte ansprechen.

  • Das mit dem Einbinden als Gerät aus dem Plugin heraus wollte ich auch gerade schon vorschlagen. Da man mit Plugins in DMXControl prinzipiell die gleichen Softwarefunktionen nutzen kann wie die internen Elemente, kannst du auch z.B. eigene Geräte definieren und im Gerätedialog anbieten. Dann läuft die Ansteuerung ähnlich einem normalen Gerät mit allen dazu gehörenden Möglichkeiten (in Cues speichern, Fannings und Effekte anwenden,...) und wird dann eben über dein Plugin an das Key Light geschickt. Du kannst dir ja mal das GIT Repo des nanoleaf-Plugins von Patrick anschauen. Da ist das alles drin: https://github.com/DMXControl/Nanoleaf-dmxc3-Plugin

  • Das Nanoleaf-Plugin ist eine wunderbare Blaupause! Eigentlich tut es im wesentlichen technisch sogar 1zu1 das, was hier angestrebt wird. Nur leider halt auf die NanoLeafs gemünzt (was vermutlich schlicht daher rührt, dass es die erste Erweiterung für ein solches Device gewesen sein dürfte),


    Werde mich also dann an dem Plugin orientieren. Danke euch!

  • Das hatt ich auch schon vor xD

  • Das Nanoleaf-Plugin ist eine wunderbare Blaupause! Eigentlich tut es im wesentlichen technisch sogar 1zu1 das, was hier angestrebt wird. Nur leider halt auf die NanoLeafs gemünzt (was vermutlich schlicht daher rührt, dass es die erste Erweiterung für ein solches Device gewesen sein dürfte),


    Werde mich also dann an dem Plugin orientieren. Danke euch!

    Ja, genau da ist wirklich alles drinne was du brauchst
    Sowohl um etwas in IA zu machen oder als Gerät direkt

    Bei fragen, frag mich, das teil hab ich programmiert

  • Newly created posts will remain inaccessible for others until approved by a moderator.

    The last reply was more than 365 days ago, this thread is most likely obsolete. It is recommended to create a new thread instead.