Alexa Smart Home Skill V3 is now live!

Hurray! it works! You guys are the best. Thank you. I’m looking forward to digging into V3 soon.

FYI, regarding above. I also use the Amazon Echo Control binding on my two systems and have not had any errors.

1 Like

Yes, this was an issue in the 2.4 release, there was an REST call in the StateDescriptionProvider. But this is already fixed in the 2.5 release.

Thanks for confirming. So the recommended solution for the affected users is to either disable the binding when using 2.4 or update to the latest 2.5 milestone?

It works, you are the Best!!!

1 Like

Hi,

looks like I have to report a nother issue.
Since the skill update most of my lights are not working anymore. I have some lights with a TPLink-Plug they work still fine, but all my lights on my Siemens Logo are not available via alexa.
They work via the openHAB interface - I already updated to M2 but that did’t help.
I have done the search for new devices several time in the alexa app and with a echo device.

What i can see so far is the following metadata difference (from https://myopenhab.org/rest/items?metadata=alexa,channel,synonyms&recursive=true):

Working item:
{
“link”: “https://myopenhab.org/rest/items/TPLink_Whz_Stehlampe”,
“state”: “ON”,
“metadata”: {
“channel”: {
“value”: “tplinksmarthome:hs100:6F9012:switch”
}
},
“editable”: false,
“type”: “Switch”,
“name”: “TPLink_Whz_Stehlampe”,
“label”: “Stehlampe”,
“category”: “light”,
“tags”: [
“Lighting”
],
“groupNames”: [
“Erdgeschoss”,
“gLogoLightProxySwitch”
]
}

Not working:
{
“link”: “https://myopenhab.org/rest/items/Proxy_Logo_1_Q_10”,
“state”: “OFF”,
“editable”: false,
“type”: “Switch”,
“name”: “Proxy_Logo_1_Q_10”,
“label”: “Wohnzimmer - Gartenseite”,
“category”: “light”,
“tags”: [
“Lighting”
],
“groupNames”: [
“gErdgeschoss”,
“gLogoLightProxySwitch”
]
}

Any ideas?

@jeshab

My Alexa APP is telling me that “Openhab Smarthome Skill” was updated 3 days ago (to v3). I did not force a rediscover of my devices. Everything is controllable with the voice, but the “devices view” in Alexa APP is flapping. You also can switch the devices there, but many of the devices reporting then (although it was switched correctly) “there was a problem”. And some states (ON or OFF) are not updated correctly.
Should I rediscover devices? Or what else to do?

Are you initiating the commands vocally while having the Alexa App opened to monitor the states? If so, this is a known issue. The skill currently only provides state updates when Alexa requests them (polling).

There are plans to implement proactive reporting in the future which would allow state updates, along with item configuration updates, to be pushed directly from the OH server. Until that, the states in the Alexa App may not fully reflect the current OH state especially, if you currently have the app opened and you don’t force refresh.

Would you be able to provide with a distinct item name that experienced the problem you observed along with the time you issue the request and your country location? I will try to see if there are any errors in the skill logs.

@jeshab is it possible, that it is not working for my becaus i use Proxy-Items for my Logo-Lights? That is the only difference i can see between the two metadata entries.

Sweet! Does the new skill support using the OH devices as Routine triggers?

1 Like

I have now changed the item to the {alexa=“Switchable”} syntax.
Now i get
{
“link”: “https://myopenhab.org/rest/items/Proxy_Logo_1_Q_3”,
“state”: “OFF”,
"metadata": {
“alexa”: {
“value”: “Switchable”
}
},
“editable”: false,
“type”: “Switch”,
“name”: “Proxy_Logo_1_Q_3”,
“label”: “Herd”,
“category”: “light”,
“tags”: [],
“groupNames”: [
“gErdgeschoss”,
“gLogoLightProxySwitch”
]
},

But i still receive timeouts from alex for the proxy-items.

@jeshab

Germany, 21:18 (=19:18, UTC+2)

Switch Innr_Light1_Toggle		"Licht Esszimmer1 An/Aus"	<light>	(GF_Eating, Lights)	[ "Lighting" ]	{channel="hue:0210:xxxxxx:5:color"}
Dimmer Innr_Light1_Dimmer		"Licht Esszimmer1 Dimmer"			(GF_Eating)			[ "Lighting" ]	{channel="hue:0210:xxxxxx:5:color"}				
Color Innr_Light1_Color			"Licht Esszimmer1 Farbe"	<light>	(GF_Eating)			[ "Lighting" ]	{channel="hue:0210:xxxxxx:5:color"}

All the above items report “there was a problem” after switching OFF.

When you say “proxy-items”, do you mean you set these items with autoupdate=false by any chance?

The skill expects to get a state change after requesting a command. If there is no change or the state is not available (NULL or UNDEF), you would get an error response although the commands should have been processed.

at the bottom there is a button to delete all :wink:

Unfortunately, you can only use OH devices as routine actions for the moment. For the same reason I mentioned just above related to proactive reporting. Routine triggers requires states to be pushed to Alexa.

No, my items are like this

Switch Proxy_Logo_1_Q_2 “Gäste WC” (gErdgeschoss, gLogoLightProxySwitch) [ “Lighting” ]
Switch Proxy_Logo_1_Q_3 “Herd” (gErdgeschoss, gLogoLightProxySwitch) {alexa=“Switchable”}

and i have a rule

val Functions$Function4<Object,SwitchItem,SwitchItem,SwitchItem,Object> LogoSwitchLogic = [
Command, RuleProxySwitch, RuleReadLogo, RuleSwitch |
logInfo(“DebugOutput”, “Rule start with:” + RuleProxySwitch.name.toString + " " + RuleReadLogo.name.toString + " " + RuleSwitch.name.toString )
switch(Command)
{
case ON: {
logInfo(“DebugOutput”, “Rule case ON”)
if (RuleReadLogo.state != Command) { // only if state changed
logWarn(“DebugOutput”, “Rule case ON:switching”)
RuleSwitch.sendCommand(ON)
Thread::sleep(400)
RuleSwitch.sendCommand(OFF)
}
}
case OFF: {
logInfo(“DebugOutput”, “Rule case OFF”)
if (RuleReadLogo.state != Command) { // only if state changed
logWarn(“DebugOutput”, “Rule case OFF:switching”)
RuleSwitch.sendCommand(ON)
Thread::sleep(400)
RuleSwitch.sendCommand(OFF)
}
}
default: {
logInfo(“DebugOutput”, “Rule case default”)
Thread::sleep(350)
if (RuleReadLogo.state != RuleProxySwitch.state) { // if state changed really
logWarn(“DebugOutput”, “Rule case default:state changed externally”)
RuleProxySwitch.postUpdate(RuleReadLogo.state) // update the state without triggering the rule

 	}
} 

}
]

rule “Switch Light through Logo 1_Q_3” when System started or Item Logo_1_state_Q_3 changed or Item Proxy_Logo_1_Q_3 received command then LogoSwitchLogic.apply(receivedCommand, Proxy_Logo_1_Q_3, Logo_1_state_Q_3, Logo_1_state_VB_103_0) end

I didn’t see any error with the items you mentioned above. The skill is responding to each of the report state requests it received.

However, I can see errors for the Innr_Light1_Color_Temp item which seems to not have a defined state and is probably the reason for the error you saw.

Normally, any items you exposed to Alexa should have a proper state but there is a special implementation for color temperature-enabled lights such as hue. In order to do so, you will need to convert that color light using a group endpoint. Something along these lines:

Group gInnr_Light1 "Licht Esszimmer1" {alexa="Endpoint.Light"}
Color Innr_Light1_Color "Licht Esszimmer1 Farbe" <light> (GF_Eating, gInnr_Light1) [ "Lighting" ] {channel="hue:0210:xxxxxx:5:color"}
Color Innr_Light1_Temp "Licht Esszimmer1 ..." (GF_Eating, gInnr_Light1) [ "ColorTemperature" ] {channel="hue:0210:xxxxxx:5:color_temperature"}
1 Like

Based on the skill logs, the issue here is that your group gErdgeschoss is tagged and therefore considered as a group endpoint. In that setup only one light can be linked to that entity and all the other ones will be discarded. Here, it’s the Proxy_Logo_1_Q_12 item which was associated to it (probably because it’s the last light of that group).

My advice would be to remove that group tag and trigger a rediscovery.

Thank you, it’s working now again perfectly :slight_smile: :+1:

1 Like

No worries :slight_smile:

I forgot to add that if you want to control all the lights as a group, you can set them on the Alexa side. Or, if you want to achieve this on the OH side, you would need to give your group an item type. In that setup, the group would not be considered as a possible endpoint and all its members would be discoverable.

Group:Switch:OR(ON,OFF) gMyLights "My Lights" [ "Lighting" ]
1 Like

My skill is working again, but i came across some unexpected behavior in my alexa app:

When i open the a group all lights indicate a problem:

When i go to detail of a lamp i shortly get the same “problem” message:


But shortly after i get the correct state of the lamp

And if i go back i can see the correct state for this item in the group