Erfahrung Sprachsteuerung mit dem Amazon Echo dot und Zugriff auf die PoolController Werte

Archivierte Beiträge zu abgeschlossenen Themen.
michaelv
Beiträge: 60
Registriert: 6. Januar 2015, 17:03

Erfahrung Sprachsteuerung mit dem Amazon Echo dot und Zugriff auf die PoolController Werte

Beitrag von michaelv »

Guten Abend,

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
 

Alle Reaktionen