Amazon Echo (Alexa) mit IP-Symcon verbinden

Hi.

Wo soll das stehen? Unter Status? Genau dort steht ja dieses „Action required“.

strgalt

Wenn das da steht hast du in deiner Variablen die du angegeben hast kein
„Eigene Aktion“ angegeben.
1.png

Ich glaube dir fehlen einfach die Grundlagen von IPS.
Eine Variable bildet den Zustand der Hardware ab.
Wenn du nun die Hardware ansprechen möchtest, so geschieht dies über die Aktion welche einer Variable hinterlegt ist.

Wenn deine Variable keine Standard- oder Benutzer-Aktion hat; wirst du sie somit nie schalten können.

Michael

Volltreffer, leider :frowning:

Deshalb versuche ich mich ja damit zu beschäftigen und es vor allem zu verstehen.

Genau diese Begrifflichkeiten sind es, die mich nahezu verzweifeln lassen. (Keine Angst, die Doku dazu habe ich nicht nur einmal gelesen)
Der Tip mit der „Aktion“ kam ja bereits vorher.
Da ich Aktion aber nirgends gefunden habe, habe ich ein Script unter der Variable angelegt, war für mich das nahe liegendste.
Ist das nicht das selbe wie eine Aktion (Action Script)?

P.S.: Danke auch an 1007 für den Volltreffer und vor allem das Bild. Ein Bild sagt mehr als 1000 Worte… :slight_smile:

Wo ist dann der Unterschied zur Instanz?
(Instanzen repräsentieren Geräte, welche mit Ihrer Umgebung verbunden sind)
klingt für mich 100% identisch!?

strgalt

Zurück zum Thema:

Die Aktion (oder Action Script, oder Script) wird ausgeführt. (1000 Dank an alle Helfenden)
Im Alexa Skill schaltet die Lampe nach ein paar Sekunden aber wieder auf „aus“.
Braucht Alexa irgendeine Rückmeldung, oder warum ist das so?

strgalt

Alexa zeigt den Zustand der Variable an… wenn die sich nicht ändert. Dann springt sie in der Alexa App auch zurück :smiley:
Siehe weiter unten.

Eine Instanz ist das Gerät selber. Also dass was es macht. Nicht seine Zustände. Das sind die Variablen der Instanz.

Nein, ist nicht dasselbe.
Oder nicht ganz.
Ein Aktions-Script ist ein Script welches in einer Variable bei eigene Aktion eingetragen wird.
Scripte können aber auch oder zusätzlich per zyklische & auslösende Ereignisse, direkt über das WebFront, über IPS_RunScript usw… ausgeführt werden.

Für eine normale IPS-Instanz welche ab Werk eine Standardaktion unterstützt, braucht es außerdem kein Aktions-Script.
Und nun kommen wir zu deinem Wert in Alexa.
Was macht dein Aktions-Script ?
Soll es ‚nur‘ die Variable ändern?
Schau mal hier: Beispiel 1
Aktionsskripte — IP-Symcon :: Automatisierungssoftware

Wenn sich die Variable nicht ändern, nach dem auslösen der Aktion, wird sich der Zustand im Webfront nicht ändern und in der Alexa App auch nicht.

Es ist außerdem sehr ungünstig, eine Beta-Version von IPS, einen Beta-Skill ohne vollständiger Dokumentation als quasi Neueinsteiger zu nutzen. Beta-Versionen sind dazu gedacht Fehler in der Software zu finden. Aktuell kannst du aber gar nicht beurteilen ob es sich hier nun um ein Fehler handelt, oder dieses Verhalten normal ist.

Michael

Vielleicht beschreibst Du mal kurz was Du eigentlich genau für ein Gerät steuern willst bzw. was Alexa schalten soll. Denn normale Instanzen benötigen in IP-Symcon kein eigenes Aktionskript auf Variablen der Instanz. Was die Dokumentation anbelangt ist das ja noch Beta, ich bin mir aber sicher, wenn man klar schildert wo es hängt, ist da IP-Symcon auch dankbar. Das ermöglicht es dann eine Dokumentation für die finale Version zu erstellen, die auch von Neueinsteigern klar verstanden wird, das erspart dann wiederum zu einem späteren Zeitpunkt Fragen, die durch ein passende Dokumentation schon abgedeckt werden können.

Danke für die ausführliche Antwort.
Ich muß mir das noch ein bis zweimal durchlesen und verinnerlichen :slight_smile:
Wenn ich meine ersten Gedanken dazu mal probiert habe, melde ich mich nochmal dazu.

Kann deine Gedanken dazu nachvollziehen, sicherlich hast du damit nicht ganz unrecht.
Aber sieh es mal so: Jemand wie ich, geht an die Sache vielleicht auch anders ran als die alten Hasen unter euch und sieht vielleicht auch Sachen, auf die Ihr aufgrund anderer Herangehensweise vielleicht nie gekommen wärt.
Habe im übrigen schon einen von paresi bestätigten Bug gefunden :slight_smile:

Danke
strgalt

Ehrlich gesagt, weiß ich das noch gar nicht. Klar, in erster Linie erstmal Licht einschalten.
Mir geht es wirklich in erster Linie erstmal darum, das Verständnis dafür zu bekommen.
Wenn ich es dann einmal verstehen sollte, ist es ja letzten Endes egal, was am anderen Ende dranhängt.
Bei mir hängt derzeit eine Wago-Steuerung über Modbus TCP dran und wollte lediglich erstmal irgendein Bit setzen.

Der Satz verwirrt mich nun irgendwie schon wieder, ich schlafe nochmal ne Nacht drüber :slight_smile:

Das sehe ich auch so…

Danke nochmal, ich melde mich die Tage nach ein paar Tests nochmal.

P.S: Hatte ja auch schonmal nachgefragt, ob es eine Art offizielle Schulung gibt, aber dies ist leider nicht möglich.
Oder gibt es hier jemand anderes, mit dem man sich mal ein paar Sachen live anschauen kann, vielleicht bei einem Bierchen???

Nun vom Prinzip ist das so das jede Instanz, die in IP-Symcon vollständig eingerichtet ist und sich dann auch über das Webfront schalten lässt auch mit Alexa funktioniert. Man weist dann einfach der gleichen Variable, die man auch im Webfront zum Schalten benutzt (z.B. Bool mit ~Switch bei einer Lampe) dieser einen Wert in der Kategorie Lampe in Alexa zu, das ist alles.

Da hoffe ich das sich die Verwirrung löst. Instanzen von IP-Symcon als auch Instanzen von PHP Modulen besitzen kein Aktionskript, dies sieht man auch wenn man die Variable mit Doppelklick öffnet dort steht unter Profileinstellungen -> Eigene Aktionen Kein(e). Ein IP-Symcon Instanz bzw. ein PHP Modul weis selber wie das Gerät geschaltet wird und der Status der Variable aktualisiert wird und führt dies auch selber aus. Daher ist es auch für Alexa völlig ausreichend die Variable zuzuweisen, denn die Instanz weis z.B. wie ein/aus zu schalten ist. Im Gegensatz dazu ist das anders wenn man eine eigene Variable hat bzw. anlegt, diese ist zunächst ja nur mal ein Platzhalter für eine Information, die in der Variable abgelegt werden soll. Die Variable an sich ist „dumm“ denn die weis nicht was passieren soll wenn die Varibale den Wert ändert, aus diesem Grund muss man dann eigenen Variablen ein Aktionskript zuweisen, mit den Befehlen die dann ausgeführt werden sollen bei Variablenänderung.

Vielleicht ein IPS-Stammtisch, wenn mal wieder einer in der Nähe des Wohnorts stattfinden sollte.

P.S: Hatte ja auch schonmal nachgefragt, ob es eine Art offizielle Schulung gibt, aber dies ist leider nicht möglich.

Wir bieten den Premium Support an. Das ist wie eine Schulung, jedoch Hand-on per TeamViewer und du kannst meisten die Themen/Probleme selber wählen die wir mit dir lösen. Und es kostet nur einen Bruchteil einer Schulung.

paresy

Ich habe mal eine erste Version der Dokumentation aufgesetzt, die ihr hier finden könnt: Alexa/Alexa at master · symcon/Alexa · GitHub

Ich hoffe die hilft schonmal ein wenig. Wenn ihr in der Doku noch Informationen vermisst oder gerne ausführlicher erklärt haben wollt, dann schreibt einfach und ich sehe was ich da tun kann.

Darüber hinaus wurden die Spalten für Variablen und Skripte breiter gemacht, da mittlerweile ja die Namen und nicht die IDs angezeigt werden.

Color ist falsch, das ist keine Bool Variable sondern eine Integer mit Variablenprofil Hexcolor, oder nicht?

Das stimmt natürlich, habe ich korrigiert. ~HexColor ist genau genommen nicht benötigt, aber ich habe es mal als ausdrückliche Empfehlung mit notiert, da es definitiv sinnvoll ist.

Vielleicht noch ein paar Sätze zu den Scenen. Ich glaube da gibt es noch ein paar Unverständlichkeiten bzgl. was an das Script übergeben wird.
Ich meine da gab es in diesem Thread noch weitere Infos zu.

Das hier?
Amazon Echo (Alexa) mit IP-Symcon verbinden (V3, Beta) - Seite 10
Wurde das überhaupt umgesetzt?
Michael

Sorry, kann den Beitrag leider nicht selber löschen…

Falscher Thread?
Michael

Hoffe ich doch. Ich warte eigentlich nur darauf das in Value auch ein False gesendet wird.