Amazon Echo (Alexa) mit IP-Symcon verbinden

Hast du in der Konfiguration (instanzeneditor Alexa) die Variable State ausgewählt. Dann sollte das schalten einfach funktionieren. Die hilfsvariable mit Script benötigt man nur zum dimmen. Um die Helligkeit beim einschalten nicht auf 100% zu haben.

Vorweg zum Dimmen: Von seiten Alexa wird zwischen An/Aus bzw. setzen auf % unterschieden, einen Dimmer anzuschalten oder auf 100% zu schalten sind verschiedene Aufrufe, welche wir innerhalb des Moduls aber gleichschalten. Ich verstehe den Wunsch das zu unterscheiden und wir werden mal sehen, wie wir das elegant lösen.

Ich verstehe den Wunsch nach Skript direkt ansprechen nicht. Skripte können zum einen ja direkt als Szenen angesprochen werden. Alternativ kann für alle Lampenarten eine Variable mit eigenem Aktionsskript verwendet werden. Wünscht ihr euch hier noch etwas das darüber hinaus geht? Und wenn ja, wie stellt ihr euch das vor?

Dann musst du auch sagen „Licht Festplatte …“
Alles was du bei Dimmer oder Licht einträgst, ist für Alexa Licht!
Auch einen Lüfter direkt unter Lampe eintragen funktioniert nur wenn man sagt „Licht Lüfter…“
Michael

Jetzt bin ich verwirrt.:confused:
Ich sag niemals „Licht …“
Hab zB einen Ventilator unter Light (Switch) und der heisst einfach „Ventilator“
„Computer schalte Ventilator ein“ funktioniert immer.

Ein Script über Szenen oder eine extra Variable ist eine Möglichkeit, die man nur verinnerlichen muss. Da kann man wahrscheinlich mit leben. Hab das vorhin mal mit nem Schalter für die Garagentore probiert. Das Script als Szene hinterlegt und dann funktioniert es. Also soweit ok. Muss dann nur in der Doku ausführlich beschrieben werden. Vielleicht sollte man mal einen Zweig mir HowTo‘s erstellen.

Wie meinst du das? Welche Variable State? Wo soll ich das einstellen?

Habe unter „VariableID“ meine Testvariable eingetragen, versuchsweise nun auch das Script.
Beides mit dem selben, negativen Ergebnis

Hast du beim Alexa-Modul noch die Fehlermeldung oder ein OK.
Das kleine Script muss in der Variable angegeben werden.
Unter Variable editieren - Eigene Aktion

Sorry, war gerade falsch. Das ist bei Google so :wink:
Michael

Bin jetzt leider unterwegs, daher aus dem Gedächtnis. In der Alexa Instanz hast du ja die verschiedenen Ebenen für light, Dimmer, Color… usw. dort trägst du ja das Gerät ein, das geschaltet werden soll. Also vielmehr die Variable, die geschaltet werden soll. Dort einfach die Variable State (so heißt der Status bei homematic Geräten) des Gerätes eintragen. Dann Alexa neue Geräte suchen lassen und dann sollte es funktionieren mit dem schalten.

IQL4Symcon ist der aktuelle Alexa Skill, hier im Thread geht es Schwerpunktmäßig um die IP-Symcon Beta 5 und den neuen Alexa Skill. Dazu ist dann nicht mehr IQL4Symcon notwendig, das muss dann gelöscht werden, statt dessen ist mit der IP-Symcon 5 Beta dieses Alexa Modul unter Modules hinzuzufügen

Aus meiner Sicht wäre es das einfachste zusätzlich name und namespace mit an das Aktionskript zu übergeben. So kann man das nach Bedarf nutzten und in einem Aktion Skript differenzieren.

Das mit den Scene habe ich probiert, leider kommt da immer das Gerät unterstützt das nicht.
Also bei allen was ich sage. (Einschalten, Ausschalten, Helligkeit, Farbtemperatur(Warmes Weiß) und Farbe)
Also um es so zusagen es kommt bei allen das es nicht unterstürzt wird. (Es ist auch im Debug nichts zusehen)

Gruß Swen

P.s. Hier das alte Skript für meine Lampe:

<?
	$light_id = 29725;
	$temp_id = 29729;
	$level_id = 26168;
	
	if($_IPS['SENDER'] != "AlexaSmartHome") {
		exit;
	}
	
	switch($_IPS['REQUEST']){
		case "TurnOnRequest":
			OSR_SetValue($light_id, "STATE", true);
			break;
		case "TurnOffRequest":
			OSR_SetValue($light_id, "STATE", false);
			break;
		case "SetPercentageRequest":
			OSR_SetValue($light_id, "LEVEL", $_IPS['VALUE']);
			break;
		case "IncrementPercentageRequest":
			$new_level = GetValueInteger($level_id) + 25;
			$val = round($new_level *2.55);
			if($val < 0) $val = 0;
			if($val > 255) $val = 255;
			
			OSR_SetValue($light_id, "LEVEL", $new_level);
			break;
		case "DecrementPercentageRequest":
			$new_level = GetValueInteger($level_id) - 25;
			$val = round($new_level *2.55);
			if($val < 0) $val = 0;
			if($val > 255) $val = 255;
			
			OSR_SetValue($light_id, "LEVEL", $new_level);
			break;
		case "SetColorTemperatureRequest":
			OSR_SetValue($light_id, "COLOR_TEMPERATURE", $_IPS['VALUE']);
			break;
		case "IncrementTargetTemperatureRequest":
			$new_temp = GetValueInteger($temp_id) - 1000;
			OSR_SetValue($light_id, "COLOR_TEMPERATURE", $new_temp);
			break;
		case "DecrementTargetTemperatureRequest":
			$new_temp = GetValueInteger($temp_id) + 1000;
			OSR_SetValue($light_id, "COLOR_TEMPERATURE", $_IPS['VALUE']);
			break;
		case "SetColorRequest":
			list($r, $g, $b) = sscanf($_IPS['VALUE'], "#%02x%02x%02x");
			$rgb = $r*256*256 + $g*256 + $b;

			OSR_SetValue($light_id, "COLOR", $rgb);
			break;
		
	}

?>

Danke schonmal für alle Tips zu meinem Problem (ist leider noch nicht gelöst).

Was mir dabei aufgefallen ist, das sich ein Großteil der Antworten schon sehr widersprechen.

  • einmal soll man IQL4Symcon installieren, dann wieder nicht
  • einmal soll man vorher „Licht“ sagen, dann wieder nicht
  • einmal soll man eine „Aktion“ konfigurieren, dann wieder nicht. (wobei ich nichtmal eine „Aktion“ finden konnte, lediglich Variablen, Instanzen, Scripts,…)

Bitte versteht mich nicht falsch. Ich finde nur, das meine scheinbar einfachen Fragen als Anfänger zu ganz schönem Durcheinander führen. Es sieht so aus, als ob sogar die Profis mit den Begrifflichkeiten und Vorgehensweisen sich nicht einig sind. Es scheint, als ob jeder irgendwie rumspielt und probiert, bis irgendwas funktioniert, ohne aber das gemachte zu verstehen.

Das soll heißen, es fehlt hier meiner Meinung nach an einer passenden Doku.
(Ich glaube, ich hatte das beim Thema Modbus schon einmal erwähnt. Auch hier ist mir die Vorgehensweise bis heute unklar und auch die Doku ist hier eigentlich nicht zu gebrauchen. Wenn es nach mir geht, möchte ich das, was ich mache auch verstehen, um es später auch alleine umsetzen zu können, anstatt alles nur abzutippen. Auch einfache Beispiele wären hier meines Erachtens sehr hilfreich für das Verständnis)

Ich bin mir natürlich bewußt, das es sich hier um eine beta handelt, insofern ist mir auch klar, das ich hier nicht mit zu hohen Erwartungen rangehen sollte. Dafür habe ich auch vollstes Verständnis. Nichts desto trotz wäre eine Anleitung, die auch von Nicht-Profis verstanden werden kann, mehr als hilfreich (von mir aus auch als beta, aber spätestens bei dem Release wird diese ja sowieso benötigt, so das die Arbeit ja nicht umsonst ist)

Ich danke fürs Verständnis und hoffe auf ein paar gute Ideen, die nach meiner Sicht schlechte Doku-Situation zu verbessern.

strgalt

Das kann ich absolut nachvollziehen. Ich bin von Beruf Anwendungsentwickler und habe Probleme alles zu verstehen.

Was aber bei dir schon mal definitiv falsch ist, ist das Modul iql4symcon. Das ist, wie Fonzo schon schrieb für die alte IP-Symcon Version. Das Modul muss bei dir entfernt und das neue Modul installiert werden. Dann kannst du dort deine Geräte in das neue Modul integrieren.
Ich kann dir das morgen auch gerne noch mal ausführlicher erklären.
Der GitHub link zum Modul ist in fonzos Hinweis.

So, nun nochmal zu meinem eigentlichen Problem.
Ich versuche nochmal meine bisherigen Schritte zusammenzufassen:

•Bitte hier Formular ausfüllen: Amazon Alexa V3 - Beta: erledigt
•Auf Invite Mail von Amazon warten und dort entsprechend den Anweisungen folgen: Skill aktiviert, mehr nicht, oder?
•Instanz/Modul von Dave löschen. Eure Einstellungen gehen dabei verloren!: gab es nicht, ist mein erster Versuch
•Modul von oben installieren und Instanz hinzufügen: Modul ist installiert, Alexa Instanz existiert
•Geräte hinzufügen: unter Light (Switch) ein Objekt namens „Festplatte“ angelegt mit der VaribleID einer einfachen, boolschen Variable
•Beta-Skill in der Alexa App mit IP-Symcon verbinden: ???
•Nach neuen Geräten suchen: erledigt, Festplatte wurde gefunden

Alexa: Schalte Festplatte ein:
-> „Festplatte reagiert gerade nicht“

Was kann ich euch noch für Infos geben, um dem Fehler auf die Schliche zu kommen?
Screenshots, Logs,…???

Danke für eure Hilfe…

strgalt

Ja, so geht es mir leider auch, bin schonmal froh, das ich nicht der einzige bin, dem das so geht.
(Das war damals bei der Diskussion bezüglich der Modbus-Doku genauso und getan hat sich hier leider trotzdem nichts)

Das iql4symcon habe ich wieder deinstalliert, den Rest habe ich gerade geschrieben.
Wenn dir hierzu was einfällt, was ich vergessen haben könnte, oder falsch gemacht habe, bzw. noch prüfen kann/muß, dann immer raus damit :wink:

strgalt

Frage ist fuer mich noch immer ist im Alexa-Modul ein „OK“ oder eine Fehlermeldung.

Ich habe bisher auch 4.4 und das alte Modul benutzt und bin nun umgestiegen.
Ein Dank an das Symcon Team für eine wirklich hervorragend laufende Testing (noch nicht einmal Beta) Version.
Ich frage mich bei der Diskussion hier allerdings, wieso jemand auf 5.0 TESTING! Und Alexa V3 BETA! umsteigt und sich dann über mangelnde Dokumentation beschwert. Fragen habe ich auch gestellt.

Zum eigentlichen Thema Gerät reagiert nicht. Bei mir war der alte Symcon Skill mit meinem Symcon verknüpft. Nach Installation des Beta Skills musste die Verknüpfung von Alexa und Symcon neu hergestellt werden. Einfach der Anweisung in der Alexa App folgen.

Die restlichen Fragen waren schon beantwortet.

Sebastian

Das war keine Beschwerde, sondern eine Bitte, eine Idee, ein Hilferuf, wie auch immer…
Auch habe ich geschrieben, das ich mir im klaren darüber bin, das dies eine beta ist,
nichts desto trotz darf man hier meines Erachtens aber immer nicht vergessen, das es sich um ein kommerzielles Produkt handelt und was spricht bitte gegen eine Dokumentation bereits im beta-Stadium?

Sorry, habe nochmal geschaut, habe aber leider keine Frage von dir gesehen.
Was meinst du?

strgalt

Dieses „Action required“ macht mich immer noch stutzig…