Alexa V3 skill - Blind Control Inverted Values

Hey All,

I am trying to implement the integration between Openahb and Alexa V3 Metadata. All is working normally and smoothly except the RollerShutter item where the Open and Close commands send inversed values to Openhab.

In another way when I say Alexa “Open Kitchen Blind” Openhab receives the 100 value which shows that the Blind is Closed on the app. And when we send a command “Close Kitchen Blind” Openhab receives the 0 Value which shows the Blind is Open.

Here is the Item that I use for this purpose.

Rollershutter Kitchen_Blind “Kitchen Blind” (gBlinds) {alexa=“Blind”}

Please advise how we can change the default values that Alexa Skill send to Openhab or any other solution to solve this issue.

Thank you,

See https://www.openhab.org/docs/ecosystem/google-assistant/#google-assistant-action, pay special attention to the [ inverted=true ] on the Rollershutter examples.

Such option is not supported with the Alexa skill as of yet but there are plan to do so.

You will have to invert the semantic extension settings of the actual metadata configuration associated with blind metadata label. It’s the not the cleanest but this is the only solution currently.

Rollershutter Blind "Blind" {alexa="RangeController.rangeValue" [category="INTERIOR_BLIND", friendlyNames="@Setting.Opening", supportedRange="0:100:10", unitOfMeasure="Percent", actionMappings="Close=100,Open=0,Lower=(+10),Raise=(-10)", stateMappings="Closed=100,Open=0:99"]}
1 Like

Thank you @jeshab, tried it and works perfectly.

Regards,

I just tried that but for me it still does it wrong. No matter how I change it it is always inverted.
I should add I tried this in german.

Thanks @jeshab

This just worked for me :slight_smile:

1 Like

Hello to all,

I have a similar behaviour than salexes. With the invertet settings of the post, my shutters go only into the open direction (to 0%). It doesn´t matter what I use.
When I use “Lower” (“niedriger”) the shutter goes into 0% direction. -> Wrong
When I use “Raise” (“erhöhen”) the shutter goes into 0% directtion. -> Correct

When I use “close” (“zu”) the shutter goes to 100%. -> Correct
When I use “open” (“auf”) the shutter goes to 0% -> Correct

For your information this is a part of my items, is the Rollershutter the problem and I am located in Germany too.

Rollershutter    KNXDeviceKnxRollladenGaestezimmer                  "Rollladen Gästezimmer [%d %%]"                               <rollershutter>     (GF_Shutter, GF_GuestRoom, gShutter)                                                          {channel="knx:device:bridge:KnxRolladenEg:KnxRollladenGaestezimmer", alexa="RangeController.rangeValue" [category="INTERIOR_BLIND", friendlyNames="@Setting.Opening", supportedRange="0:100:10", unitOfMeasure="Percent", actionMappings="Close=100,Open=0,Lower=(+10),Raise=(-10)", stateMappings="Closed=100,Open=0:99"]}

It seems that we are currently two guys in Germany that have this behaviour, maybe a translation error?

Regards Köchi

Based on your item definition, the lower action should actually be increasing your item state by 10% and raise action should be decreasing by 10%. So most likely, it is the way you are formulating your request that is preventing the proper action from being trigger.

According to the utterance examples listed for this interface, it appears that you should be using the term “runter” for lower and “hoch” for raise.

You are right. When I use the specified german sentence it works as expected.

image

Thanks for your help and for the link.

I have used now the same syntax for a Group

Is this allowed because it does not start with {alexa=“Endpoint.Other” … ?

Group:Rollershutter:OR(UP, DOWN)    GF_Kitchen_Shutter         "Alle Rollläden in der Küche [(%d)]"                           <rollershutter>      (Home, GF_Kitchen)          {alexa="RangeController.rangeValue" [category="EXTERIOR_BLIND", friendlyNames="@Setting.Opening", supportedRange="0:100:25", unitOfMeasure="Percent", actionMappings="Close=100,Open=0,Lower=(+25),Raise=(-25)", stateMappings="Closed=100,Open=0:99"]}

In the documentation I do not find some details:

The group triggered with the utterances from above works only the “raise” goes into the wrong direction.

Is the a specific utterances for Groups?

Yes, groups with a defined item type are considered as a standard item and in your case as a Rollershutter. On a side note, related to your item definition, I don’t think your group state aggregation function is valid OR(UP, DOWN) since UP and DOWN aren’t valid states for that item type. There are few threads on this forum if you search for “rollershutter group” that give more details on how to set these up properly.

There are no difference as your group item is considered as a single endpoint from the skill perspective. It comes down to how you modeled your item and the utterances you are using. As far as I can see, your item definition looks fine. You can check your event logs to see which command the skill is sending to your server and confirm what was understood on the Alexa side by looking at your voice history.