THIS REPO IS NOT MAINTAINED ANYMORE! Feel free to fork and go ahead :)
We are (finally) live with the skill - See Alexa Skill Store for skill and PLEASE rate us with five stars!! -
Dreambox User mit Dreambox Webcontrol können den Skill bisher leider nicht benutzen. Wir empfehlen die Installation des Openwebif Plugins (see Ticket #132 and #126 for ipk)
scroll down for self deployment instruction or click HERE
Mit dem Enigma2 Control Alexa Skill kannst du deinen Enigma2 Linux Receiver via Amazon Echo steuern. Der Skill befindet sich im Review durch Amazon und ist bald verfügbar. Damit der Skill bei dir funktioniert müssen folgende Gegebenheiten erfüllt sein:
- Der Skill muss aktiviert sein
- Das Account-Linking muss erfolgt sein
- Dein Receiver muss aus dem Internet erreichbar sein (Hier ist ein Tutorial um deine Box aus dem Internet erreichbar zu machen)
- Du musst deine Zugangsdaten für die Box in unserem Portal hinterlegen (URL muss mit http:// oder https:// beginnen)
Wenn alle Gegebenheiten erfüllt sind kannst du mit Alexa, hilfe mit Enigma eine Liste über die verfügbaren Kommandos erhalten. Hier folgt die komplette Übersicht aller möglichen Befehle:
Alexa, frag Enigma Control
was gerade läuftwas ich gerade guckewas aktuell läuft
Alexa,
was ist dasaktuellwas läuft geradewas gucke ich gerade
mit Enigma Control
Alexa, frag Enigma Control
nach meinen kanälennach meinen sendernnach meinen services
Alexa,
meine Kanälemeine Sendermeine Services
mit Enigma Control
Alexa, frag Enigma Control
nach meinen aufnahmennach meinen filmenwelche aufnahmen habe ich
Alexa,
meine aufnahmen
mit Enigma Control
Alexa, frag Enigma Control
nach Ton ausschaltennach stumm schaltenTon auszumachendie Lautstärke auf <0-100> zu setzen
Alexa,
Ton ausschaltenmuteStumm schaltenTon anTon auserhöhe die Lautstärkeverringer die LautstärkeLautstärke hochLautstärke runterlauterleiserdie Lautstärke auf <0-100> setzenLautstärke auf <0-100>Lautstärke auf <0-100> erhöhenLautstärke auf <0-100> verringern
mit Enigma Control
Alexa, frag Enigma Control
und schalte auf <Kanal>auf <Kanal> zu schaltenauf <Kanal> zu wechselnden Sender <Kanal> einzuschaltenzu <Kanal> zu schaltenzu <Kanal> zu wechseln
Alexa,
wechsel zu <Kanal>zap zu <Kanal>schalte auf <Kanal>schalte <Kanal>wechsel <Kanal>umschalten auf <Kanal>umschalten zu <Kanal>
mit Enigma Control
Alexa, frag Enigma Control
ob die Sendung <Sendung> läuftob Sendung <Sendung> läuftob <Sendung> läuftnach der Sendung <Sendung>nach Sendung <Sendung>
Alexa,
such nach Sendung <Sendung>Sendung <Sendung>schalte auf <Sendung>schalte <Sendung>wechsel <Sendung>umschalten auf <Sendung>umschalten zu <Sendung>
mit Enigma Control
Alexa,
schalte runterschalte hochrunter schaltenhoch schalten
mit Enigma Control
Alexa,
schalte zufällig umzufällig umschalten
mit Enigma Control
Alexa,
Standby umschaltenStandby einschaltenStandby ausschaltenausschalteneinschaltenanschalten
mit Enigma Control
Alexa,
aufnehmenAufnahme startenjetzt aufnehmen
mit Enigma Control
Alexa,
pausierenpausefortsetzenstop
mit Enigma Control
Alexa, frag Enigma Control
nach sleep timer in <minuten> Minutennach einschlafen in <minuten> Minutennach ausschalten in <minuten> Minuten
Alexa,
sleep timer in <minuten> Minutensleep timer <minuten> Minuten
mit Enigma Control
Alexa,
vorheriger Kanalvorheriger Senderletzter Kanalletzter Senderzurückschaltenzurück schaltenzurück
mit Enigma Control
Alexa, frag Enigma
worin es geschrieben wurdewo es her kommtwer es geschrieben hat
Alexa,
wer ist dein vater
mit Enigma Control
alexa skill to control your enigma2 device.
development blog post: Alexa in D
dub dependencies:
To host this skill in your own aws account:
note: needs vagrant >= 1.8.0
# setup environments variables
AWS_REGION=AWS region you are hosting the lambda function in
AWS_LAMBDA_NAME=AWS lambda function name
AWS_KEY_ID=IAM key id
AWS_KEY_SECRET=IAM key secret
AWS_DYNAMODB_REGION=AWS region where dynamodb tables are running
OPENWEBIF_TABLENAME=DynamoDB tablename for openwebif database
You need to setup one DynamoDB Table ENV OPENWEBIF_TABLENAME (as defined before in env vars) with primary partition key "accessToken" of type string
As you can see before we can upload our code to aws lambda we have to create the lambda function (and give it a name that we can put in the env vars). To do this please follow this documentation: https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/developing-an-alexa-skill-as-a-lambda-function
If you never created a skill for alexa before get youserlf familiar with the alexa dev console here: https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/registering-and-managing-alexa-skills-in-the-developer-portal
Now building the skill binary and uploading it to lambda is automated. since we need linux binaries I used vagrant to boot up a machine and the building happens in there:
# bring up vagrant and ssh into it
$ vagrant up
$ vagrant ssh
# build and upload to aws lambda
$ cd /vagrant/src
$ ./run.sh
After that you need to build the alexa-portal to host the user interface for account linking based on Login-with-Amazon (ssl certificate need - server.key and server.crt). Provide your url with https protocol, port (default 8080) and path /login in your alexa skill as authorization URL in account linking options. Please choose Implicit grant.
- timeshift
- epg search
- zapping (to channel or show)
- program info
- turn on/off
- volume control
- recording