Amazon Echo Skill & Modul

Bei mir genauso…steuere das auch über ein Script…
Merkwürdigerweise hat das vor 2-3 Wochen noch funktioniert…

Gibt es da aktuell schon neue Erkenntnisse?

Guten Morgen,

ich habe seit gestern ein Echo Dot und die Einbindung in IP-Symcon vorgenommen. Soweit alles gut. Ich hatte vor als erste Aktion das Script für das Garagentor einzubinden:


<?
if($_IPS['SENDER'] == "AlexaSmartHome") {
HM_WriteValueFloat(50149 /*[Garage\Schaltaktor Garagentor]*/, "ON_TIME", 1); //Object $id, Dauer 1 Sekunden
HM_WriteValueBoolean(50149 /*[Garage\Schaltaktor Garagentor]*/, "STATE", true); //Object $id für Dauer einschalten
}
?>

Leider funktioniert es nicht. Das Skript funktioniert im WebFront problemlos. Kann mir jemand einen Tipp geben, ob das Script überhaupt „tauglich“ ist?

Gruß

Thorsten

Hallo
Bei Skripten gibt es keine Einschraenkungen. Was genau funktioniert nicht ?
Sagt Alexa „OK“ ?
Oeffne mal in der Konfiguration von IQL4SmartHome das Fenster Debug.
Bei einem Kommando sollten dort 2 Zeilen auftauchen :
IQL4SmartHomeRequest…
IQL4SmartHomeResult…

Es gibt kein Feedback von Alexa. Es tut sich gar nichts. Es gibt keine DebuAusgabe. Alle Voraussetzungen sind erfüllt. Wie spreche ich Alexa an?

Alexa sagt noch nichtmal „OK“ oder „Konnte Geraet Garage nicht finden“ ?
Alexa hat bei der Geraetesuche etwas gesagt ?
Siehst du in der AlexaAPP im Smartphone deine Garage ?

Wenn ich sage " Alexa Garage" kein Feedback. In der App ist das Gerät vorhanden.

Bei der Gerätesuche bekomme ich im Debug eine Ausgabe:

„Alexa Garage“ wird nicht funktionieren. Du musst schon sagen was mit Garage passieren soll
Probier mal zum Beispiel „Alexa schalte Garage ein“.

Ja das war es…Oh Mann :banghead: Peinlich Peinlich… Vielen Dank!

Hallo zusammen,

ich hab da mal ne wahrscheinlich blöde Frage ^^ Hab mich bisher kaum mit Scipten und Alexa beschäftigt.
Ich kann per Script wunderbar (nur zum testen erstellt) ein HomeMatic Aktor schalten.

<?
if($_IPS['SENDER'] == "AlexaSmartHome") {
	HM_WriteValueBoolean(45743 /*[Gewerke\Licht\Hauptlicht - Büro]*/, "STATE", true);
	HM_WriteValueBoolean(45743 /*[Gewerke\Licht\Hauptlicht - Büro]*/, "STATE", false);
}
?>

Warum funktioniert dann folgendes Script nicht um eine Hue Gruppe zu schalten. (Einzeln als Script funktioniert es. Wenn ich es aber in das Modul hinzufüge gibt es kein OK mehr.)

<?
if($_IPS['SENDER'] == "AlexaSmartHome") {
	HUEGroup_SetState(28361 /*[PHP_Module\Hue\Gruppen\Büro]*/, true);
	HUEGroup_SetState(28361 /*[PHP_Module\Hue\Gruppen\Büro]*/, false);
}
?>

Moin Moin,
hast du den Hue-Skill auch aktiv? Dann hast du ggf. doppelte Namen im SmartHome Bereich bei Alexa. Damit weiß die Tante nichts anzufangen …
Meine Hue’s lassen sich über den Hue-Skill viel besser ‚ansprechen‘, aber das „gesabbel“ für heller/dunkler/bunter ist mir eigentlich zu aufwendig. Die Hue-Kommandos funktionieren bei mir aus „kombinierten“ Skripten wunderbar.

Grüße, Uwe

Die Scripte für Alexa sollten doch eigentlich so aussehen:
Amazon Echo Skill & Modul - Seite 118

Grüße,
Chris

Hallo Chris,

Danke, ich hatte mich bei GitHub an das hier gehalten…

…und hatte das daher auch so probiert.
Mit deinem Link komm ich auch nicht weiter.

Dann müsste das hier ja funktionieren.

<?
if ($_IPS["SENDER"] === "AlexaSmartHome")
{
    if ($_IPS["REQUEST"] === "TurnOnRequest")
    {
        HUEGroup_SetState(28361 /*[PHP_Module\Hue\Gruppen\Büro]*/, true);
    }
    elseif ($_IPS["REQUEST"] === "TurnOffRequest")
    {
        HUEGroup_SetState(28361 /*[PHP_Module\Hue\Gruppen\Büro]*/, false);
    }

}
?>

Geht aber nicht. Bekomme kein OK im Modul.

Lösche ich das Script raus, geht alles wieder auf OK.

Noch bessere Tipps auf Lager ? :smiley:

So wie es bei meinem verlinkten Script ist, habe ich alle meine Scripte und funktioniert einwandfrei :confused:

Sagt das Log/Debug irgendwas? Fehler? Warnungen?
Welche IPS Version verwendest du? Ich bin auf der aktuellen Stable mit dem Live-System mit Alexa Skill.

Grüße,
Chris

Es ist verhext… ich schau mir im Debug an was da so kommt und jetzt klappt es :rolleyes:
Aber habe keinerlei Stati „OK“ mehr im Modul sobald ich ein Script hinzufüge wo HUE Befehle enthalten sind. ^^

[ul]
[li]4.4 #0ce24b1b3093
[/li][li]IQL4SmartHome
[/li][/ul]

Danke Dir !

Vielleicht wegen den Änderungen, die ist gerade im HUE Modul gibt?!
Da wurden doch irgendwie die Instanzen umgebaut!?

Grüße,
Chris

Hallo zusammen,

kann mir jemand sagen, wie ich einen fht80b einbinden muss um die Temperatur über Alexa zu ändern?
Bei dem Heizungsregler von Homematic funktioniert das auf Anhieb in dem ich SET_TEMPERATURE hinterlege.
Wenn ich das mit „Soll Temperatur“ des fht80b versuche bekomme ich im Status : „Profile is not compatible“
Verlinke ich „Temperatur“, bekomme ich einen Status „OK“ und kann die aktuelle Temperatur abfragen, aber nicht verändern.

Vielen Dank schon mal für Eure Tipps.
Markus

Funktioniert denn ein Ändern der Temperatur durch aufrufen der Methode FHT_SetTemperature?
Wenn ja dann probiere doch mal ein Skript mit Alexa auszuführen in der Form


<?
$FHT_ID = 12345; // ObjetId der FHT Instanz
$stepsize = 1; 
if($_IPS['SENDER'] == "AlexaSmartHome")
{
	if($_IPS['REQUEST'] == "SetTargetTemperatureRequest")
	{
		FHT_SetTemperature($FHT_ID, $_IPS['VALUE']);
	}
	elseif($_IPS['REQUEST'] == "IncrementTargetTemperatureRequest")
	{
		$currenttemp= GetValue(IPS_GetObjectIDByIdent("TemeratureVar", $FHT_ID));
		$temp = $currenttemp + $stepsize;
		FHT_SetTemperature($FHT_ID, $temp);
	}
	elseif($_IPS['REQUEST'] == "DecrementTargetTemperatureRequest")
	{
		$currenttemp= GetValue(IPS_GetObjectIDByIdent("TemeratureVar", $FHT_ID));
		$temp = $currenttemp - $stepsize;
		FHT_SetTemperature($FHT_ID, $temp);
	}
	
}
?>

und schau ob das funktioniert.

Danke für die Hilfe.
Bekomme beim ausführen folgenden Fehler in den Meldungen.

13.01.2018 09:41:57 | ScriptEngine | Ergebnis für Skript 30144
<br />
<b>Parse error</b>: syntax error, unexpected ‚$temp‘ (T_VARIABLE) in <b>/var/lib/symcon/scripts/30144.ips.php</b> on line <b>13</b><br />