"get MyAlexa CustomSlotTypes" liefert kein Ergebnis

Begonnen von Romoker, 08 Juli 2017, 17:48:07

Vorheriges Thema - Nächstes Thema

justme1968

ich denke ich habe das problem gefunden...

die einzelnen einträge im alexaName müssen mit , getrennt werden nicht mit ;. so wie bei allen anderen aufzählungen.

alexa-fhem splitten am ,. das ; wird komplett ignoriert und 1:1 durchgereicht. scheinbar wird das von node.js nicht url encocded und deshalb gibt es keine gültige rückmeldung an fhem.

ich habe keine ahnung wie und wann das ; im alexaName ins spiel gekommen ist. aber damit kann es noch nie funktioniert haben.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

TomLee

Der Ursprung liegt wohl hier

https://forum.fhem.de/index.php/topic,73668.msg653399.html#msg653399

Mit Komma getrennt werden die customSlotTypes direkt angezeigt und auch die zwei alexaNamen eines mit zwei Namen definierten Devices sind vorhanden. Aber in der App wird nur der zuerst definierte Name erkannt. Der nach dem Komma nicht.

Werden die Namen mit Semikolon getrennt, werden die customSlotTypes zwar nicht angezeigt, aber in der App der zweite Name nach dem Semikolon auch erkannt.

Sieht man sich die Ausgabe in der Konsole mit Semikolon getrennt bspw. hier

https://forum.fhem.de/index.php/topic,74041.msg663913.html#msg663913

genau an, fällt mir nun auch auf das der Zweitname mit Semikolon getrennt hinter dem ersten steht. Dieser sollte denk ich doch als eigenes Device in einer neuen Zeile in der Liste erscheinen. Was schon bisher auf einen Syntax-Fehler hinwies.



Romoker

Im WIKI steht, dass alexaName sowohl für den Smart Home Skill als auch für den Custom Skill gilt.

Werden im Attribut alexaName mehrere Namen mit Semikolon getrennt, werden sie im Smart Home Skill übernommen. Das Device ist dann mit mehreren Namen ansprechbar. Das ist wahrscheinlich der Grund, warum es mehrere von diesen Konfigurationen gibt.

Werden die Namen mit Komma getrennt, wird nur der erste Name im Smart Home Skill übernommen. Dafür funktioniert aber die Auflistung der customSlotTypes, wie wir jetzt wissen.

Wenn alexa ein Semikolon als Trennzeichen für Smart Home Devices verlangt, sollte dann nicht die gleiche Syntax auch für den Custom Skill gelten?

Viele Grüße
BeagleBoneBlack & Raspberry Pi 4; FB7490; div. Homematic Komponenten; CUL433: CUL_TX, Conbee II, SOMFY, 1-Wire, Z-Wave, Zigbee, SmartPlugs von Sonoff und Shelly mit MQTT

justme1968

langsam lichtete sich das dunkel :)...

mehrere alexaNames habe ich bis her nur im custom skill verwendet und getestet.

das es mit einem ; im smart home skill funktioniert ist im alexa api nicht dokumentiert und von mir nicht absichtlich eingebaut. das es geht ist also eher zufall.

ich baue mal für die nächste version ein das die 'richtigen' , für den smart home skill durch ; ersetzt werden. dann sollte es erst mal mit beiden skills funktionieren.

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

amenomade

Zitatdas es geht ist also eher zufall.

ich baue mal für die nächste version ein das die 'richtigen' , für den smart home skill durch ; ersetzt werden. dann sollte es erst mal mit beiden skills funktionieren.
Ist das eine gute Idee, wenn es wirklich zufälligerweise funktioniert und in der API nicht dokumentiert ist (nicht nur nicht dokumentiert:  eigentlich ist das Gegenteil dokumentiert)? Es funktioniert heute, aber vielleicht morgen mit einer neue Version der API nicht mehr.

Wer mit mehrere Namen im SmartHome Skill arbeiten will, kann immer Gruppen in der App kreieren.

Nur meine Meinung. Du bist der Entwickler, du entscheidest ;)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

prodigy7

Hallo zusammen,

gleiches Problem mit aktuellem FHEM Stand hier bei mir. Bei mir hat jedes Device nur einen alexaName, alexaRoom usw. Wo könnte der Fehler noch liegen?

p7

amenomade

Poste mal einen Auszug der alexa-fhem Log beim start von alexa
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

prodigy7

Zitat von: amenomade am 02 August 2017, 13:43:55
Poste mal einen Auszug der alexa-fhem Log beim start von alexa
Och Mann, heute nicht mein Tag ... durch einen blöden Fehler lief das Startskript für Alexa-Fhem nicht mehr. Deswegen kam auch keine Anzeige mehr in FHEM. Vielleicht könnte man ja dahingehend im FHEM Modul noch eine Anzeige einbauen, wenn der Daemon nicht läuft?

amenomade

ZitatVielleicht könnte man ja dahingehend im FHEM Modul noch eine Anzeige einbauen, wenn der Daemon nicht läuft?
Mit SYSMON (siehe CommandRef) kann man sicher sowas bauen.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

prodigy7

Zitat von: amenomade am 02 August 2017, 16:32:28
Mit SYSMON (siehe CommandRef) kann man sicher sowas bauen.
Mir geht es darum, dass das Modul eine Warnung ausspuckt statt ohne Meldung irgendwie weiter (aber dennoch nicht richtig) weiter zu funktionieren. Das ist was anderes als ein Monitoring was du vorschlägst.

amenomade

Na dann ein userReading mit perl system aufruf.

M.A. wäre es ein bisschen kompliziert, sowas in dem Modul selbst einzubauen. Wie soll Fhem wissen, wie alexa-fhem gestartet wurde? Als systemd daemon? Als init.d daemon? Manuell in der Console? Läuft alexa-fhem auf dem gleichem Rechner oder auf einem anderen Rechner? Wie analysiere ich auf einem fern-Rechner? usw.

Das Modul kriegt kein Antwort und meldet das. Das ist nicht sein Job, die Ursache davon zu analysieren. Aber viellecith wird justme1968 eine gute Idee haben ;)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Automatik-Willi

Hallo zusammen, ich habe das gleiche Problem.
Herausgefunden habe ich folgendes :
klick auf "get MyAlexa customSlotTypes" bewirkt nichts, gibt man dann oben in der fhem-commandline "shutdown restart" ein öffnet sich das Fenster mit den customSlotTypes  :o

Vielleicht ist das ein Ansatz..........

Tuxi70

FRITZ!Box: Fon WLAN 7560, FW: 7.0
James: Raspberry Pi 3 Alexa-Fhem 0.4.4 & FHEM 5.8 Latest Revision: 16799 & SVG-DBLog MySQL 3.10.8
Netz : VDSL 1&1 50.000 3x FRITZ!Powerline 530E FW: 1.4.0-00
Smarthome: 4x Comet DECT Thermostat Firmware: 3.68 8x FritzDECT200 Firmware: 4.08
Steuerung: Alexa