FHEM Funktionen darstellen und AUSLÖSEN von einer anderen Webseite aus

Begonnen von harway2007, 25 Februar 2015, 21:05:02

Vorheriges Thema - Nächstes Thema

harway2007

ich möchte von meiner aktiven Webseite einige FHEM Funktionen auslösen und auch
darstellen lassen ..
beim Aufruf von
http://xxx.xxx.xxx.xxx:8083/fhem?cmd.Licht_MundL=set%20Licht_MundL on&room=Schalter433'">on
-der Schaltvorgang funktioniert aber:
er wechselt in die FHEM Seite und bleibt da - das ist in meinem Fall aber ausnahmsweise nicht erwünscht..
und wie kann der Aufruf gestaltet werden ohne die eigene Seite zu verlasssen ..
die Frage gilt genauso für die Darstellung von Zuständen oder eines Graphen...

MFG Harway





Vertex

Ich kann dir dabei leider nicht helfen, aber hälst du es für eine gute Idee FHEM Funktionen
in eine öffentliche Webseite einzubinden ? Das ist ja geradezu eine Einladung für Hacker.
Ich würde einen FHEM Zugriff ausschließlich über ein VPN realisieren und keinesfalls
öffentlich zugänglich machen. Du muss selbst wissen, was du tust, aber meine Sache wäre das nicht.
Wenn es nur um die Darstellung einer schönen aktuellen Grafik geht, kann man auch
einfach dynamisch Kopien der SVG Plots einbinden.

Gruß
Vertex

Benni

Schicke den Link-Aufruf (Stichwort target) doch einfach in einen unsichtbaren iframe (Stichwort css)
Ich denke zwar genau so wie Vertex, was die Sicherheit angeht. Aber das muss jeder selbst entscheiden.

Gruß Benni.

betateilchen

Zitat von: harway2007 am 25 Februar 2015, 21:05:02
ich möchte von meiner aktiven Webseite einige FHEM Funktionen auslösen

Sowas habe ich in meiner Installation per mailcheck gelöst, das heißt, ich kann meinem fhem zu Hause einfach per email den Befehl schicken "Mach mal die Heizung an, ich komme früher nach Hause!". Natürlich mit Authentifizierung, damit nicht Hinz&Kunz irgendwas an mein fhem schickt.

Ergebnisse werden von meinem fhem per RSS oder InfoPanel auf einem externen Webserver abgelegt, zum Beispiel meine automatisch arbeitende Wetterstation in Serbien: https://sl.j65.de

Einen direkten Zugang zu meinem fhem brauche ich also weder eingehend noch ausgehend.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

harway2007

 8) erst einmal Danke für die Antworten ..

zu Vertex :  Kopien der SVG Plots einbinden: gute Idee werde ich sicher machen

zu Benni :  ein unsichtbaren iframe - wie mach ich das bloss Wordpress begreiflich

zu betateilchen : ha super  - kann man dein cfg Auszug irgendwo sehen ?

zu allen : Sicherheit ist wichtig ... aber in diesem Fall soll der Betrachter meiner Seite was schalten und auch was zu sehen bekommen!

wem noch was einfällt - ich wär dankbar ...

MFG Harway


harway2007

hab die Lösung mit der ausführenden Email versucht ...
durch die Laufzeit der Mail nicht sehr atrraktiv ...

es fehlt mir weiterhin die Möglichkeit direkt von der Seite zu schalten !!!

hat noch jemand einen Tip ?

:-\

betateilchen

Zitat von: harway2007 am 27 Februar 2015, 12:14:00
hab die Lösung mit der ausführenden Email versucht ...
durch die Laufzeit der Mail nicht sehr atrraktiv ...

Du solltest Deinen Mailserver optimieren oder einen Mailanbieter nutzen, der push unterstützt, bei mir dauert das Schalten weniger als drei Sekunden vom Abschicken der email bis hier das Licht angeht :)

Zitat von: harway2007 am 26 Februar 2015, 17:59:10
zu betateilchen : ha super  - kann man dein cfg Auszug irgendwo sehen ?

Nein, weil das auf Betriebssystemebene passiert und nicht aus fhem heraus.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

harway2007

mmh .. :o dann mache ich evt. noch was falsch - in der Definition
steht interval auf 65 - steht das für 65 Sekunden bis zum nächsten holen ?

MFG Harway



nesges

Du kannst auch ein Ajax-Get per onClick-Handler ausführen um "unsichtbar" zu schalten. In etwa so:

<span onClick='$.get("host:8083/fhem?cmd=" + encodeURIComponent('set room onfire') + "&XHR=1'>bla</span>

XHR ist mW nirgends dokumentiert, führt aber dazu, dass FHEMWEB keine HTML-Antwort sendet. $.get() wäre ein Ajax-Get per JQuery, jedes andere Framework sollte ebenso einsetzbar sein.