[gelöst]Alexa-fhem mit Somfy Rolläden an Connexoon Box

Begonnen von Sedonion, 30 April 2019, 10:34:48

Vorheriges Thema - Nächstes Thema

Sedonion

Hallo Zusammen,

ich habe meine Somfy IO Rolläden erfolgreich über die Connexoon Box und dem Tahoma Plugin in FHEM eingebunden.
Was ich aber nicht schaffe, sie über Alexa-fhem mit Alexa steuerbar zu machen.
Erstmal das List eines Rolladens:
Internals:
   COMMANDS   dim:slider,0,1,100 cancel:noArg close:noArg delayedStopIdentify down:noArg getName:noArg identify:noArg my:noArg open:noArg refreshMemorized1Position:noArg setClosure setDeployment setMemorized1Position setName setPosition setSecuredPosition startIdentify:noArg stop:noArg stopIdentify:noArg up:noArg wink
   DEF        DEVICE io://xxxx-xxxx-xxxx/xxxxxxx
   FUUID      xxxxxxxxxxxxxxxxx
   IODev      Connexoon
   NAME       Arbeitszimmerrolladen
   NR         160
   NTFY_ORDER 50-tahoma_2895280
   STATE      dim0
   SUBTYPE    DEVICE
   TYPE       tahoma
   device     io://xxxx-xxxx-xxxx/xxxxxxx
   fid        289xxxx
   inClass    RollerShutter
   inControllable io:RollerShutterGenericIOComponent
   inLabel    Arbeitszimmer
   inPlaceOID b44a636a-9fc1-48e5-a795-dd0ab9e1fb2b
   inType     1
   READINGS:
     2019-04-30 07:16:50   ClosureState    0
     2019-04-30 03:08:11   NameState       Arbeitszimmer
     2019-04-30 07:16:50   OpenClosedState open
     2019-04-30 03:08:11   PriorityLockTimerState 0
     2019-04-30 09:49:06   RSSILevelState  20.0
     2019-04-30 03:08:11   StatusState     available
     2019-04-30 07:16:50   devicestate     open
     2019-04-30 07:16:50   state           dim0
Attributes:
   IODev      Connexoon
   alexaName  Arbeitszimmerrolladen
   alias      Arbeitszimmerrolladen
   genericDeviceType blind
   room       ioBroker,tahoma
   webCmd     dim


Durch genericDeviceType blind wird das Device in Alexa angezeigt, aber ohne Möglichkeit der Steuerung.
Soweit ich verstehe fehlt pcm oder position, was man wohl durch ein Mapping erreichen kann.

Ich verstehe leider nur nicht genau wie.

Kann mir da jemand bei helfen?

Danke und Gruß
Marco
fhem auf HP Microserver Gen8 mit Openmedivault
- 4 Milight RGB Bulbs an Milight Wifi Controller
- MAX Cube mit 2 Heizkörperthermostaten und 2 Fenstersensoren
- VU+ Solo4k Enigma2
- Fritzbox mit Callmonitor

Sedonion

Ich nochmal,

vielleicht ein paar Beispiele zu Mappings würden mir evtl schon helfen falls keiner die endgültige Lösung hat.

Danke.
fhem auf HP Microserver Gen8 mit Openmedivault
- 4 Milight RGB Bulbs an Milight Wifi Controller
- MAX Cube mit 2 Heizkörperthermostaten und 2 Fenstersensoren
- VU+ Solo4k Enigma2
- Fritzbox mit Callmonitor

gvzdus

Keine Ahnung, ob es eleganter geht, aber im Prinzip braucht Dein Device nur 3 Dinge, um Kommandos wie "0%" oder "100%" zu empfangen:

  • genericDeviceType blind
  • ein Attribut "alexaName"
  • ein Kommando "pct"

Ein Ansatz sollte sein, einen ReadingProxy zu definieren. Etwa so:

define rolli readingsProxy <DeinTasmotaDevice>:ClosureState
attr rolli alexaName Küche
attr rolli genericDeviceType blind
attr rolli setFn {($CMD eq "on")?"dim 100":($CMD eq "off"?"dim 0":"dim " . sprintf("%3d",$ARGS))}
attr rolli setList on off pct


Wenn ein Kommando wie
set rolli pct 50
danach was bringt, sollte auch Alexa nach Reload und Gerätesuche glücklich sein.

Sedonion

So, habs geschafft mit "einfachem" homebridgemaping:

TargetPosition=dim::ClosureState,minValue=0,maxValue=100,minStep=10,cmd=dim CurrentPosition=ClosureState,minValue=0,maxValue=100

fhem auf HP Microserver Gen8 mit Openmedivault
- 4 Milight RGB Bulbs an Milight Wifi Controller
- MAX Cube mit 2 Heizkörperthermostaten und 2 Fenstersensoren
- VU+ Solo4k Enigma2
- Fritzbox mit Callmonitor