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

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

Vorheriges Thema - Nächstes Thema

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

Brice

#2656
Da ich mich etwas schwer getan habe, den Custom Skill zum FHEM Connector zu integrieren, hier meine Tipps. Vielleicht hilft es euch.

Ausgangssituation: Neuinstallation auf RPi4 (4GB) unter Raspian Buster, also ohne altes alexa-fhem. Node-Version ist V10.15.2
Vorab: aus der alten Installation sichern


  • alte config.json
  • key.pem
  • cert.pem
  • Einträge aus dem alten Alexa Device zu attr fhemIntents
Dann

Editieren der alexa-fhem.cfg (der Hinweis: alle relevanten Einträge aus der alten config.json hatte mich Zeit gekosten), daher hier folgendes Beispiel:

{
   "alexa": {
"port": 3000,
"name": "Alexa",
"applicationId": "amzn1.ask.skill.xxxx",
"oauthClientID": "amzn1.application-oa2-client.xxxx"
   },
   "connections" : [
      {
        "uid" : 999,
        "name" : "FHEM",
        "webname" : "fhem",
        "filter" : "alexaName=..*",
        "server" : "127.0.0.1",
"port" : "8083"
      }
   ],

   "sshproxy" : {
      "description" : "FHEM Connector",
      "ssh" : "/usr/bin/ssh"
   }
}


Ob die applicationId relevant ist: keine Ahnung.

Im neuen Alexa die aus der alten Installation gesicherten fhemIntents ergänzen.

Alexa-Device neu starten.

Bei mir laufen jetzt die Custom-Skills.

Warum mir der Custom-Skill wichtig ist: ich habe einige mir lieb gewonnenen Routinen, bei denen Alexa mit persönlichen Antworten die Ausführung quittiert.

Edit: Tippfehler berichtigt
FHEM auf RPi 4 4GB (Buster) | produktiv) CUL 868 für FS20 | S300TH | KS300 | Max!Cube als CUN 868 für TechemWZ | HM-MOD-RPI-PCB für HM | Z-Wave ZME_UZB1 | FRITZ!DECT 200 | HUE | Lightify | Echo Dot | WS3080

MadMax-FHEM

Danke, dann kann ich ja (endlich) wohin verweisen wenn mal wieder gefragt wird... ;)

Hatte ich auch...
...mache mittlerweile alles über Routinen der App...
...zusammen mit dem echodevice-Modul...

Spar ich mir den offenen Port etc. :)

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)

Simon74

Ich versuche mich auch mal mit alexa-fhem.
light und switch mit Gruppenbildung passt schon.

Wie bekomme ich jedoch diesen dummy switch zum laufen,
mir ist der Aufbau der Homebridgemappings nicht ganz klar,
bei "Alexa schalte Computer Zwei aus sollte das command <shutdown> ausgeführt werden".
cmdOn=start, cmdOff=shutdown ?

Im Moment findet die Gerätesuche den dummy gar nicht.
defmod dum.pc2 dummy
attr dum.pc2 alexaName computer zwei
attr dum.pc2 alias PC2
attr dum.pc2 devStateIcon off:it_pc:start start:it_pc@#ad3333 on:it_pc@#aa6900:shutdown shutdown:it_pc@yellowgreen
attr dum.pc2 fp_tabl1 210,826,1,PC2,
attr dum.pc2 genericDeviceType switch
attr dum.pc2 group Computer
attr dum.pc2 room Büro
attr dum.pc2 setList state:start,on,shutdown,off


EDIT:
Einschalten funktioniert mit start, jedoch "aus" setzt 0 und nicht wie gewünscht shutdown.


defmod dum.pc2 dummy
attr dum.pc2 alexaName computer zwei
attr dum.pc2 alias PC2
attr dum.pc2 devStateIcon off:it_pc:start start:it_pc@#ad3333 on:it_pc@#aa6900:shutdown shutdown:it_pc@yellowgreen
attr dum.pc2 fp_tabl1 210,826,1,PC2,
attr dum.pc2 genericDeviceType switch
attr dum.pc2 group Computer
attr dum.pc2 homebridgeMapping On=cmdOn=start,Off=cmdOff=shutdown
attr dum.pc2 room Büro
attr dum.pc2 setList state:start,on,shutdown,off


Erledigt, funktioniert  :)

defmod dum.pc2 dummy
attr dum.pc2 alexaName computer zwei
attr dum.pc2 alias PC2
attr dum.pc2 devStateIcon off:it_pc:start start:it_pc@#ad3333 on:it_pc@#aa6900:shutdown shutdown:it_pc@yellowgreen
attr dum.pc2 fp_tabl1 210,826,1,PC2,
attr dum.pc2 genericDeviceType switch
attr dum.pc2 group Computer
attr dum.pc2 [b]homebridgeMapping clear On=state,cmdOn=start,cmdOff=shutdown[/b]
attr dum.pc2 room Büro
attr dum.pc2 setList state:start,on,shutdown,off

amenomade

On=state,valueOn=/on|start/,valueOff=/off|shutdown/,cmdOn=start,cmdOff=shutdown
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Simon74


Simon74

Wie kann ich alexa-fhem eigentlich am einfachsten nach 99_myutils schicken, nur per dummy und notify ?

MadMax-FHEM

Zitat von: Simon74 am 11 Oktober 2019, 18:54:59
Wie kann ich alexa-fhem eigentlich am einfachsten nach 99_myutils schicken, nur per dummy und notify ?

Ja oder Custom Skill...

EDIT: alternativ echodevice-Modul und voice-Reading...

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)

Simon74

Vielen Dank.
Frage noch zu den Squeezebox Steuerungsmöglichkeiten.

Habe ich mal so definiert.
attr sb.bo alexaName büro radio;
attr sb.bo genericDeviceType media
attr sb.bo PlaybackController:reading=playStatus,values=play;pause;stop,cmd=playStatus, VolumeController:reading=volume,cmd=volume


Es funktioniert schon "Alexa schalte Büro Radio ein/aus".
Kann ich die Lautstärke (volume) überhaupt in "genericDeviceType media" einbauen ?
Funktioniert nicht "Alexa stelle Büro Radio Lautstärke auf X Prozent"
Zu Channel/Favorites bin ich noch nicht gekommen..

defmod sb.bo SB_PLAYER 00:04:44:2e:22:0f
attr sb.bo IODev squeeze
attr sb.bo alexaName büro radio
attr sb.bo alias SB Büro
attr sb.bo amplifier play
attr sb.bo coverartheight 50
attr sb.bo coverartwidth 50
attr sb.bo devStateIcon on:it_radio@#aa6900 off:it_radio set_on:it_radio@#aa6900 set_off:it_radio
attr sb.bo donotnotify false
attr sb.bo fadeinsecs 1
attr sb.bo genericDeviceType media
attr sb.bo group Squeezebox Clients
attr sb.bo homebridgeMapping PlaybackController:reading=playStatus,values=play;;pause;;stop,cmd=playStatus ChannelController:reading=currentPlaylistName,cmd=currentPlaylistName, VolumeController:reading=volume,cmd=volume
attr sb.bo room Büro,Geräte->Squeezebox
attr sb.bo ttslanguage de
attr sb.bo ttslink http://translate.google.com/translate_tts?ie=UTF-8&tl=<LANG>&q=<TEXT>&client=t&prev=input
attr sb.bo volumeLimit 100
attr sb.bo volumeStep 10
attr sb.bo webCmd on:off:play:pause:sync:unsync:volume:favorites

   READINGS:
     2019-10-12 09:26:15   alarmsDefaultVolume 50
     2019-10-12 09:26:15   alarmsEnabled   on
     2019-10-12 09:26:15   alarmsFadeIn    on
     2019-10-12 09:26:15   alarmsFadeSeconds 1
     2019-10-12 09:26:15   alarmsSnooze    9
     2019-10-12 09:26:15   alarmsTimeout   60
     2019-10-12 09:27:44   connected       1
     2019-10-12 09:27:44   coverarturl     http://192.168.0.19:9000/music/current/cover_50x50.jpg?player=00:04:20:2e:22:0f&x=42230
     2019-10-12 09:27:34   currentAlbum   
     2019-10-12 09:27:34   currentArtist   WHEN I FIND LOVE AGAIN
     2019-10-12 08:16:15   currentMedia    http://mirror.domain.net:7000/Tralala
     2019-10-12 09:27:34   currentPlaylistName ORF Radio Vorarlberg
     2019-10-12 09:26:15   currentPlaylistUrl
     2019-10-12 09:27:34   currentTitle    JAMES BLUNT
     2019-10-12 09:28:14   currentTrackPosition 527
     2019-10-12 09:27:34   duration        0
     2019-10-12 09:27:34   favorites       ORF_Radio_Vorarlberg
     2019-10-12 01:00:20   lastir          ?
     2019-10-12 09:19:27   lastunknowncmd  displaynotify showbriefly HASH(0x557d3f471528) HASH(0x557d3ef901f8)
     2019-10-12 09:27:44   playStatus      playing
     2019-10-12 09:27:44   playlistCurrentTrack 1
     2019-10-12 09:27:44   playlistTracks  1
     2019-10-12 09:27:34   playlists       ORF_Radio_Vorarlberg
     2019-10-12 09:27:44   power           on
     2019-10-12 09:27:44   presence        present
     2019-10-12 09:27:44   repeat          off
     2019-10-12 09:27:44   shuffle         off
     2019-10-12 09:27:44   signalstrength  wired
     2019-10-12 09:27:44   state           on
     2019-10-12 09:27:44   synced          Küche,Badezimmer,Wohnzimmer,Buero
     2019-10-12 09:27:44   volume          20
     2019-10-12 09:27:44   volumeStraight  20

MadMax-FHEM

Lautstärke geht, Kanalumschaltung geht ebenfalls.

Mit Prozent weiß ich nicht, was geht ist: lauter/leiser (evtl. auch direkten Wert habe ich noch nicht probiert)

Was sprachlich geht musst du bei Amazon kucken, weil NUR DAS auch wirklich geht (von Alexa/Amazon erkannt wird).
Ansonsten: Routinen (aber da geht keine Wertübergabe) oder eben Custom Skill (da geht "alles")...

Vielleicht hilft das: https://forum.fhem.de/index.php/topic,60244.msg974748.html#msg974748

EDIT: bei meinem Media-Dummy wird das Reading "volume" sowohl bei direktem Wert (Alexa, stelle auf Mediabox die Lautstärke auf 50) als auch bei Prozentangabe (Alexa, stelle auf Mediabox die Lautstärke auf 30 Prozent) entsprechend gesetzt (also 50 bzw. 30 [ohne Prozent])

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)

Heimweh

Ich habe die Tage eine eMail von Amazon bekommen mit folgendem Betreff / Text:

Zitat
Node.js 8.10 is EOL, please migrate your functions to a newer runtime version
#
#
Hello,

We are contacting you as we have identified that your AWS Account currently has one or more Lambda functions using Node.js 8.10, which will reach its EOL at the end of 2019.

> What's happening?

The Node community has decided to end support for Node.js 8.x on December 31, 2019 [1]. From this date forward, Node.js 8.x will stop receiving bug fixes, security updates, and/or performance improvements. To ensure that your new and existing functions run on a supported and secure runtime, language runtimes that have reached their EOL are deprecated in AWS [2].

For Node.js 8.x, there will be 2 stages to the runtime deprecation process:

1. Disable Function Create – Beginning January 6, 2020, customers will no longer be able to create functions using Node.js 8.10

2. Disable Function Update – Beginning February 3, 2020, customers will no longer be able to update functions using Node.js 8.10

After this period, both function creation and updates will be disabled permanently. However, existing Node 8.x functions will still be available to process invocation events.

> What do I need to do?

We encourage you to update all of your Node.js 8.10 functions to the newer available runtime version, Node.js 10.x[3]. You should test your functions for compatibility with the Node.js 10.x language version before applying changes to your production functions.

> What if I have issues/What if I need help?

Please contact us through AWS Support [4] or the AWS Developer Forums [5] should you have any questions or concerns.

Bezieht sich das auf mein (auf dem RPI) installiertes node.js?
RaspberryPi, 8 x Intertechnosteckdosen, ETA PU15 über HTTPMOD, Youless Eneergiemonitor, 8 x Technoline Funk Temperatur / Feuchtesensoren über jeeLink, Fritzbox Anbindung, Homematic Rolladen Aktoren, MAX Heizkörperventile + Cube, SONOFF S20, S26, POW, 4ch, OWD, Alexa-fhem, enOcean / Eltako,

justme1968

nein.

natürlich nicht. woher sollte amazon wissen was du bei dir für eine version installiert hast?

wie der text schon sagt geht es um die lambda.js bei aws. und wenn ich alles richtig verstehe sollte alles wie gehabt weiter laufen so lange du nichts ändern willst.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

Amenophis86

Du kannst allerdings auch auf NodeJS 10 auf dem Pi und bei Amazon umstellen. Ich habe es gemacht und bisher im Test noch keine Fehler gefunden. Vielleicht weiß allerdings jemand mehr dazu, welche Fehler es geben könnte?
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

justme1968

ein mögliches problem könnte ein anderer default pfad für mode module sein. manchmal ist es /usr und manchmal /usr/local. wenn der wechselt hast du unter unständen module doppelt installiert und je nach reihenfolge in path erwischst du die falschen.

ich weiß nicht genau wann und warum, habe aber den update zwischen major node versionen im verdacht.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

Heimweh

Zitat von: justme1968 am 22 Oktober 2019, 16:09:35
nein.

natürlich nicht. woher sollte amazon wissen was du bei dir für eine version installiert hast?

wie der text schon sagt geht es um die lambda.js bei aws. und wenn ich alles richtig verstehe sollte alles wie gehabt weiter laufen so lange du nichts ändern willst.

Ja da hast Du natürlich recht! ja so verstehe ich den Text auch... Wollte nur keine Überraschungen erleben nächstes jahr... DANKE!
RaspberryPi, 8 x Intertechnosteckdosen, ETA PU15 über HTTPMOD, Youless Eneergiemonitor, 8 x Technoline Funk Temperatur / Feuchtesensoren über jeeLink, Fritzbox Anbindung, Homematic Rolladen Aktoren, MAX Heizkörperventile + Cube, SONOFF S20, S26, POW, 4ch, OWD, Alexa-fhem, enOcean / Eltako,