Programm bei click auf Button von Webserver ausführen

  • Hallo,

    ich sitze im Moment an einem Projekt, was glaube ich recht viele machen:
    ich möchte einige Steckdosen im Haus per Netzwerk steuern können, erstmal nur im Heimnetz, später vielleicht auch mobil.
    Ich habe dafür schon den nötigen 433 MHz Sender und Steckdosen bestellt, aber ich weiß noch nicht hundertprozentig, wie ich das umsetzen werde.
    Bisher habe ich einen Webserver geschrieben (node.js und angularjs) und nur einen kleinen Button im html. Gehen wir jetzt mal davon aus, dass ich irgendwo Zuhause im Netzwerk bin und diesen Webserver laufen habe. Dann muss ich ja irgendwie das Programm auf meinem Raspberry starten, der dann die jeweilige Steckdose anfunkt. Meine Frage lautet also: wie kann ich dieses klicken auf "Licht an" beispielsweise auf meinem Handy so vom Raspberry "abfangen" lassen und das dann abhängig von der Steckdose anmachen?
    Ich hoffe ich hab's so erklärt, dass man's versteht, wenn nicht dann gerne nochmal nachfragen :)

    Danke im voraus ;)

  • Programm bei click auf Button von Webserver ausführen? Schau mal ob du hier fündig wirst!

  • Wieso PHP wenn er sich schon für NodeJS entschieden hat?

    Was spricht denn dagegen, deinen Webserver direkt auf dem Raspberry laufen zu lassen? Vielleicht hilft dir dieser Artikel einwenig weiter?

    Wenn du wirklich das ganze trennen möchtest, könntest Du auf deinem Raspberry Pi einen NodeJS Server laufen lassen, der ausschließlich REST Schnittstellen für das Schalten bereitstellt und diese über deinen ursprünglichen Server ansprichst (Proxy mäßig)

  • Also wenn du mit node.js schon einen Webserver am laufen hast ist der Rest absolut pillepalle :D

    Hab inzwischen alle meine eigenen Webinterfaces der RPi´s auf Node umgestellt, da das wirklich sehr schnell und easy zu erweitern ist ;)

    Hab mal n Bildchen gemacht

    Codetechnisch sieht das bei mir so aus (Beispiel Funksteckdosen):
    HTML - Beispiel.html

    Passend dazu Javscript für den Client - Beispiel.js in HTML einbinden

    Und auf der Serverseite - Server.js

    //EDIT: Um kurz das Prinzip hinter meiner Idee zu erläutern; Ich hab jedem Button im HTML Code eine ID gegeben, die direkt genutzt wird um daraus Variablen zum starten des Programmaufrufs zu generieren, die dann zum Server übertragen werden. Serverseitig muss ich nur überprüfen welchen "syscode" ich habe und setzte dementsprechend (noch) manuell eine Variable des Sockets auf die benötigte Zeichenkette. Ist noch etwas umständlich, das werde ich bei Zeiten aber ändern.

    Hab zudem noch den .css Teil vergessen ;)

    Der Rest sollte eigentlich selbsterklärend sein.

    Einmal editiert, zuletzt von driftmonster (7. April 2015 um 13:27)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!