Hi
Ich habe erfolgreich den Harmony Hub in die Fhem eingerichtet.
Und kann auch schon die Aktionen von hub ausführen in der Fhem.
Ich möchte aber die Aktionen und die Devices über einen Url aufrufen um dann in der HA Bridge die Harmony von der Alexa aus zu steuern.
Kann mir wer da eine Konfiguration Bsp. geben um eine Aktion über eine Web Ur aufzurufen.
Stehe da schon seit Tagen an.
Die Harmony Hub wurde beim Fhem als Hub eingerichtet.
Und mit folgender Url habe ich es versucht aber leider ohne Erfolg.
http://192.168.xxx.xxx:8083/fhem?cmd.harmony hub=set harmony Hub command mute&XHR=1
Wäre der Mute Befehl in einer Aktion vom Verstärker.
In der Fhem in einer Aktion als set hub mute Befehl funktioniert die Mute Funktion.
Oder über die Device ID
ttp://192.168.xxx.xxx:8083/fhem?cmd.hub=set%20harmony_350xxxxx%20command%20Mute&XHR=1
Leider auch ohne Erfolg.
Ob über die Ha Bridge oder Hombridge und Siri sollten ja in beide Config über eine Url möglich sein die Aktion aufzurufen oder?
Wäre toll wenn mir wer da weiter helfen könnte.
Danke in voraus
Gruß
Manfred
Hi
Habe noch ein größeres Problem.
Ich konnte bis dato meine KNX Komponenten auch über eine Url schalten.
Z.b.
http://192.168.xxx.xxx:8083/fhem?cmd.dummy=set%20Li_Couch_WZ_Schalt%20on&XHR=1
Hatte wunderbar funktioniert.
Aber sobald ich die Harmony Hub mit den Befehl anlege.
define Hub harmony e-Mail passwort 192.168.xxx.xxx
Kann ich nach kurzer Zeit nicht mehr über die Web Url meine KNX Schalter bedienen.
Direkt in der Fhem geht es aber immer.
Nach eine Neu Start der Fhem geht die Url wieder für ein paar befehle.
Bzw. für eine gewisse Zeit.
Aber der Fehler tritt immer wieder auf.
Wenn ich die Harmony hub aus der Fhem lösche funzt der Befehl nach einen neu Start wieder auf Dauer.
Ich schätze das deswegen auch meine Hub auch nicht über eine Url aufruf funktioniert.
Woran kann das liegen.
Ich stehe jetzt komplett an.
Kann mir hier keiner weiter helfen?
Bin ich der einzige der ein Problem mit fhem und Harmony Einbindung hat.
Ich keine Ahnung was ich falsch gemacht habe.
Die Harmony Hub Installation habe ich nach dieser Anleitung durchgeführt.
sudo apt-get update
sudo apt-get install -y libjson-perl
sudo apt-get install libio-socket-multicast-perl
Link http://www.juergenstechnikwelt.de/smarthome-2/mit-harmony-hub-fhem-aktionen-durchfuehren/
Aber sobald der Hub im Fhem aktiv ist, Funktionieren die Url nicht mehr, für schalt Aktionen im KNX Bus?
Ich stehe komplett an.
Habe schon so viele Stunden in das Projekt gesteckt.
:-\
Bitte um Hilfestellung.
Gruß Manfred
Also ich kenne Web-Aufrufe an fhem nur so:
http://192.168.xxx.xxx:8083/fhem?cmd=set%20Li_Couch_WZ_Schalt%20on&XHR=1
Was du mit dem cmd.dummy etc willst?
Habe ich noch nie gesehen...
Ob das was damit zu tun haben kann/hat, keine Ahnung.
Allerdings musst du ab fhem 5.8 aufpassen, da gehen solche Links nicht mehr (einfach so)!
Siehe Hinweis rechts oben in rot: 5.8 ist freigegeben...
Ansonsten ist es beim Harmony Hub so:
du solltest Aktionen über den Hub schalten können:
http://192.168.xxx.xxx:8083/fhem?cmd=set%20HarmonyHub%20activity%20Fernsehen&XHR=1
Wenn dein Hub HarmonyHub heißt und du eine Activity namens Fernsehen hast...
"Einzelne Funktionen" gehen am einfachsten direkt beim jeweiligen Gerät:
http://192.168.xxx.xxx:8083/fhem?cmd=set%20harmony_350xxxxx%20command%20Mute&XHR=1
Wenn das Gerät das zuständig für die Lautstärke ist harmony_350xxxxx "heißt" also unter NAME.
Es geht zwar (glaube ich) auch über den Umweg über Hub aber du musst trotzdem die ID (ohne harmony_) mitgeben (glaube ich):
http://192.168.xxx.xxx:8083/fhem?cmd=set%20HarmonyHub%20command%20350xxxxx%20Mute&XHR=1
Was für Activities und Commands verfügbar sind kannst du ja abrufen.
get activities / get commands
Rätselhaft ist warum die anderen Aufrufe (KNX) nicht gehen wenn du den Hub aktiv hast...
...wobei wie gesagt mich eigentlich eh wundert, dass die jemals funktioniert haben...
Was steht denn im Log wenn die Aufrufe schief gehen?
Fehlermeldungen??
Weil ohne mehr Infos wird's schwer zu helfen...
Gruß, Joachim
Erstmal ein Dankeschön für deine Hilfestellung und ausführliche verständliche Anleitung.
Ich bin heilfroh das du mir da weiter hilfst, möchte unbedingt die Fhem wirklich rocken und in Betrieb bekommen. :D
Sind wirklich geile Möglichkeiten die man durch die Fhem bekommt.
Wegen meiner Url. die hatte ich in einen Beitrag hier im Forum gelesen und deswegen so probiert.
Ich bin noch ein absoluter Neuling bezüglich Fhem.
Versuche über die Wiki und div Forum Beiträge mich mal ein wenig mit der Materie vertraut zu machen.
Leider nicht immer mit Erfolg.
Bezüglich Log und Fehlermeldung da kommt leider nichts im Event monitor bzw. ein Log Eintrag, wenn ich die Url aufrufe.
Es kommt auch nicht zur Rückmeldung vom Fhem wenn ich die &XHR=1 bei der Url auslasse sollte ja der Fhem Seite aufgerufen werden.
Funzt ja auch bei dem url, wenn ich nur http://192.168.2.110:8083/fhem?cmd= aufrufe.
Aber sobald set nach dem cmd= im url vor kommt reagiert der Fhem nicht mehr auf den Web Url.
Wenn ich im Fhem Eingabefenster zb. set hub activity Watch.TV über die Eingabe aufrufe.
Schaltet der Hub brav meinen Fernseher ein.
Und ein Log Eintrag wird erstellt.
2017-03-04 21:43:42 harmony harmony_35046174 power: on
2017-03-04 21:43:42 harmony harmony_35046175 power: on
2017-03-04 21:43:42 harmony harmony_35046177 power: on
2017-03-04 21:43:42 harmony hub currentActivity: Watch TV
2017-03-04 21:43:42 readingsProxy Watch.TV on
2017-03-04 21:43:42 harmony hub activity: Watch.TV
2017-03-04 21:43:42 harmony hub currentActivity: Watch TV
2017-03-04 21:43:42 harmony hub currentActivity: Watch TV
Aber über die Web url http://192.168.XXX.XXX:8083/fhem?cmd=set%20hub%20activity%20Watch.TV&XHR=1
Kommt es zu keinem Eintrag im Fhem Event Monitor oder Log File.
Sobald ich die Hub aus dem Fhem lösche und den Fhem neu Starte funzt deine Beispiel Url. für den KNX Schaltaktor
http://192.168.XXX.XXX:8083/fhem?cmd=set%20Licht_Couch%20off&XHR=1
Und ein Eintrag im Log File wird erstellt.
017-03-04 21:56:04 KNX Licht_Couch setG1: on
2017-03-04 21:56:04 KNX Licht_Couch on
2017-03-04 21:56:04 KNX KNX_0401007 getG1: on
2017-03-04 21:56:04 KNX KNX_0401007 last-sender: 1/1/3
2017-03-04 21:56:04 KNX KNX_0401007 on
2017-03-04 21:56:06 KNX KNX_0704001 getG1: on
2017-03-04 21:56:06 KNX KNX_0704001 last-sender: 1/1/2
2017-03-04 21:56:06 KNX KNX_0704001 on
Scheint so das der Sobald der Hub aktiviert wird die Fhem nicht mehr über Externe Url reagiert.
Ohne Log eintrag wird es da schwer werden den Fehler zu finden.
Kann es vielleicht daran liegen das ich die Fhem über ein VM Linux Mint laufen lasse.
Ist bis zur Funktionierende End Config einfache, weil ich ja mehrere VM zum Probieren zu Verfügung habe.
Aber andernfalls funtz ja die Url bis ich den Hub aktiviere ja.
Eine zusätzliche Frage hätte ich auch noch bezüglich KNX.
Ich bekomme leider viele Fehlermeldungen im Log das gewisse KNX Adressen nicht definiert sind.
2017-03-04 22:15:47 Global global UNDEFINED KNX_0205000 KNX 2/5/0:MODEL_NOT_DEFINED
2017-03-04 22:15:48 Global global UNDEFINED KNX_1302000 KNX 13/2/0:MODEL_NOT_DEFINED
2017-03-04 22:15:48 Global global UNDEFINED KNX_1304002 KNX 13/4/2:MODEL_NOT_DEFINED
2017-03-04 22:15:48 Global global UNDEFINED KNX_1304001 KNX 13/4/1:MODEL_NOT_DEFINED
Die autoceate Funktion habe ich extra bei die KNX Komponenten auf ignoreTypes gestellt.
Weil mir die Fhem immer alle KNX Adressen die als Rückmelde Telegramme im KNX zurück geschickt werden ein Log File angelegt hat.
Das überfordert die Fhem nur und ich brauche ja nicht die rückmelde Telegramme in einen Log File dokumentiert.
Die KNX Telegramme die ich hier ins Log bekomme sind nicht in der Fhem cfg angeführt.
Vielleicht hilft die Fehlermeldung etwas weiter.
Wenn ich z.b. nicht den Hub Aktiviert ist und ich den KNX Schaltaktor über die Url schalte ohne die Retour Meldung Unterdrückung.
Bekomme ich über die Fhem Seite folgende Retour Meldung.
SecurityCheck:
WEB,WEBphone,WEBtablet has no associated allowed device with basicAuth.
telnetPort has no associated allowed device with password/globalpassword.
Restart FHEM for a new check if the problem is fixed,
or set the global attribute motd to none to supress this message.
Kann leider nichts damit anfangen, weil ich die Fhem ohne Auth. in Moment betreibe.
Die Lampe Schaltet sich auch ein.
Wie gesagt KNX kenne ich nicht.
Auch ob es Probleme im Zusammenspiel KNX - HarmonyHub gibt daher auch nicht...
Die "Fehlermeldung" ist nur ein Hinweis, dass du eben ohne Authentifizierung arbeitest...
...wenn sie dich stört, kann man sie auch ausschalten:
attr global motd none
In die fhem-Web-Zeile und dann "Enter" drücken und dann den "save" Button.
Welche fhem Version hast du?
Was kommt, wenn du 'fheminfo' in die Web-Cmd eingibst?
Den Link rechts oben in rot bzgl. 5.8 hast du bereits mal beachtet??
Mal eine generelle Frage: warum willst du die Aufrufe über Web also http machen??
Normalerweise kannst du doch alles über die FhemWeb-Oberfläche oder wenn nicht hübsch genug dann gibt es Alternativen: TabletUI o.ä.
Web-Aufrufe braucht man doch nur, wenn man von einem System (ohne) fhem Aufrufe auf dem fhem-Server machen will??
Gruß, Joachim
Fhem info:
Release : 5.8 FeatureLevel: 5.8
OS : linux
Arch : x86_64-linux-gnu-thread-multi
Perl : v5.22.1
upTime : 1 day, 09:36:16
Defined modules:
FHEMWEB : 3
FileLog : 1
KNX : 106
TUL : 1
VIERA : 1
autocreate : 1
eventTypes : 1
harmony : 10
notify : 1
telnet : 1
Homebridge habe ich aktualisiert so wie oben im Link angeben ist.
Bezüglich KNX glaube ich eher nicht das deswegen zu diesem Fehler kommt.
Weil ja KNX alleine Funzt und der Fehler nur auftritt, wenn der Hub aktiviert wird.
Kann aber auch den KNX probeweise Löschen und die Hub über die Url aufrufen zu versuchen.
Der Aufruf über die Web Url ist für mich aus mehreren Gründen wichtig.
Ich habe die Alexa von Amazon in betrieb und möchte im ersten Step der einfach halber über die Ha Bridge und Alexa die Hub und Lichter Schalten.
Desweitern hat die Möglichkeit über Url meine Smart Home Devices zu schalt große Vorteile.
Ich verwende derzeit für die Viso einen Home Server von Loxone.
Und kann so über die Fhem alle Welten zusammenfügen und zur einer tolle Smart Home Lösung zu kommen.
Aber den Loxone werde ich höchstwahrscheinlich nach den ich eine Alternative gefunden habe, wieder auf den Markt werfen.
Die Firma entwickelt sich leider in die Falsche Richtung.
Wollen nur mehr Ihre Produkte anbinden und alle anderen Anbieter nur mehr gefälligkeitshalber mehr recht als schlecht mit bedienen.
KNX z.b. ist nicht möglich eine Lichtszene über den Loxone zu realisieren in der Dezentralen Anwendung.
Der große Vorteil an einer KNX Anlage ist ja das die Devices direkt Kommunizieren und deswegen bei einem Ausfall einer KNX Komponente der Rest der Bus Anlage brav ihren Dienst verrichtet.
Sobald man den Kompletten Bus über einen Homesever als Zentrale laufen lässt, kommt es bei einen Homserver Ausfall zum kompletten stillstand der Bus Anlage im Haus und man lebt dann bis zur Fehler Behebung in der Steinzeit bei Kerzen Licht.
TabletUI bin ich auch schon am Testen bzw. habe ich bei einer fhem VM in Betieb genommen.
Schaut sehr vielversprechend aus.
Werde aber noch viel Zeit brauchen bis ich mich da Eingearbeitet habe.
Hast du die Harmony bei dir im Betrieb ?
Gruß Manfred
Hallo Manfred,
ja ich habe einen HarmonyHub in Betrieb.
Eingerichtet nach Wiki und in anderen Blogs (u.a. den von dir genannten) mal vorbei geschaut aber nichts neues gefunden (notify etc. und wie man prinzipiell mit angelegten dummy etc. umgeht kannte ich ja).
https://wiki.fhem.de/wiki/Harmony
Und eigentlich keine Probleme.
Wobei ich jetzt nichts groß per HTTP-Request steuere...
ABER jetzt mal langsam sortieren (vielleicht geht da einiges durcheinander):
also homeBridge hat nichts mit Alexa zu tun sondern ist für Steuerung per Apple-Geräte
ha-Bridge ist NICHT alexa-fhem! Was hast du im Einsatz?
Wie hast du die ha-Bridge eingerichtet?
(falls du ha-Bridge nutzt/nutzen willst)
Evtl. mal hier schauen: https://forum.fhem.de/index.php/topic,66920.0.html
Das mit dem csrfToken hast du gelesen und verstanden?
D.h. an HTTP-Aufrufe "von außen" (nicht über die von fhem aufgerufene Webseite) müssen den jeweils dynamisch erzeugten Token mitgeben, sonst funktioniert der Aufruf nicht!
(ab V5.8 )
Auch den von dir erwähnten HomeServer kenne ich nur dem Namen nach...
Funktionieren denn die HTTP-Aufrufe, wenn du einfach einen Browser aufmachst (in keinem andern Browser/Tab ist fhem offen) und du einfach die Befehle eingibst?
Und irgendwelche Dinge aus dem Netz einfach zu nehmen und per copy/paste zu nutzen ohne zu verstehen was sie tun würde ich nie machen...
(aber ich gebe zu so habe ich mir vor ettlichen Jahren auch das eine oder andere Linux-Testsystem "zerschossen". Seither versuche ich [genau] zu verstehen was denn das was da steht und ich irgendwoher habe denn tut und dann überlege ich ob es eine Lösung sein könnte und probiere es aus / meist erst mal auf einem Testsystem)
Die HTTP-Aufrufe sind eigentlich ganz simpel (mal abgesehen von dem neu zu verwendenen Token):
wenn z.B. in der Web-Cmd Zeile folgender Aufruf funktioniert:
set Gerät on
dann lautet der passende HTTP-Aufruf:
http://<IP-von-fhem>:<PORT(meist 8083)>/fhem?cmd=set%20Gerät%20on&XHR=1
Also probiere ich erst mal wie der Befehl lautet (Web-cmd Eingabefeld) und setze dann um auf den http-Aufruf.
Weil wenn er in der Web-cmd Eingabe schin nicht geht, dann ist irgendwas noch falsch...
Das %20 ist dann überall dort, wo im Befehl ein Leerzeichen ist.
Gruß, Joachim
Hi Joachim
Danke noch mal für deine Hilfe Stellung. Wenn man alleine an ein Problem ansteht sind solche Forum Hilfe Stellungen Gold wert.
Bezüglich blind abkopieren von netz ist natürlich nicht empfehlenswerte.
Aber als Neuling in der Materie hast ja fast keine Alternative.
Ich habe mal abgesehen von einigen n paar Dreamboxen die ich für mich konfiguriert habe, meine ersten Erfahrungen mit Linux Systeme vor ein paar Monate gemacht.
Bin ein Windows bzw Mac User.
Programmiere seit ein paar Jahren KNX Systeme und den Gira Homeserver. Und vor einigen Monate den genannten Loxone.
Vor ein paar Monate habe ich einen PI gekauft, weil ich meine Vaillant Wärme Pumpe unbedingt über den Homeserver steuern möchte. Klappt auch schon.
Jetzt habe ich mittlerweile Einen Orbsmart Platinen PC wo ein Ubunto läuft für die Vaillant VWmon. Und die HA-Bridge https://github.com/bwssytems/ha-bridge
Der simuliert der alexa eine Phillips Huy Beleuchtung.
Und deswegen funzt die HA Bridge auch über die alexa.
In Moment steuere ich damit meine Sonos Multiroom Player über eine php Script. Mit deren Hilfe auch die Sonos per url steuerbar wird.
Mit der HA Bridge kannst du Url als Web Verb. get, put und post aufrufen.
Für alexa sind das alles Phillips Lampen.
Aber für den Anfang ist damit schon einiges möglich.
Mit den dim wert kannst du Lautstärken in Prozent zB über alexa aufrufen.
Meine Linux Kenntnisse sind noch leider am Anfang aber ich lese mich immer mehr in die Materie ein.
Für die Versuche habe ich deswegen am Mac mehre Virtuelle Maschinen laufen. Als Basis läuft Linux mint. So habe ich in ein paar Minuten ein frisches Linux System zu Verfügung.
Aber die Verschiedenen Abhängigkeiten bereiten mir noch viele graue Haare.
Zb habe ich es zusammen gebracht das die Homebridge im Linux mint funzt, aber wenn ich die Homebridge als Service für den Autostart versuche zu installieren laut Anleitung in der Wiki funzt es leider nicht.
Die Meldung Homebridge is already running kommt ja noch.
Aber leider kommt dann Homebridge is not running.
Jetzt starte ich derzeit händisch.
In Web findest du ja meistens nur Pi passierende Anleitungen.
Habe derzeit drei vm Linux Systeme bei einer läuft die fhem mit hub und KNX, aber leider keine Web http mehr möglich und eine ganz frisch aufgesetzte fhem mit nur KNX und die Homebridge .
Wo ich auch schon die ersten KNX aktoren mittels Eva App am iPhone mit Siri bedienen kann.
Dank deiner Anleitung weiß ich jetzt auch das die Web url sehr simpel aufgebaut sind.
Im Web-cmd Eingabefeld als set Befehl Funzt zB die watch.tv wie weiter oben schon mal erwähnt. Aber leider nicht in der url. http://192.168.xxx.xxx:8083/fhem?cmd=set%20hub%20activity%20Watch.TV&XHR=1
Bezüglich crsToken komme ich leider nicht ganz mit.
Du solltest den Dienst ausschalten wenn du die homebridge nicht aktualisiert hast oder.
Die Homebridge habe ich ja aktualisiert.
Bezüglich Hub.
Wenn es dir nicht zu viele Umstände bereitet würde ich gerne einen Versuch starten mit deiner Hilfe.
Ich aktiviere eine neue Virtuelle Maschine . Und installiere die fhem.
fhem installieren:
sudo apt-get install perl libdevice-serialport-perl libio-socket-ssl-perl
sudo apt-get -f install
wget http://fhem.de/fhem-X.Y.deb
sudo dpkg -i fhem-X.Y.deb
sudo apt-get -f install
sudo dpkg -i fhem-5.8.deb
Ich hoffe das es so richtig ist zumindest funktioniert die fhem so bei mir.
Und wenn du mir deine Installation Routine hier reinstellen könntest so wie du die hub im Linux bzw fhem installierst.
Sollte es dann ja bei mir auch gehen die https Url für die harmony.
Bei dir funktioniert ja der url Aufruf.
Was haltest davon. Wäre ein Versuch wert. Vielleicht mache ich ja bei der Installation von der hub einen Fehler und deswegen gehen dann die Web url nicht.
Gruß Manfred
Hallo Manfred,
können wir schon versuchen...
Wird allerdings noch (etwas) dauern, hab grad bissi viel um die Ohren...
Eins noch: die Installation wo ich den Harmony Hub integriert hab ist mein Testsystem und das läuft unter Wheezy und ich weiß auch nicht mehr wie ich das installiert habe...
Aber ich lese mir mal in Ruhe durch was du geschrieben hast und versuche zu antworten so gut ich kann...
Gruß, Joachim
Hi Joachim
Danke dir.
Ich werde am Freitag meinen odroid 2 mal ein Linux rauf klatschen und probieren ob es da geht.
Wenn niemand sonst das Problem hat kann ja leicht sein das der parallel Desktop vom Mac da ein Problem macht.
Wegen csrToken hast du für mich ein Beispiel wie da die url anschauen sollte.
Gruß
Manfred
Zitat von: X-Files am 07 März 2017, 12:22:14
Wegen csrToken hast du für mich ein Beispiel wie da die url anschauen sollte.
Steht bzw. ist alles verlinkt in dem roten Link rechts oben!
Oder im Forum nach csrfToken suchen, da sollte eine Menge kommen.
Es wird halt bei jedem fhem-Start dynamisch ein Token generiert und dieser muss dann am Ende des Aufrufs mitgegeben werden.
Alternative: den Tokan statisch auf einen bestimmten (von dir) Wert setzen (Attribut in WEB / glaube ich)
Alternative2: das Attribut csrfToken auf none setzen...
Beide Alternativen sind aber NICHT SICHER bzw. hebeln halt die durch das Token eigentlich eingebaute Sicherheit wieder aus...
Aber genauer steht das alles wie (mehrfach) geschrieben im Link!
Ob Odroid die richtige Plattform für einen Vergleichstest ist??
Wenn du tatsächlich sicher gehen willst, dass es nicht Plattform-bedingt ist, dann würde ich mir mal einen PI besorgen und dann mal laut fhem.debian.de oder debian.fhem.de installieren und dann laut Wiki den Harmony Hub einrichten...
Bis denn, Joachim
Hi Joachim
Danke für deinen Tipp. Es lag an den Tokan.
Ich habe ihn Statisch jetzt mal hinterlegt.
Jetzt funktioniert die Url auch, ich überge den Token so wie in der Wiki Seite beschrieben.
http://192.168.XXX.XXX:8083/fhem?cmd=set%20hub%20activity%20Watch.TV&XHR=1&fwcsrf=XXXXXXX
Aber warum der Fhem die Url annimmt, wenn den Hub von der Harmony nicht aktiviert ist, kann ich leider absolut nicht nachvollziehen.
Wenn es von Anfang an nicht geht, wäre ich sicher gleich mal draufgekommen, dass es daran liegt.
Dank der Neuen Wiki Seite über den csrfToken verstehe ich wenigsten für was der gut ist.
Aber leider komme ich trotz der Wiki Seite noch immer nicht ganz mit bezüglich wie der Token jedes Mal von neue übergeben wird.
Wenn es für die Sicherheit ist sollte es da nicht Berechtigungen geben welche Ip oder PC die Berechtigung hat einen Token vom Fhem zu erhalten?
Oder habe ich da einen Denkfehler?
Da ich nicht ganz mitkomme wie der Url jetzt aufgebaut sein muss das der Token übergeben wird und dann eingefügt.
Dürfte ich dich noch bezüglich Homebridge und Auto Start was fragen.
Ich habe die Homebridge nach der Wiki Seite installiert.
https://wiki.fhem.de/wiki/Homebridge_einrichten
der manuelle Start mit hombridge funktioniert ohne probleme.
Aber der Autostart leider nicht.
Es liegt am Verzeichnis vom .homebridge/config.json
Und der User Name ist bei mir manfred
Bei mir liegt das file config.json unter /home/manfred/.homebridge/config.json
Wie muss ich das autostart file von Wiki anpassen das der autostart funktioniert.
export PATH=$PATH:/usr/local/bin
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
PID=`pidof homebridge`
case "$1" in
start)
if ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is already running"
else
su - manfred -c "homebridge > /dev/null 2>&1 &"
echo "Homebridge starting"
$0 status
fi
;;
stop)
if ! ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is not running"
else
kill $PID
echo "Homebridge closed"
fi
;;
restart)
if ! ps -p $PID > /dev/null 2>&1; then
$0 start
else
$0 stop
$0 start
fi
;;
status)
if ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is running PID $PID"
else
echo "Homebridge is not running"
fi
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac
exit 0
pi habe ich schon auf manfred ausgetauscht.
Aber habe leider zu wenig Ahnung von der Materie um das Verzeichnis anzupassen.
Und der dienst sucht auch noch immer den User PI
Fehlermeldung
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform su[2003]: FAILED su for pi by root
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform su[2003]: - ??? root:pi
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform homebridge[1989]: Homebridge starting
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform homebridge[1989]: Homebridge is not running
Könntest du mir da noch bitte weiterhelfen.
Danke
Gruß Manfred
Ich kenne zwar Homebridge nicht aber alexa-fhem soll ähnlich/gleich gestartet werden...
Werd mir das die Tage mal anschauen...
Wenn möglich deine Ausgaben, Scripts etc. in "Code-Tags" posten, das ist das '#' in der "Menu-Leiste"...
...liest sich besser...
Gruß, Joachim
Danke Dir
Das wäre der Autostart Script von der Wiki Seite
https://wiki.fhem.de/wiki/Homebridge_einrichten
Habe nur den User von PI auf Manfred geändert.
Aber wie gesagt habe zu wenig Ahnung was ich noch ändern muss, dass der Autostart die config.json mit user Manfred unter den Verzeichnis home/manfred/.homebridge/config.json geöffnet wird.
GNU nano 2.5.3 Datei: /etc/init.d/homebridge
#!/bin/sh
### BEGIN INIT INFO
# Provides: homebridge
# Required-Start: $network $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start daemon at boot time for homebridge
# Description: Enable service provided by daemon.
### END INIT INFO
export PATH=$PATH:/usr/local/bin
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules
PID=`pidof homebridge`
case "$1" in
start)
if ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is already running"
else
su - manfred -c "homebridge > /dev/null 2>&1 &"
echo "Homebridge starting"
$0 status
fi
;;
stop)
if ! ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is not running"
else
kill $PID
echo "Homebridge closed"
fi
;;
restart)
if ! ps -p $PID > /dev/null 2>&1; then
$0 start
else
$0 stop
$0 start
fi
;;
status)
if ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is running PID $PID"
else
echo "Homebridge is not running"
fi
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac
exit 0
Fehler Meldung
● homebridge.service - LSB: Start daemon at boot time for homebridge
Loaded: loaded (/etc/init.d/homebridge; bad; vendor preset: enabled)
Active: active (exited) since Son 2017-03-12 21:40:00 CET; 24h ago
Docs: man:systemd-sysv-generator(8)
Mär 12 21:39:59 manfred-Parallels-Virtual-Platform homebridge[1989]: Kein Passworteintrag für Benutzer »pi«
Mär 12 21:39:59 manfred-Parallels-Virtual-Platform su[2003]: No passwd entry for user 'pi'
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform su[2003]: FAILED su for pi by root
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform su[2003]: - ??? root:pi
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform homebridge[1989]: Homebridge starting
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform homebridge[1989]: Homebridge is not running
Mär 12 21:40:00 manfred-Parallels-Virtual-Platform systemd[1]: Started LSB: Start daemon at boot time for homebridge.
Mär 12 21:43:24 manfred-Parallels-Virtual-Platform systemd[1]: Started LSB: Start daemon at boot time for homebridge.
Mär 12 21:58:27 manfred-Parallels-Virtual-Platform systemd[1]: Started LSB: Start daemon at boot time for homebridge.
Mär 12 22:00:59 manfred-Parallels-Virtual-Platform systemd[1]: Started LSB: Start daemon at boot time for homebridge.
Gruß
Manfred
So ich habe mal geschaut.
Das Script ist im Prinzip das gleiche wie zum Start von alexa-fhem...
In dem Startcript ist allerdings der USERNAME in Anführungszeichen:
su - "manfred" -c ...
Ob das was macht, keine Ahnung...
...aber wahrsch. nicht, sonst wäre es im Hombridge-Wiki wohl bereits mal korrigiert worden...
Kannst du als User "manfred" Hombridge starten, also auf der Console "homebridge"??
Was passiert, wenn du folgendes eingibst:
sudo /etc/init.d/hombridge start
Also als User "manfred"...
...ist zwar dann etwas "komisch", weil ja im Script zurück zu "manfred" geschaltet wird aber das Startscript wird beim Boot normalerweise als "root" ausgeführt...
Die Fehlerausgabe stammt woher?
Manuelles ausführen oder beim Booten?
Gruß, Joachim
Hi
Habe jetzt eine andere VM probiert wo ich die Homebridge händisch starten kann.
Wenn ich Homebridge eingebe startet der Homebridge und funktioniert auch.
Gibt auch den Code aus und mit Eve habe ich schon eine Lampe erfolgreich schalten können.
Wenn einen Neustart durchführe kommt keine Meldung.
Den dienst starte mit den
sudo service homebridge start
Bekomme ich da folgende Fehlermeldung ausgeworfen
Job for homebridge.service failed because the control process exited with error code. See "systemctl status homebridge.service" and "journalctl -xe" for details.
Und als Status Meldung bekommen ich folgende Fehlermeldung:
sudo service homebridge status
● homebridge.service - LSB: Start daemon at boot time for homebridge
Loaded: loaded (/etc/init.d/homebridge; bad; vendor preset: enabled)
Active: failed (Result: exit-code) since Mit 2017-03-15 21:31:30 CET; 3min 43s ago
Docs: man:systemd-sysv-generator(8)
Process: 3355 ExecStart=/etc/init.d/homebridge start (code=exited, status=203/EXEC)
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: Starting LSB: Start daemon at boot time for homebridge...
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: homebridge.service: Control process exited, code=exited status
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: Failed to start LSB: Start daemon at boot time for homebridge.
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: homebridge.service: Unit entered failed state.
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: homebridge.service: Failed with result 'exit-code'.
lines 1-11/11 (END)
Bin zwar der Meinung, dass ich beide VM Linux die Homebridge gleich installiert habe.
Scheinbar ist es nicht so.
Auf jedenfalls funzt die Homebirdge beim händischen Start bei der anderen VM, nur der Autostart dienst geht leider nicht.
2017-03-15 21:39:12 caching: Licht_Couch-state: on
[2017-3-15 21:39:12] [FHEM] caching: On: true (as boolean; from 'on')
[2017-3-15 21:39:12] [FHEM] Initializing platform accessory 'Licht_Couch'...
[2017-3-15 21:39:12] [FHEM] creating services for Licht_Couch
[2017-3-15 21:39:12] [FHEM] information service for Licht_Couch
[2017-3-15 21:39:12] [FHEM] manufacturer, model and serial number characteristics for Licht_Couch
[2017-3-15 21:39:12] [FHEM] Lightbulb service for Licht_Couch
[2017-3-15 21:39:12] [FHEM] Hue characteristic for Licht_Couch:rgb
[2017-3-15 21:39:12] [FHEM] Saturation characteristic for Licht_Couch:rgb
[2017-3-15 21:39:12] [FHEM] Brightness characteristic for Licht_Couch:rgb
[2017-3-15 21:39:12] [FHEM] On characteristic for Licht_Couch:state
Scan this code with your HomeKit App on your iOS device to pair with Homebridge:
/code]
Kannst du mit der Fehlermeldung wie oben mehr Anfangen.
Gruß
Manfed
Was für ein System hast du eigentlich genau?
Unterstützt es init.d?
Was passiert wenn du jetzt: sudo /etc/init.d/homebridge start eingibst (wenn dein Startscript so heißt)...
Wie gesagt ich selbst habe kein Homebridge, gab nur gesehen/gelesen, dass Homebridge und alexa-fhem "ähnlich" sind...
Aber es ist langsam fraglich, ob du im fhem Forum richtig bist oder nicht eher (parallel) mal in einem Forum bzgl. dem von dir verwendeten System suchst/frägst...
Weil ja das mit dem Startscript für einen PI und sehr wahrscheinlich sogar Wheezy erstellt wurde...
...und (aus Kompatibilität) auch bei Jessie noch funktioniert...
Denn Hombridge an sich scheint ja zu laufen...
Aber vermutlich nutzt dein System einen anderen Mechanismus bzgl. Autostart...
Gruß, Joachim
Hi
Ich benutze Linux Mint ist im Grunde ein Ubuntu aufgebautes system.
Wenn ich sudo /etc/init.d/homebridge start Eingebe kommt folgende Fehlermeldung.
[sudo] Passwort für manfred:
Homebridge starting
Homebridge is not running
das Problem ist ähnlich wie beim der anderen VM
Er versucht das Script zu starten aber bricht ab.
unter etc/init.d/ sind einige start scripts vorhanden.
Unter anderen auch der installierte Fhem
Er verlangt ein Passwort...
...nach Eingabe geht es weiter?
Kann schon sein, dass da noch andere Dateien (legacy) sind...
...aber mittlerweile (bzw. schon seit einiger Zeit) nutzt Ubuntu etc. ein anderes Autostartverfahren...
Im alexa-fhem Wiki gibt es glaube ich auch dazu was...
Aber ich denke du musst herausfinden wie ein Autostart bei dem von dir verwendeten System einzurichten ist...
Also evtl. mal in einem Forum zu Linux Mint suchen/fragen...
Gruß, Joachim
Ja nach der eingabe geht es weiter die zwei Zeilen .
Wie im script als Echo als If else Überprüfung vorhanden sind.
if ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is already running"
else
su - manfred -c "homebridge > /dev/null 2>&1 &"
echo "Homebridge starting"
$0 status
fi
;;
stop)
if ! ps -p $PID > /dev/null 2>&1; then
echo "Homebridge is not running"
else
kill $PID
Soll ich mal das autostart Script reinstellen vom Fhem.
Fhem funktioniert als Autostart.
Ich versuche zu verstehen wie der Start Script funktioniert.
If Überprüfungen sind mir einigermaßen klar, aber hast du zufällig eine Ahnung was das für eine Bedingung sein soll 2>&1.
Ich kenne nur "<==" ">==" usw. aber diese Bedingung finde ich im Netz keine Erklärung.
Das start script holt sich die Variable mit der export Anweisung.
Aber die If Bedingung verstehe ich leider überhaupt nicht.
Gruß Manfred
Das ist keine Bedingung, so werden die Ausgaben und die Fehler nach /dev/null (also "Mülleimer", nichts, ...) geschickt...
Man kann die auch weglassen (zu Testzwecken) um die Ausgaben auf der Console zu sehen.
Bei Autostart hat das dann nat. keinen Sinn mehr...
Gruß, Joachim
Hi
OK Verstehe die if Bedingung ist nur für die Ausgabe zuständig.
Ich habe jetzt mal im google Ubunto Autostart dienste gesucht.
Es gibt eine Vorlage für autostart Dienste im ini.d Verzeichnis.
GNU nano 2.5.3 Datei: skeleton
#!/bin/sh
# kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing.
if [ true != "$INIT_D_SCRIPT_SOURCED" ] ; then
set "$0" "$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script
fi
### BEGIN INIT INFO
# Provides: skeleton
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Example initscript
# Description: This file should be used to construct scripts to be
# placed in /etc/init.d. This example start a
# single forking daemon capable of writing a pid
# file. To get other behavoirs, implemend
# do_start(), do_stop() or other functions to
# override the defaults in /lib/init/init-d-script.
### END INIT INFO
# Author: Foo Bar <foobar@baz.org>
#
# Please remove the "Author" lines above and replace them
# with your own name if you copy and modify this script.
DESC="Description of the service"
DAEMON=/usr/sbin/daemonexecutablename
Link
http://www.tippscout.de/ubuntu-dienste-automatisch-starten_tipp_5451.html
Leider habe ich noch zu wenig Ahnung um mir was daraus zu basteln.
Könnten wir daraus den Autostart hin bekommen?
Gruß Manfred
Wenn es um Ubuntu Autostart geht, warum dann nicht in einem Ubuntu-Forum danach fragen und helfen lassen!?
Hier geht es um fhem und die dazugehörigen Module.
Homebridge an sich läuft ja (so wie du geschrieben hast), jetzt geht es doch wohl eher (nur mehr) um Betriebssystem-spezifische Dinge!?
Was kommt denn als Ausgabe, nachdem du das Passwort eingegeben hast?
Und nicht beschreiben was kommt, sondern besser direkt die Ausgabe hier posten...
...und durchaus etwas "ausführlicher", also nicht nur die 1-2 Zeilen die deiner Meinung nach den Fehler melden, ein wenig davor bzw. der ganze In- und Output (also auch die Eingabe des Befehls hilft, denn da sieht man/ich was du eingegeben hast in welchem Verzeichnis mit welchem User etc.)...
Wenn ich Zeit habe schaue ich mir mal das Ubuntu-Zeugs an aber wie gesagt, besser dort helfen lassen wo die Spezialisten bzgl. des Problems sitzen...
Gruß, Joachim
Hi ich bekomme leider nicht mehr als Fehlermeldung.
z.B.
manfred@manfred-Parallels-Virtual-Platform /etc/init.d $ sudo /etc/init.d/homebridge start
[sudo] Passwort für manfred:
Homebridge is already running
Aber wenn ich das Autostart Script im ini.d Ordner aktiviere geht auch der händische der Start nicht mehr.
Er startet durch bis zum Registriercode für die Siri.
Aber nach den Code Feld kommt folgende Fehlermeldung.
events.js:160
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE :::51826
at Object.exports._errnoException (util.js:1022:11)
at exports._exceptionWithHostPort (util.js:1045:20)
at Server._listen2 (net.js:1259:14)
at listen (net.js:1295:10)
at Server.listen (net.js:1391:5)
at EventedHTTPServer.listen (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/util/eventedhttp.js:60:19)
at HAPServer.listen (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/HAPServer.js:158:20)
at Bridge.Accessory.publish (/usr/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:496:16)
at Server._publish (/usr/lib/node_modules/homebridge/lib/server.js:114:16)
at Server.<anonymous> (/usr/lib/node_modules/homebridge/lib/server.js:372:14)
manfred@manfred-Parallels-Virtual-Platform /etc/init.d $
Und wenn ich den Service Status vom homebridge abrufe kommt folgende Fehlermeldung:
manfred@manfred-Parallels-Virtual-Platform /etc/init.d $ sudo service homebridge status
● homebridge.service - LSB: Start daemon at boot time for homebridge
Loaded: loaded (/etc/init.d/homebridge; bad; vendor preset: enabled)
Active: failed (Result: exit-code) since Mit 2017-03-15 21:31:30 CET; 2 days ago
Docs: man:systemd-sysv-generator(8)
Process: 3355 ExecStart=/etc/init.d/homebridge start (code=exited, status=203/EXEC)
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: Starting LSB: Start daemon at boot time for homebridge...
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: homebridge.service: Control process exited, code=exited status=203
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: Failed to start LSB: Start daemon at boot time for homebridge.
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: homebridge.service: Unit entered failed state.
Mär 15 21:31:30 manfred-Parallels-Virtual-Platform systemd[1]: homebridge.service: Failed with result 'exit-code'.
manfred@manfred-Parallels-Virtual-Platform /etc/init.d $
Zu mehr Fehlermeldungen komme ich leider nicht.
Kannst du mit den Fehlermeldungen was anfangen ?
Danke noch mal für Deine Unterstützung.
Gruß Manfred
Die erste Meldung sagt doch ganz deutlich, dass Homebridge bereits läuft...
Was meinst du mit Startscript aktivieren??
Und wie gesagt ich weiß nicht ob man bei dem von dir verwendeten Ubuntu (mit anderem Autostartmechanismus als init.d) das Startscript per Service-Aufruf ansprechen kann...
Ich nutze für alexa-fhem (ähnliche Basis wie Homebridge) immer direkt das Script, also z.B.
sudo /etc/init.d/homebridge status
Mit den Fehlern kann ich leider nichts anfangen...
Und da Homebridge wie ich verstanden habe ja bei NUR (also Startscript ist nicht da etc.) manuellem Start läuft und es also um Autostart unter Ubuntu geht würde ich mich halt in einem Ububtu-Forum umtun...
Gruß, Joachim
Bin grad zufällig darüber gestolpert, vielleicht findest du dort etwas passendes:
https://forum.fhem.de/index.php/topic,58467.0/topicseen.html
Gruß, Joachim