alexa-fhem: amazon alexa smart home skill für fhem

Begonnen von justme1968, 05 November 2016, 23:21:32

Vorheriges Thema - Nächstes Thema

justme1968

@mupko: im alexa-fhem.tgz

@blasterx: stimmt. das ist aktuell nicht implementiert. warum brauchst du überhaupt so viele fhemIntents?

@elmer: wie kommst du auf bei den attributen? ich habe doch homebridgeMapping geschrieben. also etwas in der art: attr <name> homebridgeMapping TargetPosition=invert=1
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

blasterx

@ justme1968
Ich habe verschiedene Abfragen mit Intent geregelt, das kann man relativ einfach durchführen und sich die gewünschten Antworten selbst zusammenbauen.
zb.
######### Schlafzimmertemperatur abfragen

sub dieSchlafzimmertemperatur() {
my $temp = ReadingsVal("sz_Termostat", "measured-temp", "");
my $solltemp = ReadingsVal("sz_Termostat", "desired-temp", "");
my $thermos = ReadingsVal("sz_Termostat", "actuator", "");

$temp =~ s/\./Komma/g;
$solltemp =~ s/\./Komma/g;

return "im Schlafzimmerzimmer sind es $temp grad, die Heizung ist auf $solltemp grad eingestellt und das Thermostat ist $thermos geöffnet"
}
###############################################

Das ist nur ein Beispiel von Vielen.
Dadurch kommen schon einige zusammen.

Gruß BlasterX
Gruß-BlasterX

Roman

Hallo,

Ist es bei fhemIntents auch möglich z.b. AMAZON.NUMBER zu verwenden?
Wenn ja wie kann ich die dann im Perl-sub abfragen?

Gruß
Roman

hermanski.k

Hallo zusammen,

aktuell habe ich alexa-fhem so eingerichtet, dass ich meine schalter bequem steuern kann.
Nun würde ich gerne den ESP rgb controller hier aus dem forumhttps://forum.fhem.de/index.php/topic,55065.0.html mit alexa-fhem steuern.
Ziel ist es die Farben und die Helligkeit einzustellen.
Kann mir jemand sagen wie ich das ganze einstellen muss.

Vielen Dank und schönen Gruß,
kamilo

baukater

Zitat von: Esjay am 27 Dezember 2016, 19:44:34
Hey Andre..
Riesen großes Dankeschön.Solltest du mal auf die Idee kommen, wie einige andere Entwickler eine PayPal Adresse für kleine Spenden einzurichten, werde ich mich erkenntlich Zeigen.

Ich werde hier gleich mal meinen Weg aufschreiben, damit auch andere verstehen, was genau hier gemacht werden muss.

So für alle.

Ihr legt den dummy an, wie Andre es beschrieben hat


define VolumeUpDown dummy
attr VolumeUpDown alexaName  Receiver
attr VolumeUpDown alexaRoom  Spielzimmer
attr VolumeUpDown genericDeviceType Speaker
attr VolumeUpDown homebridgeMapping LauterLeiser=harmony_39933799:state,cmd=command


dann ändert ihr harmony_39933799 in euer/euren Device/Avr um.

ACHTUNG, dieser Dummy erscheint nicht in der Alexa App, da er lediglich dazu dient, durch den Custom Skill geschaltet zu werden.

dann geht ihr in Fhem auf euer alexa Device, welches ihr mit define <Euer gewählter Name> alexa angelegt habt.

nun gebt ihr oben in der Kommandozeile folgendes ein:
folgendes ein:
attr <Euer gewählter Name> alexaMapping LauterLeiser=state,verb=mach,articles=den,values=lauter:VolumeUp;leiser:VolumeDown
Falls euer Receiver nicht auf VolumeUp oder VolumeDown hört,müsst ihr dies ebenfalls anpassen.

anschließend macht ihr ein

set <Euer gewählter Name> reload

nun ein
get <Euer gewählter Name> customSlotTypes

und tragt die Ergebnisse ( In dem Fall die Erweiterung des Device Receiver) unter Interaction Model in eurem Custom Skill unter Custom Slot Types nach dem im Wiki beschriebenen Schema ein.

dann führt ihr ein

get <Euer gewählter Name> interactionModel
aus, und erweitert in der Reihenfolge -->Custom Slot Types -->Sample Utterances--> Intent Schema den Custom Skill.

Anschließend könnt ihr sagen : Alexa sage <euer gewähltes Startwort für den Custom Skill> mach den Receiver lauter/leiser.
oder über Alexa starte  <euer gewähltes Startwort für den Custom Skill> --> und anschließend mach den Receiver lauter/leiser

So ich hoffe ich habe nichts vergessen!!

Grüße

Hi,

ich wollte mal nach diesem Beispiel ein Gerät nachbauen. An der stelle, wo ich das Attribut alexaMapping anlegen soll, erhalten ich aber eine Fehlermeldung: Lueftungsregler: unknown attribute alexaMapping.

Hab ich das was falsch verstanden?
FB7490,Raspi 2/3,HM-Lan,Jeelink Classic (868),Logilink BT0015 Bluetooth 4.0, 2x mySmartUSB light,RS485USB , entities:272 device:14 channel:27 virtual:1, 6 x HM-LC-BL1-FM,4 x HM-LC-SW4-WM, 1 x HM-LC-SW2-FM,1 x Fensterkontakt,1 1x Türkontakt, 1 1x Bewegungsmelder, DECT-200,DECT100,6xAuthentic Xiaom

justme1968

@Ma_Bo: das ist im nächsten update fest eingebaut

@Roman: kommt in einem der nächsten updates

@hermanski.k: dein device braucht ein korrektes homebridgeMapping für farbige lampen. beispiele gibt es hier im forum

@baukater: alexaMapping ist ein attribut des alexa device
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

blasterx

@justme1968
Ist es in den nächsten Updates geplant, mehr als 27 Intents erzeugen zu können?

Gruß BlasterX
Gruß-BlasterX

michael.winkler

Zitat von: blasterx am 18 Februar 2017, 11:56:39
@justme1968
Ist es in den nächsten Updates geplant, mehr als 27 Intents erzeugen zu können?

Gruß BlasterX
Ich komme auch langsam an die Grenzen

justme1968

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

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

blasterx

Super Danke, und einen Daumen hoch für Deinen schnellen Support.

Gruß BlasterX
Gruß-BlasterX

Dr. Smag

Hallo liebe Gemeinde,

ich habe da mal eine Frage zur Sicherheit. Ich betreibe einen RPI mit FHEM und steuere damit eine Menge an Homematic-Komponenten. Vor allem auch mehrere Keymatic um Türen zu öffnen. Der RPI ist nur im lokalen Netzwerk erreichbar. Aus der Ferne nutze ich VPN.

Jetzt habe ich mit die Alexa auch angeschafft und möchte über ihr Lichter und Heizung steuern. Wie ich sehe muss man den Port 3000 über den Router als Freigabe einrichten.

Ist das sicher? Was geht darüber? Stellt es ein Sicherheitsproblem in Bezug auf die Steuerung meiner Türen dar?
Wenn ja, wie kann man das sichern? Ist die Einrichtung eines Hue-Emulator sicherer? Also ist dort auch eine Portfreigabe nötig?

Ich danke Euch jetzt schon für Eure Hilfe.
RPi1,2,3,HMLAN,HM,CC-RT-DN,HM-TC-IT-WM-W-EU,HM-LC-SW2-PB-FM,HM-LC-Sw1PBU-FM,HM-LC-Dim1TPBU-FM,HM-SEC-RHS,HM-SEC-KEY-S,HM-SEC-S,C, HM-OU-LED16,HM-ES-PMSw1-Pl,HM-RC-Dis-H-x-EU,HM-LC-SW4-DR,HM-RC-8,HM-OU-CFM-TW,HM-SEC-WDS, HM-PB-2-WM55,HM-Sen-MDIR-O,HM-Dis-WM55,HM-Dis-EP-WM55,HM-ES-PMSw1-Pl-DN-R1...

hermanski.k

Zitat von: justme1968 am 18 Februar 2017, 11:43:26
@Ma_Bo: das ist im nächsten update fest eingebaut

@Roman: kommt in einem der nächsten updates

@hermanski.k: dein device braucht ein korrektes homebridgeMapping für farbige lampen. beispiele gibt es hier im forum

@baukater: alexaMapping ist ein attribut des alexa device

Ein link wäre super. Wird so langsam sehr unübersichtlich hier.

Vielen Dank.

hermanski.k

Hallo zusammen,
kurze zusammenfassung zu meinem Problem.

Ich habe eingestellt:

1. alexaMapping:

#Characteristic=<name>=<value>,...
On=verb=schalte,valueOn=an;ein,valueOff=aus,valueToggle=um

Brightness=verb=stelle,property=helligkeit,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

Hue=verb=stelle,valuePrefix=auf,values=rot:0;grün:128;blau:200
Hue=verb=färbe,values=rot:0;grün:120;blau:220

Saturation=verb=stelle,property=sättigung,valuePrefix=auf,values=AMAZON.NUMBER
Saturation=verb=sättige,values=AMAZON.NUMBER

TargetPosition=verb=mach,articles=den,values=auf:100;zu:0
TargetPosition=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

TargetTemperature=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=grad

Volume:verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

RGB=verb=stelle,valuePrefix=auf,values=rot:FF4200;grün:00FF00;blau:0000FF

RGB=verb=färbe,values=rot:FF4200;grün:00FF00;blau:0000FF
#Weckzeit=verb=stelle,valuePrefix=auf;für,values=AMAZON.TIME,valueSuffix=uhr


2. homebridgeMapping:
Hue=state,cmd=hue

3. alex neustart auf dem raspberry und neue gerätesuche in alexa.amazon....

Wenn ich nun sage:

Alexa..stelle..Schlafzimmerlicht auf blau erhalte ich die antwort:
Dieser Befehl funktioniert für das Gerät Schlafzimmerlicht nicht.

Über weitere hinweise wäre ich dankbar.

justme1968

alexa: sage fhem stelle xy auf blau.

es geht nur mit dem custom skill und diesen musst du mit den invocaton wort ansprechen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

hermanski.k

wo sehe ich denn das ich .. stelle fhem .. sagen muss.

Wenn ich zum beispiel

#homebridgeMapping

Brightness=state,cmd=dim

eintrage dann funktioniert es zu sagen:

Alexa stelle schlafzimmer helligkeit auf 15 prozent.