Anbindung an Alexa

Laufende Hard- und Softwaretests. Anregungen/Diskussion für neue Funktionen.
Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

Hi Alex/Guschtl
scheint so als hättest du grundsätzlich alles richtig gemacht , irgendeine Kleinigkeit scheint noch nicht zu passen

prüf mal ob user , pass udn url in einfache Hiochkommas eingeschlossen sind, in dem Lamda Code, ganz oben am ANfang des Codes
url muss den ganzen string 'http://mein controller.de:portx/'; beinhalten.
Ich glaube aber fast , wenn da irgendwas nicht stimmen würde , so würde das initial überhaupt schon nicht funktionieren.

Für einen Basic Script test schlage ich vor du gibst in die Browserzeile einfach mal folgendes ein :
https://fkiesow.home.ktk.de/Alexa/proco ... et_s&sid=0
im dem leeren Browserfenster sollte dann die Temperatur vom 1. Sensor angezeigt werden, von deinem Controller natürlich
damit rufst du aus dem Browser direkt das Script auf ( welches auf meinem privaten Webspace liegt) welches mit DEINEM Controller kommunizieren sollte.
Der Lambda Code ruft am Ende auch nur das gleiche Script auf

Bei der AWS Anmeldung hatte ich keinerlei Steuernummer angegeben, es glaube die ANmeldung war vom typ "basic", also das einfachste was man dort bekommen kann.
Ale Firma ( musst eic glaub ich angeben) hab ich natürlich PoolDIgital hingeschrieben, würe aber fast sagen das man auch "meineFirma " hinschreiben kann, nachprüfen tut das wohl keiner.

Unter Permissions, im Alexa DevloperConsole ist nichts einzutragen , ich glaub das wird nur relevant wenn der Endpoint asynchron au die Amazon services zugreifen will , um etwa "freiwillig" irgendeine Zuständsänderung zu berichten. ALso erstmal nicht dran stören.

überprüf noch mal dein AWS Konto.

Was ich allerdings selber auch schon mal beobachtet hatte sind timeouts der Art :
Alex , schalt den Christbaum ein
dann kommt nach ner zeit :
Christbaum reagiert nicht
einen AUgenblick später geht dennoch der Christbaum an

Scheinbar gibts noch Timung / Timeout Themen zu lösen
gruß
Frank

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Hi Frank,
die Browserzeile funktioniert in angepasster Form auch schon nicht.
Ich hab dir die Zeile mit meinem Zugang per Email geschickt.
Mein Fernzugriff klappt für die Controller Signatur im PPS Forum generell eigentlich schon.
Evtl. schießt dir mein Fehler gleich ins Auge
Danke für die Unterstützung
Gruß Alex

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

ich glaub wir hams jetzt ? lag "nur"am Sonderzechen im Passwort ?
gruß
Frank

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Hi Frank,
Sonderzeichen im Passwort ist raus und schon bekomme ich die Temp. Werte in der Alexa App angezeigt.
Was allerdings noch ist:
Alle 16 Relais werden mir als ausgeschalten in der Alexa App angezeigt, obwohl einige real an sind.
Wenn ich ein Relais über Alexa aktiviere, schalten sich im Controller fast alle ein. Dies ist aber nur über Alexa der Fall.
Ich habe eine DMX Relais Erweiterung im Einsatz falls relevant.
Ich bin jetzt nicht vor Ort, aber werde den Controller heute Abend mal als erstes neu starten.
Danke schon mal für die Unterstützung
Gruß Alex

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

Hallo
ich hab noch einen Fehler im php Script entdeckt und behoben.
Mit dem Fix funktioniert dann scheinbar auch das StateReporting von den Relaiszuständen

php Script hab ich bereits geändert ( auf meinem privaten Webspace) , konnte das auf der Zugfahrt noch bischen prüfen

für euch heisst es :der Lambda Code muss ersetzt werden.
Alles markieren, löschen udn den Inhalt der neuen ProCon.Ip oder ProCon.Easy Textdatei reinfallen lassen, abspeichern
Neue Geräte suchen , muss man denk ich nicht machen.
gruß
Frank
Dateianhänge
SkillCodeProConEasy.txt
AWS LambdaCode für ProCon.Easy
(13.27 KiB) 254-mal heruntergeladen
SkillCodeProConIp.txt
AWS LambdaCode für ProCon.Ip
(27.31 KiB) 240-mal heruntergeladen

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Hi Frank,
super Verbesserung.
Meine Relaiszustände werden in Alexa korrekt angezeigt und wenn ich ein Relais über Alexa aktiviere schaltet sich auch nur dieses eine von Status aus auf ein um.
Nur eins ist mir noch aufgefallen:
Wenn ich dieses eine Relais dann wieder ausschalte, geht es zwar aus, ist dann aber im Auto Modus (zuvor manueller Modus)
Gruß Alex

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

Hi
>>schaltet in den AUTO Mode bei TurnOff
der Controller kennt nicht nru AN / AUS sondern noch AUTO und MANUELL.
Das lässt sich mit den Std SmartHome Funktionen eines Alexa.PowerController Interface ( LIGHT, SWITCH, ...) nicht umsetzen
Daher ( meine) Entscheidung :
TurnOn -Directive wird als Manuell ON umgesetzt
TurnOff -Directive wird als AUTO OFF umgesetzt ( solange keine Regel aktiv ist , bleibt es auch aus, sonst gehts direkt wieder an)

Man kanns im Lambda Code ändern , und z.B nur zwischen MANUELL ON und MANUELL OFF wechslen.
Dazu muss in der Funktion HandlePowerControl bei TurnOff statt der 0 z,B eine 2 als state übergeben werden.
In den AUTO Mode kommt man nur über die Webseite wieder zurück.

Ich werd mal so die ein oder andere Erfahrung abwarten, schauen was man besser machen kann, ggfl. einen Custom Skill generieren.
Der könnte dann all das , was mit den Std SmarthomeSkills nicht geht.
z.b kennen die Std Funktionen keine Einheiten wie ppm, mV , mA, mBar oder Bar
Da würde ich mich über Anregungen freuen , was man , vielleicht auch mit Alexa Rückfrage machen könnte :
Alexa dosiere etwas Chlor
wieviel Chlor soll ich dosieren
dosier 5 minuteb
OK, übrigens ist der pH Kanister bald leer, du solltest nachbestellen
:-)
oder halt vergleichbare Interaktionen
dazu gehört dann sicherlich was wir heute bereits haben : schalte... an oder aus , sag mir die Temperatur von ...
setze strahler rechts auf blau , ....
gruß
Frank

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Hi Frank,
war mir nur aufgefallen, aber jetzt kann ich es verstehen.
Bzgl. Rgb Strahlern noch eine Frage. Die Auswahl an nicht PAR56 Unterwasser DMX Strahlern ist ja recht bescheiden und so hatte ich mich aus Mangel an Alternativen für welche entschieden die 16 feste Farbprogramme haben welche über eine entsprechende Anzahl an Einschaltimpulsen der Versorgungsspannung ausgewählt werden können. Wäre es möglich diese zu integrieren, das z.b ein bestimmter DMX Kanal die entsprechende Anzahl an Impulsen an einer Relaiskarte ausgiebt bevor das Relais statisch einschaltet bei Programm/Farbwahl ? Die Implementierung wäre vmtl. nur auf dem Server Skript möglich ? Da fehlt mir leider der Ansatz.
Gruß Alex

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

Hi Alex,
das Thema "Programme von UWS durchsteppen" sollte in einem neuen Post behandelt werden.
Das ist , so glaub ich nichts was man direkt mit einem SmartHomeSkill umsetzen kann.
Auslösen könnt man das sicherlich irgendwie , der ganze Ablauf selber muss zunächst in der Constroller SW eingebaut werden und auch ohne Alexa funktionieren , abrufbar sein
Dazu brauch ich mehr Infos ( und Anzahl von Interessenten) , also besser in einem neuen Post starten, die Aufgabe beschrieben / erklären

gruß
Frank

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Hi Frank,
ich habe hierfür gerade den neuen Thread „Programme von UWS durchsteppen“ geöffnet
https://www.poolsteuerung.de/viewtop ... =42&t=1109
Gruß Alex

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

Hallo
ich hab noch ein Update für ProCon.ip
bei den RGB Strahlern lässt sich jetzt auch die Helligkeit / Brighness steuern, per Zuruf, oder per Alexa App Slider
Anfangs klappte das nicht so recht , bis ich mal dahinter gekommen bin , was genau zu tun ist

man kann also sagen ( bei mir sind das zwei DMX RGBW Floorspots, welche draussen am Schuppen hängen, einer davon "heisst" : Strahler1)

Alexa ....
Strahler1 auf blau, rot , grün Magenta, Gold, ....usw
Strahler1 ganz hell
Strahler1 auf 1, oder 20, oder 70
Strahler1 auf 1%, auf 20% , auf 70% ...
Strahler1 etwas heller, etwas dunkler

wie gehabt ,AWS Lambda Code nur ersetzen , überschreiben , mehr ist hier nicht zu tun
php Script hatte ich schon angepasst
ggfls Suche neu starten ( nur damit das sog. Discovery neu ausgeführt wird, neue Geräte wird er nicht finden )
gruß
Frank
Dateianhänge
SkillCodeProConIp.txt
update Brighness Control für RGB Scheinwerfer
(27.3 KiB) 239-mal heruntergeladen

Benutzeravatar
SuSaGi
Beiträge: 44
Registriert: 22. Juni 2016, 02:06

Re: Anbindung an Alexa

Beitrag von SuSaGi »

Hallo Frank,

Ich habe heute den neuen SkillCode überschrieben.
Jetzt wird mir in der Alexa App angezeigt, das die Geräte nicht reagieren.

Wenn ich Alexa deb befehl geben die Gartenlampen einzuschalte, sagt sie nur: Gartenlampen reagiert leider nicht.
Habe jetzt zwei mal das Script gelöscht und wieder reinkopiert. Ohne Erfolg.

Auch die temperaturfühler sind nicht erreichbar.
Der controller an sich ist jedoch über den normalen weg erreichbar.

Hast du ne idee?

Giro

Benutzeravatar
SuSaGi
Beiträge: 44
Registriert: 22. Juni 2016, 02:06

Re: Anbindung an Alexa

Beitrag von SuSaGi »

Habe das Problem gefunden. Habe mir mal selber wieder einige Bugs eingebaut.
Einmal habe ich die url vom Controller nicht vollständig eingegeben, dann hat Slash am ende gefehlt, und zum Schluss habe ich beim Kopieren vom Script drei Buchstaben unterschlagen.
Aber nun reagiert Frau Alexa wieder und sie führt meine Befehle zu meiner Zufriedenheit aus :-)

Was ich noch gerne wissen möchte, kann mir Alexa auch die jeweiligen Temperaturen sagen?
Das Funktioniert nicht.. Wenn ich sie frage, wie die Absorbertemperatur ist. Sagt sie mir die aktuelle Außentemperatur.
In der App habe ich den Sensor auch als Absorbertemperatur beschrieben.
Oder funktioniert Temp. Sensoren gar nicht über Alexa Sprachausgabe?

Giro

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

Hi Giro
Temperaurausgabe funktioniert , ich denke es ist ein Aussprache / ErkennungsThema
der Wert sollte in der App auch direkt angezeigt werden, d.h. in dem Fall das der Kommunikationspfad schon mal OK ist
das einfach mal zuerst prüfen
ich frage ab :
Alexa, wie ist die Temperatur vom Poolsensor
Alexa, wie ist die Temperatur vom Aussensor

vielleicht muss man das auch anders formulieren / aussprechen

was nicht gut klappt ist sowas:
Alexa, wie ist die Temperatur vom Pool, oder
Alexa, wie ist die Temperatur von Aussen
da fängt Alexa an nach Städten zu suchen um bei der Stadt "Pool" oder "Aussen" nach Temperatur zu suchen :-)
Bei "Aussen" wird auch gerne mal die Temperatur an meinem STandort ausgegeben.

meine Sensoren heissen auch einfach Pool und Aussen, für Alexa sind diese Worte nicht gut geeignet um deinen Endpoint zu erkennen
gruß
Frank

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Das mit den Schlagwörtern kann ich bestätigen. Alexa greift gerne auf die Temp am Wohnort zu.
Absorber, Solarabsorber mag es bei d r Temp Ausgabe garnicht. Kollektor geht aber gut.
Eine Frage noch:
Die Dmx Start Adresse und Farbreihenfolge für die beiden möglichen RGB Strahler ist fest vorgegeben, oder kann ich die irgendwie verändern?
Gruß Alex

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

Hallo Alex

ich müsste mal ausprobieren etwas von der mir bekannten Rechtschreibung abzuweichen und Alexa Endoints umzubenennen
vielleicht sowas :
Pool in Puhl
Absorber in Absorbah oder appsorbah
:-)
vielleicht entspricht das aus Spracherkennungssicht eher einem deutschen Wort und die Zuordnung zum Endpoint gelibgt besser ?

im Lambda Code ist das fest ( aber editierbar) eingetragen
Ich bin davon ausgegangen das der 1. UWS bei Kanal 1 startet
der 2. UWS dann , abhängig ob es ein RGBW oder RGB Scheinwerfer ist dann bei Kanal 3 (oder 4, bei RGBW)
du kannst das ändern
ich würde das so empfehlen

ganz oben im Lambda Code so ergänzen :
var MAX_RELAIS = 16;
var MAX_ONEWIRE = 8;
var MAX_RGB = 2; // Anzahl der RGB Scheinwerfer
var RGBW_CH = 4; // set to 4 if 4 channel RGBW spot, 3 for standard 3 channel spot
var DMX_START_OFFS = 0; // 0 = start with DMX channel 1, n = start with DMX channel n+1

DMX_START_OFFS wäre der Offset zum ersten Kanal
wenn deine beiden Scheinwerfer also bei DMX Kanal 6 starten sollen schreibst eine 5 dahin, bei DMX Kanal 10 eine 9 usw

beim Alexa.Discovery, in der Schleife , in der die RGB Scheinwerfer initialisiert werden, den Code so anpassen
payload["endpoints"][i+endpoint_offset]["cookie"]["key1"] = DMX_START_OFFS + (i*RGBW_CH); // bei RGBW Scheinwerfern sind es 4 Kanäle, sonst 3

vielleicht noch ein HInweis :
die beiden variablen :
var MAX_RELAIS = 16;
var MAX_ONEWIRE = 8;

kann man natürlich auf einen anderen Wert stellen , wenn man nur 5 Relais benutzt , dann MAX_RELAIS auf 5
das Gleiche gilt für die ANzahl der Sensoren , die meisten haben wohl 3..4 Sensoren maximal ?
Dann tauchen die nicht verwendeten Dinge gar nicht erst bei der Endpoint suche von Alexa auf

gruß
Frank

Benutzeravatar
Frankie
Beiträge: 311
Registriert: 22. Dezember 2014, 22:29

Re: Anbindung an Alexa

Beitrag von Frankie »

HI Alex
ich glaub ich hab die Frage:
Farbreihenfolge für die beiden möglichen RGB Strahler ist fest vorgegeben...
noch nicht beantwortet ?

bei DMX RGB Scheinwerfern ist die Farbreihenfolge denk ich immer gleich R = n, G = n+1 und B = n+2

Alexa.ColorControl liefert die gewünschten FarbWerte immer im HSB Format
die Umrechnung von Hue (0.360°), Saturation (0.0 - 1.0) und Brightness(0.0 - 1.0) nach RGB[jeweils 0..255] erfolgt im php script
dir Rückrechnung der RGB [0..255] Farben nach HSB erfolgt auch im php script, das wird benötigt um Brightness zu ändern ( mach heller, dunkler, dimme auf x %)
aber auch um bei Alexa.StateReport der Alexa App die aktuelle Farbe bereitzustellen ( hier ist wieder HSB erforderlich)
gruß
Frank

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Hallo Frank,
danke dir.
Die Info mit dem Offset hilft mir sehr.
Mir war eingefallen das ich ausserhalb des Pool noch 2 Rgb Bänder an DMX Controllern hängen habe und nach Murphys Gesetz startet deren Adresse natürlich nicht nach der Relaiserweiterung des Controller sondern erst kommt noch ne weitere Dmx Relaiskarte...
Dann brauch ich die Adressen an den Controllern im Schacht nicht zu verändern. Mal schauen ob ich mit der Farbreihenfolge mehr Glück hab...
Gruß Alex

Benutzeravatar
guschtl
Beiträge: 90
Registriert: 26. Juni 2016, 00:10

Re: Anbindung an Alexa

Beitrag von guschtl »

Hi Frank,
das mit dem Offset hat geklappt nachdem ich dann auch nochmal nach neuen Geräten in Alexa gesucht habe.
Allerdings gehen bei mir die Kanäle nach 2 - 3 Sekunden wieder aus und bleiben nicht dauerhaft an.
.. Bzgl. Murphy... natürlich ist Rot und Blau verdreht
Gruß Alex

Benutzeravatar
SuSaGi
Beiträge: 44
Registriert: 22. Juni 2016, 02:06

Re: Anbindung an Alexa

Beitrag von SuSaGi »

Hallo,
Ich habe mal alles umbenannt, und tatsäch!ich es funktioniert perfekt.
Jeder Fühler endet nun mit Sensor, und schon erkennt Alexa die Tempetaturen.
Danke für den Hinweis.

Giro