Mit Windows Kommandos an FHEM senden (via EventGhost)

Begonnen von Spiff, 07 Juli 2013, 18:24:32

Vorheriges Thema - Nächstes Thema

Spiff

Hallo!

Ich beginne gerade, mich etwas in FHEM einzuarbeiten.
Gibt es eine Möglichkeit, von außen Befehle z.B. mit Command Line Parametern an FHEM zu senden?
Also sozusagen per Verknüpfung aus Windows heraus.

Momentan benutze ich das FHEMWEB, aber wenn ich "localhost:8083/fhem?cmd.Kaffee=set Kaffee on&room=all" in eine Verknüpfung packe, öffnet er den Browser, wartet bei der Benutzerauthentifizierung und bleibt danach auch geöffnet.
Ich möchte es sozusagen versteckt und ohne Interaktion machen können.

Terminal funktioniert auch nicht - oder ich habe das passende Programm nicht gefunden. Auch hier muss man sich erst anmelden und ein Terminal mit einstellbaren und per Command Line aufrufbaren Makros ist mir nicht bekannt.

Gibt es andere Alternativen, also eine Verknüpfung mit integrierter Passwortangabe und versteckter Ausführung?

Hintergrund ist, dass ich FHEM mit EventGhost koppeln möchte. Ich habe schon ein paar Regeln in Eventghost erstellt und ich möchte z.B. mittels eines Schalters sowohl EventGhost als auch FHEM mitteilen, dass ich zu Hause bin. Momentan mache ich das über ein USB-Experimentierboard mit digitalen Ein- und Ausgängen, das mit EventGhost kommunizieren kann.

Danke & viele Grüße
Spiff

rudolfkoenig

Z.Bsp. mit
 perl fhem.pl <fhemhost>:7072 "<command>..."

muesste es klappen, habs aber unter Windows nie getestet.

Steht unter anderem in http://fhem.de/commandref.html#intro


Spiff

Super, das klappt, danke!
Kann man in die Kommandozeile auch das Passwort der Terminal-Schnittstelle integrieren? Ich habe es erstmal rausgenommen.

Geht das auch umgekehrt, also dass FHEM eine Windows- .exe oder .bat ausführt?
Ich hätte gerne einen "Ein-Aus"-Schalter, der je nach Schaltzustand auf Druck eine .exe mit untersch. Parametern ausführt.

Vielen Dank & Gruß
Spiff

Spiff

Hallo!

ZitatGeht das auch umgekehrt, also dass FHEM eine Windows- .exe oder .bat ausführt?
Ich hätte gerne einen "Ein-Aus"-Schalter, der je nach Schaltzustand auf Druck eine .exe mit untersch. Parametern ausführt.

Ich habe eine Lösung gefunden:
############ DUMMY SCHALTER ############

define Test dummy
attr Test room Experiment
attr Test webCmd on:off
attr Test setList on off

define Alarm notify Test {\
system("C:\\PROGRA~2\\EventGhost\\EventGhost.exe -e Test_%")\
}
attr Alarm room Experiment


Hinweise:
- Doppelbackslash notwendig, weil Perl das sonst selbst interpretiert
- Das Programmverzeichnis darf keine Leerzeichen enthalten. In dem Fall muss man den alternativen 8-stelligen Verzeichnisnamen eintragen.
Unter einem 64-bit-System  ist der oben stehende Link richtig, unter 32-Bit müsste es "C:\\PROGRA~1\\EventGhost\\EventGhost.exe -e Test_%" heißen. Diese Verzeichnisnamen kann man über "dir /x" herausfinden.
- die unter Eventghost zu verwendenden Events heißen dann "Main.Test_on" bzw. "Main.Test_off". Am besten in FHEM testweise beide einmal anklicken und das Event wie gewohnt in das Makro reinziehen.

Viele Grüße
Spiff

m.o.d

Hallo,
Wie muss den ein befehl aussehen der mit der ip anfängt? (Socket Control für Android)

<fhemhost>:8083/fhem?cmd.Deckenlampe=set Deckenlampe on&room=all

Das funzt leider nicht bei mir...!?   :-(

wilkens

Hallo Spiff,

ich versuche das gleiche Problem zu lösen. FHEM soll Infos an EventGhost senden.

Kannst du die Konfig des "Dummy Schalters" für mich erläutern?
EventGhost läuft bei mir auf einem Win8 PC und FHEM auf einem Ubuntu PC (VMWare auf diesem Win8)
Wenn ich nun beim Schalter folgendes definiere:
Zitat
define Alarm notify Test {\
system("C:\\PROGRA~2\\EventGhost\\EventGhost.exe -e Test_%")\
}
attr Alarm room Experiment
Fehlt mir die Verknüpfung zum EventGhost des Win8 PC.
Woher weiß also FHEM, auf welchem PC EventGhost läuft?
Wäre super, wenn du einen Tipp für mich hast.

Vielen Dank und Gruß

Spiff

Hi spynet, sorry - etwas spät :D

Wenn die Befehle über das Netzwerk an den Eventghost-Rechner geschickt werden sollen, gibt es das Webserver-Plugin.
Das geht dann so:
http://(ip des Eventghost-Rechners):Port/?(Eventname)

Gruß
Spiff

TWART016

Hallo,

mein Ziel ist es per FHEM (Raspberry Pi) ein bestimmtes Event am Windows PC auszuführen. Eventghost ist bereits installiert.

Zitat von: Spiff am 14 April 2015, 22:13:52
Wenn die Befehle über das Netzwerk an den Eventghost-Rechner geschickt werden sollen, gibt es das Webserver-Plugin.
Das geht dann so:
http://(ip des Eventghost-Rechners):Port/?(Eventname)
Wie muss der das Webserver-Plugin am Windows PC konfiguriert werden? Was soll bei Datenverzeichnis rein? Authentifikation benötigt?

Ein weiteres Ziel ist es Winamp per FHEM zu Bedienen. Am besten mit dem Modul Remote Control (FHEM Fernbedienung)? Oder gibt es besseren Alternativen? eigenes CSS?

Zitat von: spynet am 02 März 2014, 15:46:13
Woher weiß also FHEM, auf welchem PC EventGhost läuft?
Ähnlich wie spynet interessiert mich, woher FHEM wissen soll, wo der Eventghost Server steht?


Gruß
TWART016

Spiff

#8
Hi TWART016,

im Webserver-Plugin kannst du alles einstellen: den Port, das Prefix, eine Authentifikation. Letztere habe ich noch nicht ausprobiert, wäre aber besser, den Zugang zu schützen. Hatte mich damit noch nicht auseinandergesetzt.
Wenn FHEM-Pi und Windows-PC in einem Netzwerk sind, brauchst du nichtmal den Port forwarden, das macht es auch sicherer.
Viel mehr brauchst du also nicht konfigurieren.
Nehmen wir an, dein Windows-Rechner hat die IP 192.168.178.20, der Port im Webserver ist z.B. auf 8086 eingestellt und das Prefix auf "FHEM" dann fängst du so an:
Rufe in einem Browser die Adresse
http://192.168.178.20:8086/?Event auf.
Dann siehst du in Eventghost das Event FHEM.Event
Das ziehst du dann einfach per Drag&Drop in das Makro.

Um eine Webseite in FHEM aufzurufen, bzw. einfach nur auszuführen, gibt es die httputils.
Probier mal das hier aus (in der Commandozeile):

{GetFileFromURL("http://192.168.178.20:8086/?Event")}
Um die Seite in den Logs zu verschlüsseln, kannst du auch GetFileFromURLQuiet benutzen. Siehe hier: http://www.fhemwiki.de/wiki/HttpUtils

Du müsstest also einen Dummy anlegen und einen notify darauf ansetzen, der die obige Funktion ausführt.

Gruß
Spiff

EDIT: Das Datenverzeichnis ist das Verzeichnis, das auch html-Dateien enthalten kann. Bei mir ist es c:\temp. Du könntest also dort eine index.html reinlegen und das wäre dann die Seite, die nach dem Eventaufruf im Browser erscheinen würde. httputils gibt diese Seite dann als Antwort aus. Damit könnte man theoretisch eine Überwachung einführen, ob der Befehl, den FHEM ausgesendet hat, auch wirklich beim Eventghost angekommen ist.

Noch ein Hinweis zu httputils: ich hatte es vorher auch noch nie ausprobiert. Aber es kann sein, dass fhem bis zu einem Timeout hängt, solange die Eventghost-Seite nicht erreichbar ist. Das steht alles in der wiki.

TWART016

Hi Spiff,

Zitat von: Spiff am 29 August 2015, 17:03:48
Das Datenverzeichnis ist das Verzeichnis, das auch html-Dateien enthalten kann. Bei mir ist es c:\temp. Du könntest also dort eine index.html reinlegen und das wäre dann die Seite, die nach dem Eventaufruf im Browser erscheinen würde. httputils gibt diese Seite dann als Antwort aus. Damit könnte man theoretisch eine Überwachung einführen, ob der Befehl, den FHEM ausgesendet hat, auch wirklich beim Eventghost angekommen ist.

Vielen Dank. Das hat soweit funktioniert. Leider steht im Log dann immer der Code der html, bzw. der Fehler, dass die Seite nicht gefunden wurde.
Ist es möglich das im FHEM Log auszublenden, evtl. per Loglevel?

Was meinst du mit Überwachung?


Gruß
TWART016

Spiff

Hi,

Der Standard für Logs in fhem ist verbose (= Loglevel) 3. Du scheinst einen höheren eingestellt zu haben, denn httputils hat als Standard 4, siehe wiki. Wenn du dein FHEM tatsächlich auf >3 laufen lassen willst (was eigentlich nur für die Analyse Sinn macht), kannst du in den httputils das Loglevel vielleicht auf 5 oder 6 (wenn das überhaupt geht) erhöhen.

Oder du speicherst eine leere index.html in dein Datenverzeichnis.

Mit Überwachung meine ich nur, wenn du in deine index.html ein "Befehl ausgeführt" einfügst und du ein if oder doif auf die Rückgabe von httputils mit genau diesem String ansetzt, könntest du eine Fehlermeldung oder irgendwas anderes damit erzeugen. Weiss nicht, ob das Sinn macht; der Eventghost-Webserver hat bei mir noch nie Probleme gemacht und läuft die ganze Zeit mit.

Gruß
Spiff

TWART016

Hi Spiff,

Zitat von: Spiff am 29 August 2015, 20:35:59
Der Standard für Logs in fhem ist verbose (= Loglevel) 3. Du scheinst einen höheren eingestellt zu haben, denn httputils hat als Standard 4, siehe wiki. Wenn du dein FHEM tatsächlich auf >3 laufen lassen willst (was eigentlich nur für die Analyse Sinn macht), kannst du in den httputils das Loglevel vielleicht auf 5 oder 6 (wenn das überhaupt geht) erhöhen.
Wenn ich es im wiki richtig verstehe ist der Loglevel von httputils auf 4. Wie kann ich das verändern? Wie ist die Syntax?

{GetFileFromURL("http://192.168.178.20:8086/?Event","4","","3")}

funktioniert bei mir leider nicht.

Leere index.html funktioniert bei mir leider nicht.


Gruß
TWART016

Spiff

Hmm warum geht das mit der index nicht?

Probier mal

{GetFileFromURL("http://192.168.178.20:8086/?Event","4","","","3")}


Du hast ein Argument zu wenig und warst noch gar nicht  beim loglevel angekommen :)
GetFileFromURL($url, [$timeout], [$data], [$noshutdown], [$loglevel])

Gruß
Spiff

TWART016

Hi Spiff,

Zitat von: Spiff am 29 August 2015, 21:22:24
Probier mal
Du hast ein Argument zu wenig und warst noch gar nicht  beim loglevel angekommen :)

Danke für den Hinweis, hat aber leider trotzdem nicht geholfen. Bei Loglevel 1,2 und 3 kommt folgendes ins FHEM-log:

2015.08.29 21:38:55 3: HttpUtils url=http://192.168.178.20:8086/?Event
2015.08.29 21:38:55 3: http://192.168.178.20:8086/?Event: HTTP response code 200
2015.08.29 21:38:55 3: HttpUtils http://192.168.178.20:8086/?Event: Got data, length: 0
2015.08.29 21:38:55 3: HttpUtils http://192.168.178.20:8086/?Event: Zero length data, header follows:
2015.08.29 21:38:55 3:   Server: EventGhost/0.4.1.r1700
2015.08.29 21:38:55 3:   Date: Sat, 29 Aug 2015 19:38:55 GMT
2015.08.29 21:38:55 3:   Content-type: text/html
2015.08.29 21:38:55 3:   Content-Length: 1184


Kann man eventuell im notify ein Logeintrag ins FHEM-log schreiben?


Gruß
TWART016

Spiff

Hmm bei mir funktioniert es wie es soll.
Vielleicht nochmal zu den Logleveln generell:
http://www.fhemwiki.de/wiki/FHEM_Command_Beispiele#attr_global_verbose_X

Das habe ich auf 3 laufen, wie es auch empfohlen wird. Ausser, es funktioniert etwas nicht, dann schalte ich auf 5 hoch.

5 bedeutet: alles bis einschließlich Stufe 5. Wenn du 3 eingestellt hast und die Funktion auf 4 oder höher laufen lässt, wird nichts ins Log geschrieben.

Gruß
Spiff.

TWART016

Hallo Spiff,

jetzt geht es komischerweise. Das Global verbose habe ich auf 3 gelassen.

Mit diesem Code wird gar nichts angezeigt:

define skript1Starten notify skript1:on {GetFileFromURL("http://192.168.178.20:8086/?Event")}


Mit diesem folgendes:

define skript1Starten notify skript1:on {GetFileFromURL("http://192.168.178.20:8086/?Event", "4", "", "", "3")}


2015.08.29 23:05:43 3: HttpUtils url=http://192.168.178.20:8086/?Event
2015.08.29 23:05:43 3: http://192.168.178.20:8086/?Event: HTTP response code 200
2015.08.29 23:05:43 3: HttpUtils http://192.168.178.20:8086/?Event: Got data, length: 0
2015.08.29 23:05:43 3: HttpUtils http://192.168.178.20:8086/?Event: Zero length data, header follows:
2015.08.29 23:05:43 3:   Server: EventGhost/0.4.1.r1700
2015.08.29 23:05:43 3:   Date: Sat, 29 Aug 2015 21:05:43 GMT
2015.08.29 23:05:43 3:   Content-type: text/html
2015.08.29 23:05:43 3:   Content-Length: 1184


Das Ändern der hintersten Zahl bewirkt nichts. Zwischen 1-3 kommt das obere Log, bei 0 leer und 4,5 gar nichts. Kann von dem notify nicht manuell ins FHEM-Log geschrieben werden?

Was wird denn bei dir im Log angezeigt?


Gruß
TWART016

Spiff

Bei mir steht (wenn ich verbose auf 4 oder 5 laufen habe, ansonsten nichts):
2015.08.29 22:35:44.780 4: HttpUtils url=http://192.168.178.20:8086/?Event
2015.08.29 22:35:44.834 4: http://192.168.178.20:8086/?Event: HTTP response code 200
2015.08.29 22:35:44.834 4: HttpUtils http://192.168.178.20:8086/?Event: Got data, length: 31


Ich habe allerdings auch eine index.html.

Ich verstehe dein Problem irgendwie noch nicht.  ::) Was willst du genau erreichen? Ich dachte, du willst, dass das Log nichts anzeigt, nachdem die Funktion aufgerufen wird?

Gruß
Spiff

TWART016

Hallo Spiff,

dann lasse ich es eben bei dem Code mit Log.

Eas noch komisch ist:
In Eventghost im Webserver habe ich bei Datenverzeichnis einen Ort angegeben, wo keine index.html liegt. Dann kommt kein Fehler beim Aufruf der URL. Sobald ich aber das Datenverzeichnis rausnehme, kommt folgender Fehler:


2015.08.29 23:21:33 3: skript1Starten return value: <head>
<title>Error response</title>
</head>
<body>
<h1>Error response</h1>
<p>Error code 404.
<p>Message: File not found.
<p>Error code explanation: 404 = Nothing matches the given URI.
</body>


Weißt du woran das liegen könnte?


Gruß
TWART016

Spiff

Hi TWART016!

Hmm ich weiss nicht, wie Eventghost sich da verhält. Vielleicht nimmt er dann das Eventghost-Verzeichnis als Standard. Weiss nicht... Aber wo nichts ist, kann auch nichts aufgerufen werden. :-) Deswegen: erstelle doch eine kleine index.html mit dem einzigen Inhalt "ok", pack die in das Datenverzeichnis und gut ist? Dann Verbose auf 3 und die Funktion als Standard aufrufen, dann steht auch nichts im Log und du bekommst als Antwort immer ein "ok".
Was gefällt dir daran nicht?

Gruß
Spiff

wilkens

Hallo,
bei mir funktionieren mittlerweile beider Richtungen.
FHEM-> EventGhost
EventGhost -> FHEM

Für den Fall "FHEM-> EventGhost" habe ich in meinem notify folgendes stehen:
GetHttpFile("192.168.167.235:8085", "/?Waschmaschine_Fertig")
192.168.167.235 ist die IP des EventGhost PC
8085 der Port, der im WebServer Plugin des EventGhost eingestellt ist.
Waschmaschine_Fertig ist der Text, der in Event Ghost angezeigt wird.

Für den Fall "EventGhost -> FHEM" muss am Event Ghost ein Befehl des Web Server Plugins hinzugefügt werden.
"Send event to another webserver" muss hier ausgewählt werden.
Als Inhalt habe ich z.B. dieses hier verwendet:
http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.HIFI=set%20EG.wz.SD.HIFI%20on&amp;room=Wohnzimmer
Des gleiche Befehl in FHEM würde heißen
set EG.wz.SD.HIFI on
192.168.167.239:8083 ist die IP und der Port von FHEM
Falls es nicht klappt, gibt es im EventGhost Forum noch einen Beitrag dazu
http://www.eventghost.de/forum/viewtopic.php?f=2&t=5984&p=29528&hilit=fhem&sid=37b9ebb255f503a7d2f3ac7f8bc60ef4#p29528



TWART016

Hallo spynet,

Zitat von: spynet am 20 Dezember 2015, 01:47:41
Für den Fall "EventGhost -> FHEM" muss am Event Ghost ein Befehl des Web Server Plugins hinzugefügt werden.
"Send event to another webserver" muss hier ausgewählt werden.
Als Inhalt habe ich z.B. dieses hier verwendet:
http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.HIFI=set%20EG.wz.SD.HIFI%20on&amp;room=Wohnzimmer
Des gleiche Befehl in FHEM würde heißen
set EG.wz.SD.HIFI on
192.168.167.239:8083 ist die IP und der Port von FHEM

Ich interessiere mich ebenfalls für die Richtung EventGhost zu FHEM. FHEM zu Evetghost läuft schon seit einigen Monaten problemlos.

Was muss ich alle in dem Befehl angeben? In deinem Screenshot ist nur die URL und der Port angegeben. Wird keine Authentifizierung benötigt? Was meinst du mit Inhalt?

Wie bekommt man die URL aus set EG.wz.SD.HIFI on? ]http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.HIFI=set%20EG.wz.SD.HIFI%20on&amp;room=Wohnzimmer

Bei mir erscheint im Eventghost Log nur Fehler, in FHEM kommt nichts an:
Fehler in Befehl: "Webserver: Send event to another webserver: http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.HIFI=set%20EG.wz.SD.HIFI%20on&amp;room=Wohnzimmer"
Traceback (most recent call last) (1700):
File "C:\Program Files (x86)\EventGhost\eg\Classes\ActionBase.py", line 170, in CallWrapper
return self(*args)
File "C:\Program Files (x86)\EventGhost\plugins\Webserver\__init__.py", line 3473, in __call__
scheme = matchobj.group(1)
AttributeError: 'NoneType' object has no attribute 'group'



Freundliche Grüße
TWART016

wilkens

Hi,

im Screenshot vom EventGhost lässt sich mehr nicht darstellen.
Deshalb hatte ich den Inhalt rauskopiert. Da steht komplett:
   http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.HIFI=set%20EG.wz.SD.HIFI%20on&amp;room=Wohnzimmer

der Aufbau ist eigentlich immer der Gleiche.
Ich ersetze da im Text einfach die Werte, das geht am schnellsten.

Du kannst die Kommandos auch aus dem Webinterface auslesen.

Hier im Beispiel mit Internet Explorer 11
   Gehe im FHEM auf die Seite, auf die dein Gerät und der Befehl schon angelegt ist, den du über EventGhost ausführen möchtest
   Rechtsklick irgendwo ins leere, dann "Quellcode anzeigen"
   Im Quellcode suchst du dann nach dem Namen des Gerätes. Bei mir "Sofa"
   Dann findest du z.B. so etwas:
      location.href='/fhem?cmd.EG.wz.SD.StromSofa=set EG.wz.SD.StromSofa on&amp;room=Erdgeschoß'
   Diesen Link änderst du entsprechend Um.
      1. location.href=' am Anfang und ' am Ende weglöschen
      2. Die IP und Port von FHEM von ranhängen. Bei mir:http://192.168.167.239:8083
   Das sieht dann so aus:
       http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.StromSofa=set EG.wz.SD.StromSofa on&amp;room=Erdgeschoß
   Nun noch alle Leerzeichen durch %20 ersetzen. Also so:
      http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.StromSofa=set%20EG.wz.SD.StromSofa%20on&amp;room=Erdgeschoß
   Der Befehl kann nun so in der Adresszeile des Browsers oder über den Webserver von EventGhos ausgeführt werden.

Mit Login habe ich noch nicht gearbeitet. Du kannst mir deine Erfahrung damit aber gern mitteilen :-)
Falls du Fehlermeldungen im EventGhost bekommst, schaue zunächt unter diesem Beitrag:

http://www.eventghost.net/forum/viewtopic.php?f=2&t=5984&p=29528&hilit=fhem#p29528

Anbei noch zwei Screenshots
Ich hoffe, das hilft dir.

TWART016

Hi,

Zitat von: spynet am 03 Januar 2016, 12:14:31
http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.HIFI=set%20EG.wz.SD.HIFI%20on&amp;room=Wohnzimmer
Über den Link kann ich jetzt zumindest per Webbrowser das Device schalten.

Über FHEM kommen nach wie vor die gleichen Fehlermeldungen:
Fehler in Befehl: "Webserver: Send event to another webserver: http://192.168.167.239:8083/fhem?cmd.EG.wz.SD.HIFI=set%20EG.wz.SD.HIFI%20on&amp;room=Wohnzimmer"
Traceback (most recent call last) (1700):
File "C:\Program Files (x86)\EventGhost\eg\Classes\ActionBase.py", line 170, in CallWrapper
return self(*args)
File "C:\Program Files (x86)\EventGhost\plugins\Webserver\__init__.py", line 3473, in __call__
scheme = matchobj.group(1)
AttributeError: 'NoneType' object has no attribute 'group'


Auch im Eventghost Forum habe ich nicht gefunden.


Gruß
TWART016

wilkens

Du meinst sicher in EventGhost kommen die Meldungen?

Da steht ja noch mein unveränderter Befehl drin. Du musst den schon wie oben beschrieben auf dein FHEM umsetzen, sonst wird das nichts.
Falls ich das jetzt falsch verstehe, sende mal screenshots von den Einstellungen des WebServer Plugins. Und ebenfalls von einem genutzten Befehl.
Welche Version des WebServerPlugins nutzt du? Die vom oben genannten Link des EventGhost Forum, oder die, die dabei war.

TWART016

Zitat von: spynet am 04 Januar 2016, 00:02:55
Du meinst sicher in EventGhost kommen die Meldungen?
Ja, das sind die Fehler in Eventghost.

Zitat von: spynet am 04 Januar 2016, 00:02:55
Da steht ja noch mein unveränderter Befehl drin. Du musst den schon wie oben beschrieben auf dein FHEM umsetzen, sonst wird das nichts.
Ich hab natürlich  meine Daten eingegeben:
http://192.168.178.25:8083/fhem?cmd.testStatus2=set%20testStatus2%20on&amp;room=tests


Zitat von: spynet am 04 Januar 2016, 00:02:55
Falls ich das jetzt falsch verstehe, sende mal screenshots von den Einstellungen des WebServer Plugins. Und ebenfalls von einem genutzten Befehl.


Zitat von: spynet am 04 Januar 2016, 00:02:55
Welche Version des WebServerPlugins nutzt du? Die vom oben genannten Link des EventGhost Forum, oder die, die dabei war.
Version ist die 3.7 so wie sie bei der Installation dabei war.

wilkens

Sorry für die späte Rückmeldung.
Ich bin hier nicht so oft und muss mich mal um die Mailbenachrichtigung kümmern...

So viele Ideen habe ich da jetzt auch nicht mehr.

Versuche doch mal die Version 3.9 von dem Webserver Plugin.

Bei mir läuft noch eine ganz alte Version. Vielleicht hat sich ja auch etwas geändert.
Ich habe Event Ghost 0.4.1.r1610 mit dem WebServer Plugin 2.0 im Einsatz. Never touch a halbwegs running system ;-)

Was ist mit Firewall. Wird da vielleicht was geblockt?



TWART016

Ich habe noch Webserver Plugin 3.8. Seit wann und wo gibt es 3.9? Wenn ich die Version aus dem Forum, glaub 1.7, verwende, geht das Webserver Plugin im Prinzip gar nicht mehr.

0.4.1r1706 habe ich eben noch installiert, gleiche Problem.

Firewall ist aus, daran kann es eigentlich nicht liegen. Der Fehler zeigt auch eher auf einen Fehler in einer Datei.

wilkens

Hallo,

so richtig nen Rat habe ich auch nicht mehr.
Also habe ich die aktuelle Version mal auf meinem Büro-PC installiert und ein paar screenshots gemacht.
Alles ging direkt und ohne Probleme.
Gucke dir die angehängte Anleitung/Datei mal an und probiere sonst mal nen anderen PC um das Problem einzugrenzen.

TWART016

Hallo,

ich habe Eventghost jetzt auf einer virtuellen Maschine installiert. Auch dort gibt es den gleichen Fehler (nur line 3526 anstatt 3473).

Der Port vom Webserver ist doch egal, solange er auf dem PC nicht verwendet wird??

Das Verzeichnis C:\Program Files\EventGhost\webserver ist bei mir leer. Muss das so sein?

Kann es am FHEM Server liegen? Das Aufrufen der URL funktioniert von jedem PC (wenn die Anmeldedaten einmal angegeben wurden).

wilkens

Schalte die Anmeldung in FHEM doch mal aus. Nur um zu gucken, ob es daran liegt. Da ich das nur über vpn oder im internen Netz nutze lasse ich das bei mir auch ohne Anmeldung. Mir fehlt im Moment  leider die Zeit das zu testen. Port muss meiner Meinung nach nur frei sein und der Ordner  ist bei mir auch leer.

TWART016

Zitat von: spynet am 21 Januar 2016, 20:38:14
Schalte die Anmeldung in FHEM doch mal aus. Nur um zu gucken, ob es daran liegt.
Tatsächlich  ???

Kommentiere ich die Authentifizierung aus, funtkioniert es. Wenn ich in Eventghost beim Webserver Username und Passwort eingebe kommt nach wie vor der Fehler. Genau wie bei URL mit http://user:passwort@server:8083/command kommt der Fehler. Woran kann es liegen?

Ein weiteres FHEMWEB ohne Authentifizierung würde ich nur ungerne erstellen.

Jetzt steht im Eventmonitor
2016-01-21 21:00:27 dummy testStatus2 on

TWART016

Ich musste nur die Reihenfolge der Events verändern, dann kommt der Fehler nicht mehr.

Ich habe derzeit 3 Elemente
1. Get Winamp Song Title
2. Zeige OSD: {eg.result}
3. Send event to another webserver

Wie bekomme ich die Variable {eg.result} nun aber in eine URL (Punkt 3)?

http://192.168.178.25:8083/fhem?cmd.testStatus2=set%20testStatus2%20{eg.result}&amp;room=tests
funktioniert leider nicht.

TWART016

Hallo,

hat noch einer eine Idee, wie ich ein {eg.result} an einen anderen Webserver senden kann?


Gruß
TWART016