[erledigt] homeBridgeMapping: Characteristic finden, "Standard-Reading", ...

Begonnen von MadMax-FHEM, 25 Februar 2019, 20:32:12

Vorheriges Thema - Nächstes Thema

MadMax-FHEM

Hallo,

aktuell habe ich etwas Zeit und bin dabei alexa-fhem von meinen Testsystemen*) auf mein Hauptsystem zu "migrieren"...
...parallel bekomme ich nat. mit, dass auch mit dem Smart Home Skill "immer mehr geht" :)

Daher probiere ich aktuell (vor dem "Umzug") noch ein wenig aus, was ich wie haben will, also (für mich) geschickteste Umsetzung gewisser Dinge.

Dabei "stolpere" ich nat. immer wieder über homeBridgeMapping (bislang habe ich mich immer davor gedrückt ;)   ).
Einiges mache ich (noch immer) per Dummy wo ich dann gleich mit den "richtigen" Readings arbeite.
Beispiel:

Fernseher (wobei Fernseher als Name nicht gut ist ;)  mit t.v. geht es ganz gut)

Internals:
   FUUID      5c73f4ce-f33f-ff8d-7039-42a91f21401abc05
   NAME       dmTV
   NR         44
   STATE      on
   TYPE       dummy
   OLDREADINGS:
     2019-02-25 18:55:08   volume          90
   READINGS:
     2019-02-25 19:44:43   mute            0
     2019-02-25 15:53:08   state           on
     2019-02-25 19:44:43   volume          100
Attributes:
   alexaName  t.v.
   genericDeviceType speaker
   oldreadings volume
   readingList volume mute
   room       alexa
   setList    on off mute volume


Jaja, ich weiß: dummy und notify ist für Dummies ;)
Aber es gibt einen Grund: wenn ein bestimmter Befehl von Alexa kommt, dann prüfe ich in einer Sub noch einiges bevor ich dann den tatsächlichen Befehl ausführe...
Da wüsste ich jetzt nicht wie ich das mit homeBridgeMapping und dann ja dort "direkten Befehlen" anstellen sollte...

Beim genannten Dummy funktionieren die Befehle (lauter, leiser, mute), weil die Readings (zufällig) passend sind (da hatte ich Glück ;)  ).

Jetzt wollte ich weiter gehen (weil ich mitgekriegt habe, dass inzwischen Multimedia geht) und eben ein "media-Device" anlegen...
...und jetzt kommt das eigentliche Problem:

was Alexa alles in welcher Sprache kann findet sich ja auf Amazon-Developer, z.B. hier: https://developer.amazon.com/de/docs/device-apis/message-guide.html (und dann halt durchhangeln / irgendwo war auch ein besserer Link, finde ich aber grad nicht)

ABER: wie kann ich feststellen, WAS alexa-fhem jeweils davon bereits unterstützt?
(habe schon den Code duchsucht aber manchmal finde ich was, dann wieder nicht, habe aber gelesen, dass es bereits unterstützt wird)
Code von alexa-fhem durchsuchen wäre ok, wenn ich immer so wüsste wo (also in welcher Datei was) suchen... ;)

Dann die Frage: wie finde ich die Namen der Readings mit denen es "automatisch" klappen würde? Ebenfalls im Code?
(wenn ich wüsste wo suchen!?)

Wenn ich ein homeBridgeMapping bräuchte: wo kann ich dann rausfinden, wie die "Characteristic" heißt?
Ich habe mal folgende Quelle gefunden: https://github.com/KhaosT/HAP-NodeJS/blob/master/lib/gen/HomeKitTypes.js
Bin ich da richtig?
Gibt es eine bessere?
Kann man das auch im Code finden!?


Sorry für die lange Geschichte/Frage aber ich denke das ist für viele interessant!?


Vielen Dank schon mal, Joachim



*) Testsysteme/alexa-fhem "Infrastruktur":
- Hauptsystem: alexa-fhem (legacy), fhem (alexa-Modul) aktuell, Smart Home Skill (Developer)
- Testsystem 1: 3x Custom Skill und Smart Home Skill (Developer) eingebunden per config.json des "Hauptsystems" (fhem-connection)
- Testsystem 2: alexa-fhem (aktuell), fhem (alexa-Modul) aktuell, Smart Home Skill (fhem Connector) -> aktuelle "Spielwiese" ;)
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

justme1968

es steht alles hier: https://wiki.fhem.de/wiki/FHEM_Connector#Was_geht_alles_.3F

inklusive dem 'besseren' link :).

wenn was fehlt: bitte ergänzen.


wenn du selber suchen magst:
was alexa-fhem kann findest du am besten über die deviceToEndpoints routine in lib/server.js. da werden die characteristics auf alexa typen umgebaut. wenn du in lib/fhem dann nach der characteristic suchst findest du welches readings oder set das automatische anlegen einer characteristic anstößt.

in den alexa (debug) ausgaben beim start siehst du auch was alles automatisch angelegt wird.


prüfen kannst du vorher z.b. auch mit cmdalias. über das alexa device kannst du rausfinden ob ein kommando gerade von alexa kommt oder von woanders. ob das besser ist als dummy... kommt drauf an :)
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

MadMax-FHEM

Hallo André,

vielen Dank!

Dann weiß ich ja wo ich weiter suchen/schauen kann!

EDIT: SUPER! Ja, so komme ich weiter... Jetzt muss nur noch Amazon am Verstehen "arbeiten" ;) Mal geht es (eine zeitlang) gut, dann wieder (mal gar) nicht...

Zitat von: justme1968
über das alexa device kannst du rausfinden ob ein kommando gerade von alexa kommt oder von woanders

Äh, wo sehe ich das?
Hab grad geschaut aber ich kann kein Reading etc. entdecken wo ich was/sowas sehen könnte!?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

justme1968

das internal active des alexa device wird von 0 auf 1 geändert und nach dem kommando wieder zurück.

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

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

MadMax-FHEM

Zitat von: justme1968 am 26 Februar 2019, 14:24:49
das internal active des alexa device wird von 0 auf 1 geändert und nach dem kommando wieder zurück.

Hmmm, hab grad mal geschaut, hat sich nichts geändert...
Wird ein Internal überhaupt in der Weboberfläche (so schnell) angezeigt?

Und andere Frage: woher sollte ein Kommando sonst (noch) kommen? ;)

Aber das ist nur Nebensache...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

justme1968

das kannst du im fronten nicht sehen. nur wenn du im notify direkt auf das internal schaust.

ZitatUnd andere Frage: woher sollte ein Kommando sonst (noch) kommen? ;)

über klick im frontend, über ein at, über siri, über ... 1000 möglichkeiten ohne alexa :)
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

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

MadMax-FHEM

Zitat von: justme1968 am 26 Februar 2019, 15:32:08
das kannst du im fronten nicht sehen. nur wenn du im notify direkt auf das internal schaust.

ok.


Zitat von: justme1968 am 26 Februar 2019, 15:32:08
über klick im frontend, über ein at, über siri, über ... 1000 möglichkeiten ohne alexa :)

Haha, aktuell reicht mir schon der "Kampf" mit Alexa...
...da brauche ich nicht noch weitere Eingabemöglichkeiten ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

Hier mal für mich einen Link wo homebridgeMapping erklärt wird: https://forum.fhem.de/index.php/topic,48558.msg402024.html#msg402024

Vielleicht steige ich ja noch dahinter... ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)