…vielen Dank für die Tipps zur Behebung des „17101“-Fehlers, habe einen guten Hinweis in der settings.json gefunden und ihn jetzt hoffentlich behoben.
Bei der Gelegnheit noch eine andere Frage:
Wenn ich eine Lampe habe die ich sowohl schalten kann als auch dimmen, wie bilde ich das unterhalb der IQL4SmartHome ab?
Wenn ich ein Aktion Skript habe das auf $_IPS[‚SENDER‘] abfragt
so in der Art
Switch ($_IPS['SENDER'])
{
Default:
Case "RunScript":
Case "Execute":
Case "TimerEvent":
break;
Case "Variable":
Case "WebFront": // Zum schalten im Webfront
SetValue($_IPS['VARIABLE'] , $_IPS['VALUE']);
if ($_IPS['VALUE'] == True)
{
// einschalten
}
else
{
//ausschalten
}
break;
}
unter welchen case muss ich dann eigentlich die Befehle legen damit die ausgeführt werden? Im Webfront lässt sich so ein Gerät schalten. Bei Aufrufen durch Alexa sehe ich nur das das Skript in dem Fall aufgerufen wurde aber die Variable wird nicht geändert.
Die public function RequestAction($Ident, $Value) in einem PHP-Modul reagiert aber nur auf Sender = WebFront?
Vielleicht wäre es ganz gut, wenn Dave, Kai und Paresy da versuchen eine einheitliche Vorgehensweise zu finden?
Die verschiedenen Wege eine Variable zu manipulieren - oder eben dieses zu verhindern - werden irgendwie „gefühlt“ immer komplexer…
Also ich kann da kein Unterschied feststellen. Bei PHP Modulen die eine Boolean Variable haben und das Profil Switch lässt sich das bei mir normal ein / ausschalten.
Ja weil das eine Instanz ist und dort ist es fest RequestAction. Passt schon.
Lediglich bei den Aktions-Skript von Variablen ist der neue Sender u.U. zu berücksichtigen.
Michael
PS:
Wer in einem PHP-Modul bei RequestAction auf Sender prüft, gehört standesamtlich erschossen
Mal eine Frage in die Runde. Ich würde ja im Harmony Hub Modul einfach eine Auswahl ergänzen das für die Aktionen unterhalb der SmartHomeSkill Instanz Links gesetzt werden.
Hat jemand von Euch momentan schon Harmony Aktionen über Alexa laufen? Wenn ja wie habt ihr das gelöst mit einem Skript oder einer Boolean Var pro Aktion?
Ich hatte überlegt pro Aktion eine Boolean Variable anzulegen. Jetzt weis ich aber nicht ob das funktioniert. Ein definitives Aus und Anschalten einer Aktion wird erst mit dem neuen Harmony Modul mit der Logitech API funktionieren. Momentan gibt es ja nur eine Aktion Starten und Power Off als Aktion zum Ausschalten. Jetzt könnte die Boolean Var Ausschalten immer PowerOff triggern und Anschalten dann die Aktion. Ich sehe da nur das Problem das wenn ich eine andere Aktion aufrufe z.B. Fernsehen schauen einschalten und vorher z.B. eine Aktion Musik hören lief das dann ja Musik hören immer noch für Alexa an ist. Das gibt wohl spätestens dann ein Problem wenn man wieder Musik hören einschalten sagt weil einem dann Alexa antwortet das dies bereits eingeschaltet ist.
Hat jemand da schon mit Harmony Aktionen herum experimentiert dann muss ich selber nicht alles ausprobieren. Falls da jemand schon mit gespielt hat würde ich mich über Lösungsvorschläge freuen.
hier wurde ja schon mehrfach gesagt, dass es bei Dimmern reicht, wenn man auf die Dimm-Instanz verlinkt. Alexa schickt dann bei „Ein“ und „Aus“ jeweils ein 100% oder 0%. Diese Vorgehensweise hat jedoch einen kleinen Nachteil, der jedoch nicht am Skill liegt.
Hat man Dimmer, die den letzten eingestellten Wert speichern, so schalten die Lampen bei „Ein“ immer auf 100% statt des alten Wertes. Dies führt dann zu einem Unterschied in der Bedienung gegenüber klassischen Schaltern oder der Visualisierung.
Hat jemand eine Idee, wie man das lösen könnte, ohne das Gerät unter zwei verschiedenen Namen einzurichten?
Wie gesagt, das liegt nicht am Skill. Das Verhalten ist z.B. bei einer Implementierung mittels Hue-Bridge identisch. Dennoch nervt es ein wenig, weil das Verhalten nicht zum bis dato gewohnten Verhalten der Dimmer passt.
ähnliches bei mir - und auch so in meinen eigenen Modulen umgesetzt.
Für mich stellt sich die Frage, ob man es nicht am Ende leichter hat, wenn man sich darauf einigen könnte, dass alle Dimmer einheitlich eben im IPS mit 0 bis 100 (%) gesetzt werden. Aktuell gibt es da ja diverse Varianten (0 - 1, 0 - 255, 0 - 100…).
Ebenfalls finde ich die Frage interessant, ob nicht auch die Benennung der Variablen - egal um was für einen Aktor es sich handelt - „genormt“ werden sollte (z.B. „Status“ für an/aus, „Intensity“ für den Dimmwert usw.).
Unabhängig davon ist es vielleicht auch zu betrachten, ob eine Sprachsteuerung andere Ziele verfolgt als die Bedienung über das Webfront. Nach meinem Gefühl ist die Sprachsteuerung eine erweiterte Bedienung, die grundsätzlich eben auch alles ermöglichen sollte, was über das Webfront möglich ist. Mal abgesehen davon, was Siri, Alexa und Co im Moment für technische Einschränkungen mit sich bringen, würde ich diese aber parallel und gleichwertig dem Webfront (ob im Webbrowser oder auf dem Smartphone) sehen…
Jetzt da Alexa und Siri gerade im IPS „laufen lernen“ besteht noch eine gute Möglichkeit hier grundsätzliche Vereinbarung in der IPS-Nutzung festzulegen.
Vergiss es; es liegt ja an der Hardware.
Homematic hat halt 0 bis 1,0.
Aber dieses Modul zeigt wie man es immer korrekt ansteuert, wenn man mit % arbeitet. Einfach mal in den Code schauen
Michael
…was die Hardware fordert ist ja das eine, was innerhalb des IPS nach außen tritt das andere.
Ich würde mir nur wünschen, dass in den Modulen nicht x Wege parallel programmiert werden müssen, weil es sich um verschiedene Aktoren handelt - und am Ende das gleiche Verhalten zeigen sollen.
Aber diese Diskussion sollten wir an anderer Stelle fortsetzen…
Habe jetzt eine Gruppe angelegt mit dem Wort Wir gehen schlafen!
Wenn ich jetzt zu Alexa sage schalte Wir gehen schlafen Fragt sie immer wieder nach Sorry welches Gerät wolltest du?
Was mache Ich oder Alexa falsch?
Nein hilft leider auch nix! Ich werde es dann über Alexa Custom Skill Modul machen! Ist vielleicht der einfachere weg!
@ paresy Vielleicht kann man im Forum eine eigene Kategorie in IP-Symcon Erweiterungen hinzufügen mit Alexa, und dann noch einige Unterkategorien dann wäre das alles Übersichtlicher wenn man was sucht!
@maxx2081
Hast Du mal nachgesehen wie Alexa den Text erkennt im Verlauf?
Bzw. Ob der Text überhaupt erkannt wird.
Wenn Du als Rufname wirklich „Wir gehen schlafen!“
Also mit Ausrufezeichen drin hast, kann es gut sein, dass genau das Ausrufezeichen das Problem ist.
Ich habe es mal bei mir getestet und es hat auf Anhieb funktioniert