Alexa Smart Home Skill V3 is now live!

I think you are right and that I’m just walking down a dark path to nowhere

There is no such thing using OH :smile: You can always use a proxy item and rules to setup an alternative solution but I do agree that it may not be as straight forward than the Alexa integration. Although, I might be a bit biased.

1 Like

OKAY :smile:

So this does work :slight_smile:

It’s not the most intuitive phrasing, but it’s working.

A massive thank you for your support and advice / persistence / tolerance

1 Like

Hi Guys,

after lots of readings and tests, i really dont know how to fix this and i hope someone will help me.

Using Openwebnet bindings i created a CEN+ scenario things a follow:

Thing 	bus_cenplus_scenario_control    iCenplus_Cancello   			"CEN+ Cancello"  				@	"CenPlus"		[ where="29", buttons="1" ]		

Than i created the relevant item

String   iCenplus_Cancello  "Cancello"     <switch>    {channel="openwebnet:bus_cenplus_scenario_control:mybridge:iCenplus_Cancello:button_1"} 

and this scenario is working perfectly using the PRESS_EXT command.

Now i would like Alexa to trigger this Scenario, therefore i added this Items:

String CEN_command "Cancello" {alexa="ModeController.mode" [supportedModes="OPEN=xxx,CLOSE=xxxx", actionMappings="Close=xxx,Open=xxxxx,autoupdate="false"]}

i used the xxx because i tried almost everithing but alexa always replay " i don’t know how to adjust this device to that setting"

Any tips??

Thanks in advance for the patience
Costa

Ha ha so you are dulicating your posts here… not good…

I posted the solution here:

I have seen some say that the a more natural phrasing works for them; maybe it depends on the language.

However, you can create a more natural phrase by creating a routine for your desired phrase on the Alexa app

2 Likes

That’s a good idea…

Thanks

I’m almost at my solution using dummy switch and rule and yes, i asked also here as you suggested in your last post… or this is what i understood.

Thanks for your solution but First i want to find my way, to learn, than i will have a look at your solution which will be the best! :wink:

1 Like

You don’t need a dummy switch or rule :wink:

I meant read the posts as I know the soultion is buried in here. Anyway I am not a moderator so don’t really care too much where you post :grinning: but its hard for others to follow when posting across threads.

For others… The OP wanted an Alexa voice command to trigger a scenario located on a BTicino/Legrand BUS based scenario controller. The items for MH202 scenario are string type. So, a solution was possible with just the item definition as mode controller is also string.

The solution I posted above is complete, with some debugging tips, and now another example of how to use voice command and mode controller.

Just implemented the Alexa Skill but i have difficulties understanding settings:
friendlyNames, actionMappings, stateMappings

I have external Roller shutters on 433MHz, that support commands UP, DOWN, STOP.
So i Implemented the support through the Rollershutter item type in my configuration as this has the highest WAF in sitemaps for the mobile app.

So I opted for the sample configuration for a shutter with mode interface capability i modified it slightly to also allow for the STOP command:

String Echo_PROXY_DS 	"Office window shutters"				(gEcho_PROXY_Shutters)			{ alexa="ModeController.mode" [category="EXTERIOR_BLIND", friendlyNames="@DeviceName.Shade", supportedModes="UP=@Value.Open,STOP=Stop,DOWN=@Value.Close", actionMappings="Close=DOWN,Open=UP,Lower=DOWN,Raise=UP", stateMappings="Closed=DOWN,Open=UP"] }

Here is what i’m strugling to understand:
in the example the friendly name is proposed as:
friendlyNames="@Setting.Opening"
why not use
friendlyNames="@DeviceName.Shade"
instead?

As i have 3 rollershutters in the kitchen, it doesn’t make sense to me to use friendlsNames tag for them at all. Am i correct to assume, that this would actually make those devices “indestinguishable” to alexa when using such friendly name?

I’d love to see room awareness (raise/lower shutters in the Kitchen group by simply asking alexa in the same Kitchen group to raise Shutters)but as i understand it’s not working yet?

Also
what is the purpose of
actionMappings, stateMappings How does this translate into alexa interaction, especiually stateMappings

And lastly:

I saw in the alexa API, that there is posibility of using the API for doorbell events:
Alexa.DoorbellEventSource interface describes an endpoint that is capable of raising doorbell events
https://developer.amazon.com/en-US/docs/alexa/device-apis/alexa-doorbelleventsource.html
Does the skill support that?

EDIT:
on the friendlyNames topic:
i created a dummy switch
Switch Light_dummy "Dummy Light" {alexa="PowerController.powerState" [category="SWITCH", friendlyNames="Water light, Countertop light"]}
The device shows as switch in app which is on and it is named Dummy Light.
My understanding of friendlyNames is, that it should allow the swich to be activated by any names i.e. Dummy light, Water light and Countertop Light. But it doesn’t
When saying “Alexa turn on water light”, Response is "Sorry, i didn’t find a device named water light. "
I also tried with “Alexa turn on water light switch”, but the response is "Sorry, i didn’t find a device named water light switch. "

These are part of the Building Blocks APIs concept.

The friendlyNames parameter can only be used with Building Blocks APIs interfaces. It is rather used to name a functionality than a device since the endpoint name should already have that information. In the case of a single endpoint definition, the item label should be the device name and the friendly name its functionality. Using the roller shutter example, the proper way to control it is to use the following utterance: Alexa, open office window shutters opening. However, in this case, you would be able to omit “opening” since there is only one functionality define on that given endpoint. It’s when using a group endpoint with multiple Building Blocks APIs interface that the friendlyNames parameter would be necessary to differentiate each functionality (e.g. opening and tilt)

As mentioned above, friendlyNames isn’t supported by PowerController. However, if you want to use a bunch of different aliases for a specific device, you can use toggleController instead for the example you provided, otherwise, you will only be able to interact with that device using the item label “Dummy Light”.

Thank you!

Like this?
Switch Light_dummy "Dummy Light" {alexa="ToggleController.toggleState" [category="SWITCH", friendlyNames="Water light, Countertop light"]}

Correct

Jeremy, is there an issue that could be monitored or a PR to help develop/test this functionality? TIA!

There is no specific issue related to that functionality as of yet. Basically, proactive reporting also known as asynchronous response support will require an architecture change involving a new binding to be developed for that purpose. You can monitor the issue below for the time being.

1 Like

Hi there,

today I also got my garage door running with the v3 api. So I’m now able to ask for the status of garage door. This is nice so far, but the answer is “garage door opening is off”. This is not really nice, and by the way I would like to have it in German. Can anybody give me a hint how to get this? I would like here something like “garage door is closed” instead.

Thx

Please provide as much details as you can related to your configuration, including the item definition, requested utterances, voice response received and what you expected instead.

The language preference is available in your Alexa app echo devices settings.

This is my item config

Switch garage_door_state "Garagentor" <garagedoor> (gStartPersist) {channel="mqtt:topic:embedded:garage:door", alexa="ToggleController.toggleState" [category="DOOR", friendlyNames="@Setting.Opening", actionMappings="Close=OFF,Open=ON", stateMappings="Closed=CLOSED,Open=OPEN"]}

What I say is: “Give me the status of the garage door”
What I get is: “Garage door opening is off/on”
What I would like to here instead is: “Garage door is open/closed”

Regarding the translation. I already set the language in the Alexa App to German. Normally Alexa talks German with me. English only in this current situation. So what it really says is: “Garagentor opening ist off/on”. So the “Garagentor” and “ist” is German, but the “opening” and “On/Off” is english

Based on my testing, it seems that the only way to get what you want in terms of response is to model a ModeController.mode as a GARAGE_DOOR category. Unfortunately, the Switch item type is currently not supported by this capability so you will need to use a proxy item. Configuring that way would enable the unlock by voice pin code feature as well.

items

Switch garage_door_state "Garagentor" <garagedoor> (gStartPersist) {channel="mqtt:topic:embedded:garage:door"}
String garage_door_alexa "Garagentor" {alexa="ModeController.mode" [category="GARAGE_DOOR", friendlyNames="@Setting.Opening", supportedModes="UP=@Value.Open,DOWN=@Value.Close", actionMappings="Close=DOWN,Open=UP", stateMappings="Closed=DOWN,Open=UP"]}

rules

rule "Garage Door Alexa Command"
when
  Item garage_door_alexa received command
then
  switch receivedCommand {
    case "UP": garage_door_state.sendCommand(ON)
    case "DOWN": garage_door_state.sendCommand(OFF)
  }
end

rule "Garage Door State Changes"
when
  Item garage_door_state changed
then
  switch garage_door_state.state.toString {
    case "ON": garage_door_alexa.postUpdate("UP")
    case "OFF": garage_door_alexa.postUpdate("DOWN")
  }
end

utterances

Alexa, open the garage door
Alexa, is the garage door?
Alexa, what’s the garage door status?

This experience is controlled by the Alexa side. Not much is done on the skill end. The building block APIs and semantic extensions features are fairly new. So I wouldn’t expect everything being translated perfectly.

1 Like

Short off-topic comment here: Due to Announcements being used for discussions / questions etc, I have restricted posting rights to maintainers only.

To allow all of you to have lively discussions on Amazon Alexa, I have created a new dedicated category at https://community.openhab.org/c/apps-services/amazon-alexa/66.

4 Likes