[alexa-fhem | Generell] Alles zu Installation und damit verbundenen Problemen

Begonnen von prodigy7, 09 November 2016, 19:42:01

Vorheriges Thema - Nächstes Thema

roadghost

Hallo,

also wenn ich in putty in das verzeichnis /opt/fhem/alexa-fhem wechsel, und dort mittels ./bin/alexa den dienst alexa starte, kann ich übers Handy den Port 3000 erreichen. Sobald ich putty schließe oder den Dienst alexa mit STRG-C beende, ist kein Zugriff auf 3000 mehr möglich.

Das startscript soll den dienst alexa ja starten, aber das funktioniert leider nicht.

@steimer: Ja, den Eintrag in der sudoers habe ich gemacht, funktioniert trotzdem nicht.

Im verzeichnis /etc/init.d haben alle Datein den Besitzer root, bis auf die Datei alexa. Kann das der Fehler sein ?? Muss hier der root der Besitzer sein, oder fhem ??

Gleiches gilt für den alexa-script unter /opt/fhem/alexa-fhem/bin

Hier ist auch nicht root oder fhem der Besitzer.
NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC

steimer-vl

Hast du denn in Fhem das Device Alexa einmal angelegt und versucht über den dummy FHEM.Alexa den Dienst zu starten?


roadghost

Ja, genau wie im WIKI beschrieben, der Dienst MyAlexa steht auf active, aber ohne das starten des script über putty komme ich nicht auf den Port 3000.
NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC

MadMax-FHEM

#633
Also wenn du im Verzeichnis /opt/fhem/alexa-fhem per ./bin/alex starten kannst ist es ja schon mal nicht schlecht.

Was kommt denn in der Console/Terminal/putty wenn du das tust?

Was passiert, wenn du folgendes tust:

EDIT: (SORRY!)
sudo /etc/init.d/alexa start

das ist genau das, was bei Systemstart passieren soll.

Ich würde erst mal testen, ob das geht, denn wenn das schon nicht klappt (und das scheint ja der Fall / das Probem), dann macht ein Starten per fhem-Dummy/DOIF keinen Sinn weil die ja auch nur das Script nutzen...
...dazu muss es ja erstmal funktionieren...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

roadghost

Hallo Joachim,

wenn ich in putty den Befehl ./bin/alexa absetze erhalte ich folgendes:


[7.1.2017, 13:54:36] using /home/roadghost/.alexa/config.json
[7.1.2017, 13:54:36] ---
[7.1.2017, 13:54:36] this alexa-fhem 0.1.8
[7.1.2017, 13:54:36] Fetching FHEM devices...
[7.1.2017, 13:54:36] [FHEM] Checking devices and attributes...
[7.1.2017, 13:54:36] [FHEM]   executing: https://192.168.178.42:8083/fhem?cmd=%7BAttrVal(%22global%22,%22userattr%22,%22%22)%7D&XHR=1
[7.1.2017, 13:54:36] [FHEM]   executing: https://192.168.178.42:8083/fhem?cmd=jsonlist2%20TYPE=alexa&XHR=1
[7.1.2017, 13:54:36] [FHEM] starting longpoll: https://192.168.178.42:8083/fhem.pl?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1483793676376
[7.1.2017, 13:54:36] [FHEM] Fetching FHEM devices...
[7.1.2017, 13:54:36] [FHEM] fetching: https://192.168.178.42:8083/fhem?cmd=jsonlist2%20room=7.0_Alexa&XHR=1
[7.1.2017, 13:54:36] Server listening on: https://:::3000



Sobald er also am Port 3000 lauscht, kann ich übers Handy zugreifen, dann erhalte ich in der Konsole je Zugriff folgendes:



[7.1.2017, 13:56:28] ERROR: SyntaxError: Unexpected end of input from ::ffff:82.113.106.43
[7.1.2017, 13:56:28] ERROR: SyntaxError: Unexpected end of input from ::ffff:82.113.106.43



Der Befehl sudo /etc/init.d/alexa ergibt "Befehl nicht gefunden" !

Gruß

Veit
NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC

roadghost

Arg,

kommando zurück, wenn man schon c&p nutzt.....

du hast ect statt etc gepostet, das kann ja nicht funktionieren.

wenn ich sudo /etc/init.d/alexa absetze erhalte ich:



Usage: /etc/init.d/alexa {start|stop|status|restart}
roadghost@fhem:/$

NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC

roadghost

Joachim,

wirf mal bitte einen blick auf das startscript, muss ich dort den user "pi" den ich vermute, ersetzen durch "roadghost" wie in meinem fall ??

#!/bin/sh
### BEGIN INIT INFO
# Provides: alexa
# 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 alexa
# 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 alexa`
export ALEXAPATH="/opt/fhem/alexa-fhem"
export LOGPATH="/opt/fhem/log"
case "$1" in
start)
if ps -p $PID > /dev/null 2>&1; then
        echo "Alexa is already running"
        perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Alexa.Status info Alexa is already running"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa.Status on"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa off"
else
        su - "pi" -c "cd $ALEXAPATH;./bin/alexa > $LOGPATH/alexa-`date +%Y-%m`.log 2>&1 &"
        echo "Alexa starting"
        sleep 2
$0 status
fi
;;
stop)
if ! ps -p $PID > /dev/null 2>&1; then
        echo "Alexa is not running"
        perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Alexa.Status info Alexa is not running"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa.Status off"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa off"
else
        kill $PID
        echo "Alexa closed"
        perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Alexa.Status info Alexa closed"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa.Status off"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa off"
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 "Alexa is running PID $PID"
        perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Alexa.Status info Alexa running as PID $PID"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa.Status on"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa off"
else
        echo "Alexa is not running"
        perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Alexa.Status info Alexa is not running"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa.Status off"
        perl /opt/fhem/fhem.pl 7072 "set FHEM.Alexa off"
fi
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
exit 1
;;
esac
echo "script done"
exit 0

NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC

MadMax-FHEM

Zitat von: roadghost am 07 Januar 2017, 14:01:22
Arg,

kommando zurück, wenn man schon c&p nutzt.....

du hast ect statt etc gepostet, das kann ja nicht funktionieren.

wenn ich sudo /etc/init.d/alexa absetze erhalte ich:



Usage: /etc/init.d/alexa {start|stop|status|restart}
roadghost@fhem:/$



Ups, sorry!

Äh und dann nat. noch:

sudo /etc/init.d/alexa start

Weil sonst kommt ja nur wie es bedient wird...
...noch mal sorry!
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

Zitat von: roadghost am 07 Januar 2017, 14:03:08
wirf mal bitte einen blick auf das startscript, muss ich dort den user "pi" den ich vermute, ersetzen durch "roadghost" wie in meinem fall ??

Eieiei, ja wo immer man von Standard abweicht gibt es zusätzliche Probleme... ;)

Es gab hier schon mal einen Post wo jemand einen anderen User als pi hatte...
...aber ich vermute: ja.

Und dann natürlich auch die sudoers entsprechend anpassen.

Gruß, Joachim

P.S.: sollte sich aber zeigen, wenn du den jetzt (hoffentlich) richtigen Aufruf mal testest und die Ausgabe postest. Evtl. auch mal die komplette Zeile also mit "prompt" dann sieht man auch gleich mit welchem User das ausgeführt wurde...
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

roadghost

Soo,

also sudo /etc/init.d/alexa start

ergibt


login as: roadghost
roadghost@192.168.178.42's password:
Welcome to Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-57-generic x86_64)

* Documentation:  https://help.ubuntu.com
* Management:     https://landscape.canonical.com
* Support:        https://ubuntu.com/advantage

9 Software-Pakete können aktualisiert werden.
0 Aktualisierungen sind Sicherheitsaktualisierungen.


Last login: Sat Jan  7 13:34:20 2017 from 192.168.178.128
roadghost@fhem:~$ sudo /etc/init.d/alexa start
[sudo] Passwort für roadghost:
No passwd entry for user 'pi'
Alexa starting
Alexa is not running
Can't connect to localhost:7072
Can't connect to localhost:7072
Can't connect to localhost:7072
script done
script done
roadghost@fhem:~$


Also irgendwo habe ich noch ne Leiche mit dem User PI drin, bzw. das script ist auf nen Raspi ausgelegt.

Wo muss / kann ich den user ändern ??

Gruß

Veit
NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC

MadMax-FHEM

Ja wohl im Startscript.

Dort steht ja der user "pi"...

Wenn es den auf deinem System nicht gibt, ist die Meldung logisch...

Allerdings musst noch schauen, dass auch die sudoers passt, dort nat. statt pi auch den User des Scripts eintragen...

Allerdings wird dann bei dem Eintrag der im wiki etc. steht KEIN Passwort mehr verlangt!

Wenn es also ein "normales" System ist wo du normalerweise willst, dass du für die Nutzung von sudo ein passwort eintippen musst, dann muss der Eintrag in sudoers anders lauten!

Aktuell müsste es ja einen Eintrag für deinen User bereits geben...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

roadghost

Jap,

hab im start-script den "pi" durch "roadghost" ersetzt.

Jetzt bekomme icch in putty:


login as: roadghost
roadghost@192.168.178.42's password:
Welcome to Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-57-generic x86_64)

* Documentation:  https://help.ubuntu.com
* Management:     https://landscape.canonical.com
* Support:        https://ubuntu.com/advantage

9 Software-Pakete können aktualisiert werden.
0 Aktualisierungen sind Sicherheitsaktualisierungen.


Last login: Sat Jan  7 13:34:20 2017 from 192.168.178.128
roadghost@fhem:~$ sudo /etc/init.d/alexa start
Alexa starting
Alexa is running PID 3023
Can't connect to localhost:7072
Can't connect to localhost:7072
Can't connect to localhost:7072
script done
script done
roadghost@fhem:~$



Muss ich da noch die sudoers anpassen ?? Dort sollte der user roadghost eigentlich zu finden sein, ich guck aber noch mal rein.

Wieso hab ich den fehler can´t connect ..... ??

Gruß

Veit
NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC

MadMax-FHEM

su - "pi" -c "cd $ALEXAPATH...

Bedeutet: ausführen als user pi, ist vermutlich notwendig damit die Umgebung etc stimmt. Also der Befehl so ausgeführt wird wie wenn du es norm. per Console direkt tust.

Dort dann den passenden User eintragen...

Hier noch etwas bzgl. sudoers:

https://wiki.ubuntuusers.de/sudo/

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

#643
Hast du in fhem den Telnet-Port offen??

Weil der wird versucht zu erreichen: 7072

Passwort versehen?

perl /opt/fhem/fhem.pl 7072 "setreading FHEM.Alexa.Status info Alexa is already running"

darüber wird dann der Status des Dummy etc. beeinflusst...
...hast du den bereits angelegt??

DOIF angelegt??

Um zu sehen, ob es geht entweder anlegen oder die Zeilen mit 7072 auskommentieren '#', dann kannst du ja mal weiter testen.

Allerdings hast du ja auch noch keine Geräte die von alexa erkannt werden, zumindest ist in der Ausgabe beim Starten per Console nichts zu sehen...

https://forum.fhem.de/index.php/topic,60452.msg555304.html#msg555304

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

roadghost

#644
Joachim, Danke.

Also nun funktioniert das starten von alexa aus FHEM heraus.

Gleich mache ich mal einen shutdown restart von FHEM und gucke, ob alexa beim reboot auch gestartet wird. > Edit: Funktioniert nicht, alexa wird beim reboot nicht gestartet.

Telnet bei FHEM ? Ich glaub nicht dass ich den offen habe. Kannst du mir erklären wo ich den öffnen kann ??

Gruß
NUC/Ubuntu 22.04 m. FHEM, div. Tasmota-Steckdosen, HMCFGUSB-2 für 12x HM-CC-RT-DN + 8x HM-TC-IT-WW
Rademacher DuoFern für 12 Jalousien, JeeLink für LaCrosse Temp.Sensor, WLAN-smart-Plugs, 
NUKI smartlock, 2xIP-CAM, Pylontech Speicher + Sungrow WR, Unifi-AP´s + Controller auf weiterem NUC