Amazon Echo Skill & Modul

Ich bin mir nicht sicher, aber ich glaube das geht momentan nach wie vor nur mit einem Custom Skill, wenn das mit einem SmartHomeSkill auch gehen würde wäre aber praktisch.

Ich habe eine Frage zu dem Standardmodul.
Laut Doku, sollte die eingegebene Beschreibung ja auch bei den Geräten auf der Alexa Seite angezeigt werden.
In der aktuellen Version ist das bei mir nicht der Fall.
Galt das nur für die Version 1, oder mache ich eventuell etwas falsch und es müsste funktionieren?

Ich habe gerade gesehen, dass es mit der Version 5.0 auch ein neues Alexa Modul v3 geben wird.
Wird man die bestehende Konfig übernehmen können?

Wahrscheinlich nicht so einfach, weil dann einzelne Geräteklassen genutzt werden wie Licht, Schloss, Temperatursensor usw. (Alexa API Geräteklassen). Dies automatisch zuzuordnen wird schwer möglich sein, daher muss der Nutzer dies wohl einmalig konfigurieren.

Hallo Zusammen,
ich versuche mich gerade mit dem Skill IQL4SmartHome, doch leider ist für mich die Doku nicht ausreichend.

Erstellen Sie eine IQL4SmartHome Instanz
Stellen Sie sicher das die Instanz "Symcon Connect is OK" anzeigt
Fügen Sie Geräte und / oder Scripte hinzu.
Verbinden Sie das Symcon Skill mit Ihrem Symcon Account
    Es wird eine eMail mit einem Aktivierungscode an Ihre Lizenz eMail Adresse geschickt
Führen Sie in der Alexa App eine Gerätesuche durch
Viel Spaß mit Alexa und IP-Symcon :)

Soweit so gut:

Im Skript steht aktuell nur:

<?
IPSUtils_Include ('IPSLogger.inc.php', 'IPSLibrary::app::core::IPSLogger');

IPSLogger_Dbg(__file__, "Sender: ".$_IPS['SENDER'].", Variable: ".$_IPS['Variable'].", Value: ".$_IPS['VALUE']."Request: ".$_IPS['REQUEST']);

?>

Doch egal was ich mit Licht oder Rollo sage, als Antwort erhalte ich immer: Licht/Rollo nicht gefunden.

Was habe ich noch nicht verstanden bzw. was muss ich noch machen?

in der Alexa app Geräte suchen hast aber gemacht?

Danke!
Habe „Geräte suchen“ nach dem Verbinden der Skill durchgeführt, jedoch nicht nochmals, als ich IQL4SmartHome konfiguriert hatte… :banghead:

Hallo,

Nachdem Alexa meine Symcon-Geräte nicht mehr erkannte habe ich als letzten Versuch den Skill deaktiviert und wollte ihn wieder aktivieren.
Auch nach dem 3 Versuch habe ich immer noch keine Bestätigungs-Email bekommen.

Frage 1: Man soll sich per Telefon verifizieren lassen wenn nach 10min. kein Code ankommt, wo finde ich die Telefonnummer?
Frage 2: Meine Subskription ist vor kurzem ausgelaufen, ich muss nun aber nicht nur für die Aktivierung des Skills meine Subskription verlängern?

mfg
Michael

PS: Ich habe schon lange vergessen wie man Lichter oder ähnliches ohne Alexa steuert und sitze nun seid 3 Tagen im Dunkeln, Spotify läuft zum Glück in der Dauerschleife, so ist es nicht ganz so ruhig. Aber wenn ich gewusst hätte das ich das gleiche Lied mehrere Tage in Folge höre, hätte ich den Loop auf ein ganzes Album gewählt und sicherlich ohne das Lied „The Final Countdown“. Außerdem hätte ich etwas leiser gemacht…

Hi Arcalix,

ohne Subskription und somit ohne den Connect Dienst kann du Alexa leider nicht nutzen.

paresy

Du musst sie sogar immer verlängern wenn du Alexa nutzen willst. Nicht nur die Aktivierung.
Alexa benötigt den Symcon Connect-Dienst. Dieser ist nur in einer aktiven Subskription enthalten.
Das steht sogar im ersten Post dieses Themas :wink:
Michael

PS: Oh zu langsam.

Es gibt unterschiedliche Möglichkeiten Alexa mit IP-Symcon zu nutzten. Davon sind mehrere Ansätze im Forum beschrieben. Eine ganz ohne Internetzugang wäre mit der HA-Bridge, die dann etwas an IP-Symcon schickt. Ansonsten muss IP-Symcon für Alexa aus dem Internet erreichbar sein, wie Du das bewerkstelligst ist Dir überlassen.

Die einfachste Möglichkeit ist IP-Symcon Connect zu nutzten, dies ist auch notwendig um den Alexa Skill im Amazon Skill Store zu nutzten, da über IP-Symcon Connect eine Authentifizierung erfolgt. Da sich IP-Symcon Connect nicht separat freischalten lässt, sondern Bestandteil der Subskription ist, kann der Alexa Skill nur mit einer Subskription genutzt werden.

Eine weitere Möglichkeit wäre einen eigenen SmartHomeSkill zu nutzen, auch dazu findest Du Anleitungen im Forum, das ist aber mit mehr Aufwand verbunden. Dazu brauchst aber auch eine Domain mit einem SSL Zertifikat, damit Alexa Dich erreichen kann. Diese muss dann wie hier beschreiben eingerichtet werden damit IP-Symcon unter Deiner eigenen Domain erreichbar ist.

Kurz gesagt wenn Du weist wie es geht und eine eigene Domain hast kannst Du IP-Symcon auch ohne IP-Symcon Connect aus dem Internet erreichen und auch Alexa nutzten.

Wenn Dir das zu kompliziert ist und Du den einfachen Weg gehen willst oder keine Zeit darauf verwenden eine eigene Domain zu nutzten und das einzurichten, verlängere einfach die Subskription und alles geht wieder. Dann kannst Du auch andere Dinge wie IFTTT und so weiter einfach nutzen.

Hallo paresy,

Erst mal vielen Dank für die schnelle Antwort!
…Dann kostet mich das Alexa-Feature also 40€/Jahr, das war mir so nicht bewusst.
Ich bin treuer ips-user seid Jahren und fand das immer alles sehr gut was ihr macht!

Nun habe ich 2 Vorschläge:

  • Eine Vorwarnung 4 Wochen BEVOR die Subskription ausläuft mit dem Inhalt was dann nicht mehr funktionieren wird (Alexa…)
  • Eine Email welche mit dem Versuch des Skill aktivierens darauf hinweist das keine Subskription mehr vorhanden ist.

…wenn ich jetzt nicht wüsste was ich mit meiner Zeit anfangen soll, würde ich mich für eine andere Variante entscheiden :slight_smile:

  • Eine Vorwarnung 4 Wochen BEVOR die Subskription ausläuft mit dem Inhalt was dann nicht mehr funktionieren wird (Alexa…)

Die verschicken wir bereits. Aber wir können ja Alexa und Google Home als Beispiel noch mal explizit nennen :slight_smile:

  • Eine Email welche mit dem Versuch des Skill aktivierens darauf hinweist das keine Subskription mehr vorhanden ist.

Gute Idee!

paresy

dann muss ich die wohl überlesen haben.
…ja genau, mach das (ernsthaft, kein Spass!), ich habe nun 42 Monate verlängert, in 3,5 Jahren nähere ich mich mit großen Schritten der 40, ich kann kann mir ja jetzt schon nichts mehr merken… außerdem sind bis dahin viell. noch ein paar VR-Sachen dazugekommen.

Das Linken vom Skill bemängelt nun mit konkreten Fehlermeldungen, wenn

a) Die Subskription abgelaufen ist
b) Der Connect Dienst nicht aktiv ist
c) Das Alexa-Modul nicht installiert wurde

paresy

super, danke!!!

Hi,
ich habe aktuell zwei Probleme, vielleicht sind die hier im Thread besser aufgehoben:

  1. Wenn ich im Modul ein neues Gerät für Alexa hinzufüge (eine Variable) und dann in meiner Alexa App erneut nach Geräten suche, werden die bereits bestehenden Geräte neu hinzugefügt. Die alten Geräte stehen dann in meiner Liste ein zweites mal, dahinter steht (Offline). Ich muss die Offline Geräte nun löschen, aber auch z.B. Gruppen neu anlegen, weil in den Gruppen dann noch die alten Geräte mit dem Offline Zusatz sind… Wie kann ich das Problem in den Griff bekommen?

  2. Ich bekomme es nicht hin über das Modul meine DMX RGB Instanzen zu steuern. Die Instanz hat ja eine Color Variable mit hexcolor Profil, wenn ich diese Variable im Alexa Modul hinzufüge und danach Alexa anweise eine beliebige Farbe zu setzen sagt sie nur „xx unterstützt das nicht“, wo ist da mein Fehler? Kann ich die Variable nicht direkt setzen sondern muss einen Umweg über ein Script gehen? Wenn ja, wie sähe der aus?

Gruß

Ich habe mal zum hinzufügen von Variablen und Scripten für das Modul eine Funktion geschrieben:

<?
$hbid=22891 /*IQL4SmartHome*/;

alexa_add($hbid,"script","dummy",35844 /*Scripte\dummy*/);

function alexa_add($instanceid,$devicegroup,$name,$varid)
{
$debug=false;

switch ($devicegroup) {
    case "var":
        echo "Es ist ein Variable
";
        $Accessory="Variables";
        break;
    case "script":
        echo "Es ist ein Script
";
        $Accessory="Scripts";
        break;
}
#***************** Config lesen *********************
$settings=IPS_GetProperty($instanceid, $Accessory);
$json_input=json_decode($settings,true);

#***************** Kontrolle ob das Gerät schon exestiert *********************
$suchen=$varid;
$vorhanden=false;
foreach ($json_input as $array)
{
$vorhanden=array_search($suchen,$array,true);
}
if ($vorhanden == true) print "Das Gerät gibt es schon
";
#***************** Weitermachen, wenn das Gerät noch nicht exestiert *********************
if ($vorhanden == false) 
{
print "Das Gerät gibt es nocht nicht, ich lege es an...
";
#********************************** grösste Array Key finden *************************************************
$keys=array_keys($json_input);
$firstkey = (isset($keys[0])) ? $keys[0] : null;
$lastkey = (isset($keys[count($keys)-1])) ? $keys[count($keys)-1] : null;
#********************************** Neue Konfig zusammen bauen *************************************************
$id=$lastkey +1;
$newarray=array($lastkey => array("ID"=> $varid, "Name" => $name, "amzID" => ""));
if (empty($json_input)==false)$finalarray=array_merge($json_input,$newarray);
else $finalarray=$newarray;
#********************************** Neue Konfig übernehmen *************************************************
$temp=json_encode($finalarray);
IPS_SetProperty($instanceid,$Accessory,$temp);
IPS_ApplyChanges($instanceid);
}}
?>

Ich hoffe es klappt…

Oder gibt es eine schönere Art und weise das zu machen ?

Für alle dich noch nicht auf Version 5.0 sind und die Beta-Version vom Alexa Skill nutzen kommt ein wichtiger Hinweis.

Bitte aktualisiert das PHP Modul auf den neusten Stand! Dies ist erforderlich, damit auch in Zukunft der Skill weiterhin korrekt funktioniert.

Wir werden im Juli eine neue Version vom Skill bei Amazon zur Zertifizierung einreichen. Sobald diese veröffentlicht ist, funktioniert alles wie gewohnt weiter, sofern ihr die neuste Version vom PHP Modul installiert habt.

Wir werden diese Information auch zeitnah per E-Mail versenden.

paresy