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

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

Vorheriges Thema - Nächstes Thema

Rennfrosch

Hallo, danke erst mal für das tolle Forum und die Arbeit an diesem Skill.

Ich habe das jetzt alles so gemacht wie in der Anleitung, aber es wird kein Gerät durch Alexa gefunden.

Hier die Ausgabe, wenn ich Alexa-Fhem starte:


pi@raspberrypi:~/alexa-fhem $ ./bin/alexa
[12/30/2016, 1:56:46 AM] using /home/pi/.alexa/config.json
[12/30/2016, 1:56:46 AM] ---
[12/30/2016, 1:56:46 AM] this alexa-fhem 0.1.3
[12/30/2016, 1:56:46 AM] Fetching FHEM devices...
[12/30/2016, 1:56:46 AM] [FHEM] Checking devices and attributes...
[12/30/2016, 1:56:46 AM] [FHEM]   executing: http://10.0.1.32:8083/fhem?cmd=%7BAttrVal(%22global%22,%22userattr%22,%22%22)%7D&XHR=1
[12/30/2016, 1:56:46 AM] [FHEM]   executing: http://10.0.1.32:8083/fhem?cmd=jsonlist2%20TYPE=alexa&XHR=1
[12/30/2016, 1:56:46 AM] [FHEM] starting longpoll: http://10.0.1.32:8083/fhem.pl?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1483059406829
[12/30/2016, 1:56:46 AM] [FHEM] Fetching FHEM devices...
[12/30/2016, 1:56:46 AM] [FHEM] fetching: http://10.0.1.32:8083/fhem?cmd=jsonlist2%20room=AlexaRoom&XHR=1
[12/30/2016, 1:56:46 AM] Server listening on: https://:::3000
[12/30/2016, 1:56:47 AM] [FHEM] no alexa device found. please define it.
[12/30/2016, 1:56:47 AM] [FHEM] got: 4 results
[12/30/2016, 1:56:47 AM] [FHEM] FHEM.Alexa: no service type detected
[12/30/2016, 1:56:47 AM] [FHEM] no device created for FHEM.Alexa (dummy)
[12/30/2016, 1:56:47 AM] [FHEM] FHEM.Alexa.DOIF: no service type detected
[12/30/2016, 1:56:47 AM] [FHEM] no device created for FHEM.Alexa.DOIF (DOIF)
[12/30/2016, 1:56:47 AM] [FHEM] FHEM.Alexa.Status: no service type detected
[12/30/2016, 1:56:47 AM] [FHEM] no device created for FHEM.Alexa.Status (dummy)
[12/30/2016, 1:56:47 AM] [FHEM] Seitenfenster is switch
[12/30/2016, 1:56:47 AM] [FHEM] Seitenfenster has
[12/30/2016, 1:56:47 AM] [FHEM]   On [state;on,off]
[12/30/2016, 1:56:47 AM] [FHEM]   Brightness [state]
[12/30/2016, 1:56:47 AM] [FHEM]   Custom Power [power]
[12/30/2016, 1:56:47 AM] [FHEM]   Custom Energy [energy]
  2016-12-30 01:56:47 caching: Seitenfenster-state: off
  2016-12-30 01:56:47 caching: Seitenfenster-power: 0.0 W
[12/30/2016, 1:56:47 AM] [FHEM]     caching: Custom Power: 0 (as number; from '0.0 W')
  2016-12-30 01:56:47 caching: Seitenfenster-energy: 0.01 kWh
[12/30/2016, 1:56:47 AM] [FHEM]     caching: Custom Energy: 0.01 (as number; from '0.01 kWh')


Das Seitenfenster wird leider nicht als Gerät von Alexa gefunden. Was mache ich falsch bzw. was muss ich noch machen?

Danke schon mal.

justme1968

hast du die geräte suche in der alexa app gestartet? wenn dabei nichts auf der konsole erscheint stimmt dein trigger (oder das port forwarding) nicht. schau dir trouble shooting punkte im wiki an.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Rennfrosch

Die Gerätesuche habe ich gestartet, dabei wird leider kein Gerät gefunden.

Wenn ich die Lamba-Funktion in AWS Lambda teste, wird mir folgender Fehler von Amazon ausgegeben:

{
  "errorMessage": "2016-12-30T11:18:31.789Z b04c4426-ce81-11e6-8698-a9222a061c36 Task timed out after 3.00 seconds"
}

Ich weiß nur nicht, warum das so ist.

Den Trigger hatte ich schon überprüft, der steht in meiner config.json genauso, wie er auch in der AWS Lamba unter Triggers steht.

Den Port 3000 kann ich auch normal über einen dynamischen Host aus dem Internet erreichen, habe es überprüft und geht auch von unterwegs problemlos.

Rennfrosch

Ich kann allerdings den Port 3000 nicht mit https das aufrufen, sondern nur per http. In der Config habe ich SSL allerdings auf false gesetzt. Liegt es vielleicht daran?

Das Zertifikat hatte ich aber eigentlich auch so erstellt, wie in der Anleitung angegeben.

justme1968

das ssl in der config ist für die interne verbindung zu fhem. das ist ok.

von extern musst du per ipv4 und https zugreifen http sollte garnicht gehen.

wie genau hast du das portforwaring eingerichtet?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Rennfrosch

Ich habe eine Airport Extreme Basisstation als WLAN-Router und dort gibt es die Möglichkeit eine IPv4 Portumleitung einzurichten.

Dort habe ich die folgenden Werte eingetragen:

Öffentliche UDP-Port: 3000
Öffentliche TCP-Port: 3000
Private IP-Adresse: 10.0.1.32
Private UDP-Ports: 8083
Private TCP-Port: 8083

So bekomme ich Zugriff auf FHEM, wenn ich meine IP-Adresse über ein externes Netz (Vodafone) mit dem Port 3000 aufrufe, das Ganze ohne https. Mit https funktioniert es nicht.

justme1968

das ziel ist nicht fhem sondern der alexa-fhem dienst. d.h. nicht 8083 sondern ebenfalls 3000
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Rennfrosch


justme1968

ja. port 3000 von aussen muss auf port 3000 auf dem alexa-fhem rechner landen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Rennfrosch

JAAA!!! Es funktioniert! Danke!! Alexa hat jetzt das Gerät gefunden und ich kann die Rollade hoch- und runterfahren lassen. ;D

Zugriff auf FHEM habe ich jetzt allerdings über Port 3000 nicht mehr über den dynamischen Hostname per Webbrowser. Das ist normal und soll so sein?

justme1968

port 3000 ist nur für alexa-fhem.

zugriff auf fhem von aussen solltest du nicht per port forwarding erlauben.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Rennfrosch

Ich habe jetzt noch eine Frage. Vielleicht klappt das ja auch so gut mit der Hilfe. Ich möchte nun noch Alexa-Fhem in FHEM anlegen, damit ich nicht immer die Konsole an meinem Computer laufen haben muss. Allerdings funktioniert es nicht.

Ich habe sowohl diese Anleitung befolgt https://wiki.fhem.de/wiki/Alexa-Fhem#Alexa-Fhem_aus_FHEM_heraus_starten als auch die direkt aus dem Forum, die noch ein paar weitere Einstellungen enthält https://forum.fhem.de/index.php/topic,60244.msg517271.html#msg517271

Allerdings funktioniert es nicht. Der FHEM.Alexa.Status ist auch immer auf drei Fragezeichen. Wie soll er auch gesetzt werden? Er wird ja auch nirgendwo angesprochen, oder?!

Wenn ich bei bei FHEM.Alexa auf einen der 4 Werte klicke, z.B. start, dann wird bei FHEM.Alexa.DOIF ein error erzeugt:    
{system ("sudo /etc/init.d/alexa start > /dev/null 2>&1 &")}: -1

Ich habe spaßeshalber sudo /etc/init.d/alexa start auch mal in der Konsole gestartet, was dann folgende Ausgabe erzeugt:


pi@raspberrypi:~ $ sudo /etc/init.d/alexa start
-su: /opt/fhem/log/alexa-2016-12.log: Permission denied
Alexa starting
Alexa is not running
script done
script done
pi@raspberrypi:~ $


Vielleicht könnte ich hier noch mal Hilfe bekommen?! Wäre sehr dankbar!

mpl8580

Hallo,

bei mir hat soweit jetzt alles geklappt!

Ausser diesem Code. Also ich hab es es genauso versucht.
Leider bekomme ich keinen Status im Fhem angezeigt Fhem.Alexa.Status bleibt mit 3 Fragezeichen stehen.

define FHEM.Alexa.Status dummy

define FHEM.Alexa dummy
attr FHEM.Alexa event-on-change-reading state
attr FHEM.Alexa webCmd status:start:stop:restart


define FHEM.Alexa.DOIF DOIF ([FHEM.Alexa] eq "start")
(set FHEM.Alexa on, {system ("sudo /etc/init.d/alexa start > /dev/null 2>&1 &")})
DOELSEIF ([FHEM.Alexa] eq "stop")
(set FHEM.Alexa on, {system ("sudo /etc/init.d/alexa stop > /dev/null 2>&1 &")})
DOELSEIF ([FHEM.Alexa] eq "restart")
(set FHEM.Alexa on, {system ("sudo /etc/init.d/alexa restart > /dev/null 2>&1 &")})
DOELSEIF ([FHEM.Alexa] eq "status")
(set FHEM.Alexa on, {system ("sudo /etc/init.d/alexa status > /dev/null 2>&1 &")})


Ist das so wirklich richtig oder muss ich da noch was anpaasen - in der Konsole laufen die Befehle - eine Status bekomme ich in Fhem aber nicht

MadMax-FHEM

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)

Rennfrosch

@MadMax-FHEM: Klasse, Danke dir! Das hat was gebracht. Wenn ich jetzt den Befehl in der Konsole ausführe, dann funktioniert es und der Dienst wird ausgeführt, gestoppt oder der Status wird wiedergegeben.


pi@raspberrypi:~ $ sudo chmod -R 777 /opt/fhem/log
pi@raspberrypi:~ $ sudo chown -R fhem /opt/fhem
pi@raspberrypi:~ $ sudo /etc/init.d/alexa start
Alexa starting
Alexa is running PID 7273
script done
script done
pi@raspberrypi:~ $ sudo /etc/init.d/alexa stop
Alexa closed
script done
pi@raspberrypi:~ $ sudo /etc/init.d/alexa status
Alexa is not running
script done


Allerdings funktioniert es noch nicht in der FHEM-Oberfläche.