vielleicht ist das ja für jemand interessant
Folgender Aufbau bei mir
ich habe einen Echo dot von Amazon
Amazon Echo Dot ist ein sprachgesteuertes Gerät, das mithilfe von Alexa Musik wiedergibt, Ihre Smart Home-Geräte steuert, Informationen bereitstellt, die Nachrichten liest, Wecker stellt und vieles mehr
Ich steuere damit u.a. meine Smart Home-Geräte
Die Einrichtung ist etwas tricky aber gut erklärt unter https://wiki.fhem.de/wiki/Alexa-Fhem
Voraussetzung für die Konstellation
FHEM System
PoolController
Controller Modul für FHEM siehe https://www.poolsteuerung.de/viewtopic.php?f=29&t=148
echo dot
Nachdem ich den Echo den Smart Home Skill und den FHEM custom Skill verpasst habe konnte ich mit dem Echo meine Geräte die im Fhem verwaltet werden steuern
Als nächstes wollte ich meine Werte vom Pool abfragen
Ziel war es zu fragen Alexa frage FHEM nach den Poolwerten Eine Antwort zu bekommen im Pool sind es 3,86 grad Redox steht auf 680 mV und der PH wert ist 6,8.
gelöst habe ich es über fhemIntents , hiermit ist es möglich zu sagen Alexa Guten Morgen dann wird etwas ausgeführt und dann gibt man eine Message zurück was Alexa antworten soll.
dafür habe ich eine 99_Alexa_Sprache_Utils.pm angelegt mit dem Inhalt
Code: Alles auswählen
package main;
use strict;
use warnings;
use POSIX;
sub
Alexa_Sprache_Utils_Initialize($$)
{
my ($hash) = @_;
}
##### Start guten morgen
sub
alexa_guten_morgen()
{
fhem "set Alexa_Guten_Morgen_dummy on";
return "Guten Morgen, was kann ich für dich tun";
}
#####Ende guten morgen
#
##### Start gute nacht
sub
alexa_gute_nacht()
{
fhem "set Alexa_Guten_Morgen_dummy off";
return "Gute Nacht, wir hören uns morgen wieder";
}
#####Ende gute nacht
######### Poolwerte abfragen
sub diePoolwerte() {
my $pooltemp = ReadingsVal("Poolcontroller_R", "Pool", "");
my $redox = ReadingsVal("Poolcontroller_R", "Redox", "");
my $ph = ReadingsVal("Poolcontroller_R", "pH", "");
$pooltemp =~ s/\./Komma/g;
$redox =~ s/\./Komma/g;
$ph =~ s/\./Komma/g;
return "im Pool sind es $pooltemp , Redox steht auf $redox und der wert für Ph ist $ph "
}
###############################################
1;
danach im Alexa Gerät auf FHEM die fhemIntents eingetragen {diePoolwerte()}=die diePoolwerte
danach kann man über get <Alexadevice> intercationModel sich die Ausgabe geben lassen
und die Ergebnisse in Intent Schema und Sample Utterances im Custom Skill eintragen und speichern.
die 'Einrichtung ist zwar ziemlich aufwendig aber wenn man es einmal geschafft hat ist man ziemlich flexibel und
kann sich seine Sprachsteuerung selber zusammenbasteln die Erkennung der Sprache funktioniert super und wenn das gerät was nicht erkennt
kann man sich ausgeben lassen was es verstanden hat und eventuell Anpassungen vornehmen.
es gibt jemand im FHEM Forum der den Skill permanent weiter entwickelt Danke auch von hier an justme1968
Gruß Michael