Amazon Echo an Symcon anbinden inklusive Proxy

IPS_RunScript — IP-Symcon :: Automatisierungssoftware

d.h. jedes aus einem script gestartete script lauft parallel ab, das aufrufende script wird nicht unterbrochen bis das aufgerufene script fertig ist. dann muss ich lediglich meine Shutter Control in ein eigenes script auslagern. Danke fuer den tip

eine andere möglichkeit ist in der Instanz/Variable den haken bei „Status Emulieren“ zu setzten, das könnte auch gehen :wink:

Ich hätte großes Interesse. Könntest Du mal aufschreiben, wie Du das gemacht hast?

Besten Dank

gros_ibou

Kann man eigentlich herausfinden, mit welchem (von zukünftig mehreren :)) Geräten ich spreche?

Ich würde gerne wenn ich z.B. in einem Raum bin, nicht den Raumnamen mit ansagen müssen um eine Aktion in diesem Raum auszuführen.

Geht das?

Gruß

Burkhard

Hi,
das ist so aktuell mit amazon echo nicht möglich, du könnest dir natürlich für jeden raum ein amazon konto anlegen, und jeweils einen Echo verknüpfen… und dann hierüber unterscheiden… :wink:

Grüsse
Dave

Hast du Bewegungsmelder verbaut? Ich habe es über die Bewegungsmelder gelöst

Gesendet von iPhone mit Tapatalk

Schade. Hatte gehofft es geht.

Bewegungsmelder ist mir leider zu ungenau. Es soll auch funktionieren wenn ich auf dem Sofa liege :smiley:

Gruß

Burkhard

bei einem 1 Personen Haushalt mag das einigermaßen funktionieren… sobald mehrere Personen im Haushalt leben gibt das Disco :smiley:

Mal was anderes… schaltet einer von euch die Heizung mit dem Echo?

Meine verstehen zweiundzwanzig zum verrecken nicht :unamused:

Danke!! Funzt!!

Musste noch

GLOBAL $AlexaMasterKeyArray;

zur Config hinzufügen :wink:

Ja geht einwandfrei bei mir

Gesendet von iPhone mit Tapatalk

Dann nimm statt Bewegungsmelder Radarmelder, bin ich gerade am testen warte auf weitere Lieferungen…

Gesendet von iPhone mit Tapatalk

kleines update :slight_smile:

hab jetzt die autodiscovery meiner Geräte durch alexa so gelöst indem ich den Geräten die ich gerne mit Alexa steuern möchte zwei zusätzliche Variablen gebe: alexa_name und alexa_type. Ich iteriere über all meine Geräte Instanzen, dort wo ein alexa_name vorhanden ist generiere ich das JSON was notwendig ist. Diese script wir von der lambda disovery funktion aufgerufen, d.h. wenn ich ein licht hinzufügen möchte, dann brauche ich jetzt lediglich diese beiden variablen setzten und Alexa per sprachbefehl (Alexa, finde meine smarten geräte) die Geräte finden lassen… ich find das so geil :slight_smile:

Die gruppen sind auch super, wenn ich pennen gehe sage ich „Alexa, schalte das Licht im Erdgeschoss aus“ :loveips:

Unbenannt.PNG

@Mulder: Kannst Du mal die Basics zusammenschreiben?

Danke!

gros_iboz

Gesendet von iPhone mit Tapatalk

Die Idee ist simpel und finde ich gut. Ist nur die Frage ob dann in einem PHP Modul ein Konfigurator enthalten sein soll der diese zwei Eigenschaften vorhält und im Konfiguartionsformular die Möglichkeit besteht genau diese zwei Werte zu setzen. Das hätte zumindest den Vorteil das die Eigenschaft im Modul verwaltet wird und nicht noch zusätzlich pro Instanz zwei Variablen verbraucht werden.

ich schreibe es bald alles zusammen, raume noch den code etwas auf, und verbessere noch hier und da.

meine rollos wollen noch nicht so ganz, entweder Alexa ist zu blöde oder ich hab noch nen bug. Mal funzt es mal quittiert Alexa einfach mit diesem „dadum“ sound und es passiert nix, selbst im Lambda log sieht man nix.

nur so als vorgeschmack, dies ist der einzige code den ich brauche um meine Geräte zu steuern!


<?
$deviceId = $_IPS['deviceId'];
$value = $_IPS['value'];

$alexaName = GetValue (@IPS_GetVariableIDByName("alexa_name", $deviceId));
$alexaType = GetValue (@IPS_GetVariableIDByName("alexa_type", $deviceId));

IPS_LogMessage($_IPS['SELF'], "dimm " .$deviceId . " (".$alexaType.") to " . $value);

if ( $alexaType == "dimmer" ) {
	$value = $value / 100.0;
	HM_WriteValueFloat( $deviceId, "LEVEL", $value);
} else if ( $alexaType == "switch" ) {
	HM_WriteValueBoolean($deviceId, "STATE", $value == 100);
} else if ( $alexaType == "shutter" ) {
   SC_Move($deviceId, $value);
}
?>

den code rufe ich einfach aus dem script aus was von amazon aufgerufen wird damit es asyncron ablauft und nicht die lambda funktion blockiert, die timed nämlich nach 3 sekunden aus.

ja, das wär absolut nice. es nervt mich auch jetzt schon, man muss oft klicken um die variablen anzulegen und man braucht auch immer noch einen 2. schritt um sie dann auch zu setzen. Du meinst das wär dann so eine Maske wie bei dem Shutter Control? Hab noch keine Ahnung wie sowas geht.

Ja dazu bräuchte man dann mindestens IP-Symcon 4.1 um dynamische Konfigurationsformulare benutzten zu können. Dann wählt man zunächst aus wieviele Echo Geräte man steuern will. Dann bekommt man nach übernehmen genau so viele Geräte im Konfigurationsformular angezeigt mit jeweils einem Freitextfeld für den Namen einem Dropdownfeld für den Typ und dem Feld zur Auswahl der Instanz.

ich habe mal alles auf github hochgeladen: GitHub - Mulder8472/ipsymcon-alexaskill

da sind die scripte aus IPS sowie der code der lambda funktion und ein paar screenshots.

paar screenshots, aber keine anleitung bis jetzt.

bitte sagt mir falls ich irgendwo vergessen habe sensitive daten zu maskieren, danke :slight_smile: