Official Alexa Smart Home Skill for openHAB 2

Hello, Amazon Alexa has been in beta testing in Italy in the last few months.
Will the Amazon Alexa Skill for Openhab2 be available on Amazon Italy any time soon?

Thanks

I just want to put this here because the info was very difficult for me to find and not covered clearly in the readme or anywhere else from my searches. If setting up your own to talk to a private myopenhab instance via oAuth, you need to set the Authorization URI to https://youropenhabdomain.com/oauth2/authorize and the Access Token URI to https://youropenhabdomain.com/oauth2/token . In addition, you need to set the scope to something meaningful (like “alexa”). Then on your private myopenhab instance you need to do the following, substituting the name to match the scope you put in on your skill and the clientId and clientSecret you used.

mongo
use openhab;
db.oauth2scopes.insert( { name : "alexa", description: "Access to myopenHAB specific API for Actions on Alexa", } )
db.oauth2clients.insert({ clientId: "xxxxx", clientSecret: "xxxxxxxxx" })
4 Likes

Any idea about this?

hi zolakk, is this all that is required to connect Alexa to a private openhab cloud instance?

If you follow the rest of the readme on the github page about setting it up, it should be yes. That’s all I needed anyway to fill in the gaps where the readme was vague. This is assuming you followed the guide on setting up your myopenhab instance with a letsencrypt cert and your myopenhab is reachable on port 443 by some kind of DNS name

1 Like

Hi All

This is a great skill.

Does anyone know if I can switch all lights off by saying ‘Alexa, Turn off All Lights’ - do I need a proxy item or a group item that my lights are all in?

Further, is it possible with this to play spotify on a particular device thats defined as an item in openHab? For example my Yamaha AVR? Right now it plays spotify only on the Echo

Thanks

Hi

I’m giving up on using a motion sensor/Lux sensor to control my living room lights. I would like to use my Amazon echo but after I link the skill to my myopenhab account it fails to find any devices.

This is what I have in my .items file

// Lights
// MiLights
Dimmer  Light_All_LR    "Living room  Lights"   [ "Lighting" ]  { channel="milight:rgbLed:ACCF233F8E3A:0:ledbrightness" } // Switch for all bulbs
Color   Light_Lamp_LR   "Lamp"          [ "Lighting" ]  { channel="milight:rgbLed:ACCF233F8E3A:1:ledcolor" } // Dimmer changing brightness for bulb in zone 1
Color   Light_Wall_LR   "Wall Lights"   (gLights_LR)    [ "Lighting" ] {channel="milight:rgbLed:ACCF233F8E3A:2:ledcolor" } // Dimmer changing brightness for bulb in zone 2
Color   Light_Spare_LR  "Spare" (gLights_LR)    { channel="milight:rgbLed:ACCF233F8E3A:3:ledcolor" } // Dimmer changing brightness for bulb in zone 3
Color   Light_TV_LR     "Main Lights"   (gLights_LR)    [ "Lighting" ]  { channel="milight:rgbLed:ACCF233F8E3A:4:ledcolor" } //Dimmer changing brightness for bulb in zone 4

Number Light_scene              "Scenes"
Color  Light_scene_ColorSelect "Scene Selector"   <colorwheel>  { channel="milight:rgbLed:ACCF233F8E3A:2:ledcolor" }

// Philips Hue
Color   Light_Hue_Iris_LR       "Hue Iris"      (gLights_LR)    [ "Lighting" ]  { channel="hue:0200:00178812bed2:6:color" } // Living room Iris Lamp
Dimmer  Light_Hue_White_H       "Hall Light"    (gLights_HandL) [ "Lighting" ]  { channel="hue:0100:00178812bed2:4:brightness" } // Hall Light
Dimmer  Light_Hue_White_L       "Landing Light" (gLights_HandL) [ "Lighting" ]  { channel="hue:0100:00178812bed2:5:brightness" } // Landing Light

Any idea?

@Scotsman, does http://your-oh-ip:8080/rest/items return back a valid list of items?

Hi, I am translating our app now, it would be great to get some help from native speakers with this. Our translation project can be found at openhab-alexa dashboard in Crowdin if you can help out.

1 Like

Hi Dan,

Yes I get among others;

{"link":"http://openhabianpi:8080/rest/items/Light_All_LR","state":"0","stateDescription":{"minimum":0,"maximum":100,"step":1,"pattern":"%d","readOnly":false,"options":[]},"editable":false,"type":"Dimmer","name":"Light_All_LR","label":"Living room Lights","tags":["Lighting"],"groupNames":[]},{"link":"http://openhabianpi:8080/rest/items/Light_Lamp_LR","state":"66.352943,100.000000,0","editable":false,"type":"Color","name":"Light_Lamp_LR","label":"Lamp","tags":["Lighting"],"groupNames":[]},{"link":"http://openhabianpi:8080/rest/items/Light_Wall_LR","state":"180,100,100","editable":false,"type":"Color","name":"Light_Wall_LR","label":"Wall Lights","tags":["Lighting"],"groupNames":["gLights_LR"]},{"link":"http://openhabianpi:8080/rest/items/Light_Spare_LR","state":"180,100,100","editable":false,"type":"Color","name":"Light_Spare_LR","label":"Spare","tags":[],"groupNames":["gLights_LR"]},{"link":"http://openhabianpi:8080/rest/items/Light_TV_LR","state":"180,100,100","editable":false,"type":"Color","name":"Light_TV_LR","label":"Main Lights","tags":["Lighting"],"groupNames":["gLights_LR"]},{"link":"http://openhabianpi:8080/rest/items/Light_scene","state":"NULL","editable":false,"type":"Number","name":"Light_scene","label":"Scenes","tags":[],"groupNames":[]},{"link":"http://openhabianpi:8080/rest/items/Light_scene_ColorSelect","state":"180,100,91","editable":false,"type":"Color","name":"Light_scene_ColorSelect","label":"Scene Selector","category":"colorwheel","tags":[],"groupNames":[]},{"link":"http://openhabianpi:8080/rest/items/Light_Hue_Iris_LR","state":"1,100,100","editable":false,"type":"Color","name":"Light_Hue_Iris_LR","label":"Hue Iris","tags":["Lighting"],"groupNames":["gLights_LR"]}

I have noticed I have trouble with myopenhab.org. In a browser I log in and it tells me I’m using openhab2 and to click the link. I then get a 504 Gateway timed out

You could use a proxy item, but I think a better approach may be to have a Group item with that label that all your lights are members of.

I’m not sure I completely understand this, but I going to say no right now. The v3 skill will have the ability to control AV equipment, but if you are referring to the Alexa native Spotify integration, then no thats not possible.

1 Like

Workaround

for me it works.

@michi Do you have an idea what that could be?

here is My echo.items

// Amazon Echo
//-----------------------------------------------------------------------------------------------------------------------------------------------------
//Gruppen
//-----------------------------------------------------------------------------------------------------------------------------------------------------
Group gEchoDotKG			"Echo Dot Keller"			<echodot>	(gKeller)
Group gEchoDotWZ			"Echo Dot Wohnzimmer"		<echodot>	(gWohnzimmer)
Group gEchoSpotBad			"Echo Spot Bad"				<echodot>	(gBadOG)
Group gEchoKinder			"Echo Kinderzimmer"			<echodot>	(gKinderzimmer)
Group gEchoDotSchlaf		"Echo Dot Schlafzimmer"		<echodot>	(gSchlafzimmer)
Group gEchoDotSport			"Echo Dot Sportzimmer"		<echodot>	(gSportzimmer)
Group gEchoStudio			"Echo Studio"				<echodot>	(gStudio)


//----------------sonstiges zur Anzeige-------------------- 
Group:Player:OR(PLAY, PAUSE) 			gEchoPlayer		"Echo Status [(%d)]"			<echodot> 

//-----------------------------------------------------------------------------------------------------------------------------------------------------

//-----------------------------------------------------------------------------------------------------------------------------------------------------
//Items
//itemtyp itemname "bezeichnung" <iconname> (gruppe1, ... gruppeN) ["sprachsteuerung"]{binding}
//-----------------------------------------------------------------------------------------------------------------------------------------------------

//--> Auswahl Echo
Number echoSelectedPlayer							"Auswahl Echo"							<echodot>

//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
// Echos
//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

//--> Studio
Player EchoStudio_Player               				"Player"                            	<control>					(gEchoStudio,gEchoPlayer) 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:player"}
Dimmer EchoStudio_Volume               				"Volume [%.0f %%]" 						<soundvolume>    			(gEchoStudio) 					{channel="amazonechocontrol:echo:IDXXXXX:ID1:volume"}
Switch EchoStudio_Shuffle              				"Shuffle"                           								(gEchoStudio) 					{channel="amazonechocontrol:echo:IDXXXXX:ID1:shuffle"}
String EchoStudio_ImageUrl             				"Image URL"                         								(gEchoStudio) 					{channel="amazonechocontrol:echo:IDXXXXX:ID1:imageUrl"}
String EchoStudio_Title                				"Title"                             								(gEchoStudio) 					{channel="amazonechocontrol:echo:IDXXXXX:ID1:title"}
String EchoStudio_Subtitle1            				"Subtitle 1"                        								(gEchoStudio) 					{channel="amazonechocontrol:echo:IDXXXXX:ID1:subtitle1"}
String EchoStudio_Subtitle2            				"Subtitle 2"                        								(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:subtitle2"}
String EchoStudio_ProviderDisplayName  				"Anbieter Name"                          							(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:providerDisplayName"}
String EchoStudio_MusicProvider 					"Musikanbieter"                          							(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:musicProviderId"}
String EchoStudio_playMusicVoiceCommand				"Musik Sprachbefehl"                          						(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:playMusicVoiceCommand"}
String EchoStudio_startCommand  					"Start"                          									(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:startCommand"}
String EchoStudio_RadioStationId       				"TuneIn Radio Station Id"           								(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:radioStationId"}
Switch EchoStudio_Radio                				"TuneIn Radio"                      								(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:radio"}
String EchoStudio_AmazonMusicTrackId    			"Amazon Music Track Id"            									(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:amazonMusicTrackId"}
String EchoStudio_AmazonMusicPlayListId 			"Amazon Music Playlist Id (Write Only)"  							(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:amazonMusicPlayListId"}
Switch EchoStudio_AmazonMusic           			"Amazon Music"                     									(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:amazonMusic"}
String EchoStudio_Remind                			"Remind"                           									(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:remind"}
String EchoStudio_TTS               				"Sprich"                           									(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:textToSpeech"}
String EchoStudio_PlayAlarmSound         			"Play Alarm Sound"                           						(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:playAlarmSound"}
String EchoStudio_startRoutine         				"Starte eine Routine"                           					(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:startRoutine"}
String EchoStudio_BluetoothId          				"Bluetooth Mac Address" 				<bluetooth> 				(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:bluetoothMAC"}
Switch EchoStudio_Bluetooth            				"Bluetooth"        						<bluetooth>      			(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:bluetooth"}
String EchoStudio_BluetoothDeviceName  				"Bluetooth Device" 						<bluetooth>      			(gEchoStudio)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID1:bluetoothDeviceName"}

//--> Kinderzimmer
Player EchoKinder_Player               				"Player"                            	<control>					(gEchoKinder,gEchoPlayer) 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:player"}
Dimmer EchoKinder_Volume               				"Volume [%.0f %%]" 						<soundvolume>    			(gEchoKinder) 					{channel="amazonechocontrol:echo:IDXXXXX:ID2:volume"}
Switch EchoKinder_Shuffle              				"Shuffle"                           								(gEchoKinder) 					{channel="amazonechocontrol:echo:IDXXXXX:ID2:shuffle"}
String EchoKinder_ImageUrl             				"Image URL"                         								(gEchoKinder) 					{channel="amazonechocontrol:echo:IDXXXXX:ID2:imageUrl"}
String EchoKinder_Title                				"Title"                             								(gEchoKinder) 					{channel="amazonechocontrol:echo:IDXXXXX:ID2:title"}
String EchoKinder_Subtitle1            				"Subtitle 1"                        								(gEchoKinder) 					{channel="amazonechocontrol:echo:IDXXXXX:ID2:subtitle1"}
String EchoKinder_Subtitle2            				"Subtitle 2"                        								(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:subtitle2"}
String EchoKinder_ProviderDisplayName  				"Anbieter Name"                          							(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:providerDisplayName"}
String EchoKinder_MusicProvider 					"Musikanbieter"                          							(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:musicProviderId"}
String EchoKinder_playMusicVoiceCommand				"Musik Sprachbefehl"                          						(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:playMusicVoiceCommand"}
String EchoKinder_startCommand  					"Start"                          									(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:startCommand"}
String EchoKinder_RadioStationId       				"TuneIn Radio Station Id"           								(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:radioStationId"}
Switch EchoKinder_Radio                				"TuneIn Radio"                      								(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:radio"}
String EchoKinder_AmazonMusicTrackId    			"Amazon Music Track Id"            									(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:amazonMusicTrackId"}
String EchoKinder_AmazonMusicPlayListId 			"Amazon Music Playlist Id (Write Only)"  							(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:amazonMusicPlayListId"}
Switch EchoKinder_AmazonMusic           			"Amazon Music"                     									(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:amazonMusic"}
String EchoKinder_Remind                			"Remind"                           									(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:remind"}
String EchoKinder_TTS               				"Sprich"                           									(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:textToSpeech"}
String EchoKinder_PlayAlarmSound         			"Play Alarm Sound"                           						(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:playAlarmSound"}
String EchoKinder_startRoutine         				"Starte eine Routine"                           					(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:startRoutine"}
String EchoKinder_BluetoothId          				"Bluetooth Mac Address" 				<bluetooth> 				(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:bluetoothMAC"}
Switch EchoKinder_Bluetooth            				"Bluetooth"        						<bluetooth>      			(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:bluetooth"}
String EchoKinder_BluetoothDeviceName  				"Bluetooth Device" 						<bluetooth>      			(gEchoKinder)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID2:bluetoothDeviceName"}

//--> Schlafzimmer
Player EchoDotSchlaf_Player               			"Player"                            	<control>					(gEchoDotSchlaf,gEchoPlayer) 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:player"}
Dimmer EchoDotSchlaf_Volume               			"Volume [%.0f %%]" 						<soundvolume>    			(gEchoDotSchlaf) 				{channel="amazonechocontrol:echo:IDXXXXX:ID3:volume"}
Switch EchoDotSchlaf_Shuffle              			"Shuffle"                           								(gEchoDotSchlaf) 				{channel="amazonechocontrol:echo:IDXXXXX:ID3:shuffle"}
String EchoDotSchlaf_ImageUrl             			"Image URL"                         								(gEchoDotSchlaf) 				{channel="amazonechocontrol:echo:IDXXXXX:ID3:imageUrl"}
String EchoDotSchlaf_Title                			"Title"                             								(gEchoDotSchlaf) 				{channel="amazonechocontrol:echo:IDXXXXX:ID3:title"}
String EchoDotSchlaf_Subtitle1            			"Subtitle 1"                        								(gEchoDotSchlaf) 				{channel="amazonechocontrol:echo:IDXXXXX:ID3:subtitle1"}
String EchoDotSchlaf_Subtitle2            			"Subtitle 2"                        								(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:subtitle2"}
String EchoDotSchlaf_ProviderDisplayName  			"Anbieter Name"                          							(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:providerDisplayName"}
String EchoDotSchlaf_MusicProvider 					"Musikanbieter"                          							(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:musicProviderId"}
String EchoDotSchlaf_playMusicVoiceCommand			"Musik Sprachbefehl"                          						(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:playMusicVoiceCommand"}
String EchoDotSchlaf_startCommand  					"Start"                          									(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:startCommand"}
String EchoDotSchlaf_RadioStationId       			"TuneIn Radio Station Id"           								(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:radioStationId"}
Switch EchoDotSchlaf_Radio                			"TuneIn Radio"                      								(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:radio"}
String EchoDotSchlaf_AmazonMusicTrackId    			"Amazon Music Track Id"            									(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:amazonMusicTrackId"}
String EchoDotSchlaf_AmazonMusicPlayListId 			"Amazon Music Playlist Id (Write Only)"  							(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:amazonMusicPlayListId"}
Switch EchoDotSchlaf_AmazonMusic           			"Amazon Music"                     									(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:amazonMusic"}
String EchoDotSchlaf_Remind                			"Remind"                           									(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:remind"}
String EchoDotSchlaf_TTS               				"Sprich"                           									(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:textToSpeech"}
String EchoDotSchlaf_PlayAlarmSound         		"Play Alarm Sound"                           						(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:playAlarmSound"}
String EchoDotSchlaf_startRoutine         			"Starte eine Routine"                           					(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:startRoutine"}
String EchoDotSchlaf_BluetoothId          			"Bluetooth Mac Address" 				<bluetooth> 				(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:bluetoothMAC"}
Switch EchoDotSchlaf_Bluetooth            			"Bluetooth"        						<bluetooth>      			(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:bluetooth"}
String EchoDotSchlaf_BluetoothDeviceName  			"Bluetooth Device" 						<bluetooth>      			(gEchoDotSchlaf)			 	{channel="amazonechocontrol:echo:IDXXXXX:ID3:bluetoothDeviceName"}

//--> Sportzimmer
Player EchoDotSport_Player               			"Player"                            	<control>					(gEchoDotSport,gEchoPlayer) 	{channel="amazonechocontrol:echo:IDXXXXX:ID4:player"}
Dimmer EchoDotSport_Volume               			"Volume [%.0f %%]" 						<soundvolume>    			(gEchoDotSport) 				{channel="amazonechocontrol:echo:IDXXXXX:ID4:volume"}
Switch EchoDotSport_Shuffle              			"Shuffle"                           								(gEchoDotSport) 				{channel="amazonechocontrol:echo:IDXXXXX:ID4:shuffle"}
String EchoDotSport_ImageUrl             			"Image URL"                         								(gEchoDotSport) 				{channel="amazonechocontrol:echo:IDXXXXX:ID4:imageUrl"}
String EchoDotSport_Title                			"Title"                             								(gEchoDotSport) 				{channel="amazonechocontrol:echo:IDXXXXX:ID4:title"}
String EchoDotSport_Subtitle1            			"Subtitle 1"                        								(gEchoDotSport) 				{channel="amazonechocontrol:echo:IDXXXXX:ID4:subtitle1"}
String EchoDotSport_Subtitle2            			"Subtitle 2"                        								(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:subtitle2"}
String EchoDotSport_ProviderDisplayName  			"Anbieter Name"                          							(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:providerDisplayName"}
String EchoDotSport_MusicProvider 					"Musikanbieter"                          							(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:musicProviderId"}
String EchoDotSport_playMusicVoiceCommand			"Musik Sprachbefehl"                          						(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:playMusicVoiceCommand"}
String EchoDotSport_startCommand  					"Start"                          									(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:startCommand"}
String EchoDotSport_RadioStationId       			"TuneIn Radio Station Id"           								(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:radioStationId"}
Switch EchoDotSport_Radio                			"TuneIn Radio"                      								(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:radio"}
String EchoDotSport_AmazonMusicTrackId    			"Amazon Music Track Id"            									(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:amazonMusicTrackId"}
String EchoDotSport_AmazonMusicPlayListId 			"Amazon Music Playlist Id (Write Only)"  							(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:amazonMusicPlayListId"}
Switch EchoDotSport_AmazonMusic           			"Amazon Music"                     									(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:amazonMusic"}
String EchoDotSport_Remind                			"Remind"                           									(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:remind"}
String EchoDotSport_TTS               				"Sprich"                           									(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:textToSpeech"}
String EchoDotSport_PlayAlarmSound         			"Play Alarm Sound"                           						(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:playAlarmSound"}
String EchoDotSport_startRoutine         			"Starte eine Routine"                           					(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:startRoutine"}
String EchoDotSport_BluetoothId          			"Bluetooth Mac Address" 				<bluetooth> 				(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:bluetoothMAC"}
Switch EchoDotSport_Bluetooth            			"Bluetooth"        						<bluetooth>      			(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:bluetooth"}
String EchoDotSport_BluetoothDeviceName  			"Bluetooth Device" 						<bluetooth>      			(gEchoDotSport)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID4:bluetoothDeviceName"}

//--> Bad
Player EchoSpotBad_Player               			"Player"                            	<control>					(gEchoSpotBad,gEchoPlayer) 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:player"}
Dimmer EchoSpotBad_Volume               			"Volume [%.0f %%]" 						<soundvolume>    			(gEchoSpotBad) 					{channel="amazonechocontrol:echospot:IDXXXXX:ID5:volume"}
Switch EchoSpotBad_Shuffle              			"Shuffle"                           								(gEchoSpotBad) 					{channel="amazonechocontrol:echospot:IDXXXXX:ID5:shuffle"}
String EchoSpotBad_ImageUrl             			"Image URL"                         								(gEchoSpotBad) 					{channel="amazonechocontrol:echospot:IDXXXXX:ID5:imageUrl"}
String EchoSpotBad_Title                			"Title"                             								(gEchoSpotBad) 					{channel="amazonechocontrol:echospot:IDXXXXX:ID5:title"}
String EchoSpotBad_Subtitle1            			"Subtitle 1"                        								(gEchoSpotBad) 					{channel="amazonechocontrol:echospot:IDXXXXX:ID5:subtitle1"}
String EchoSpotBad_Subtitle2            			"Subtitle 2"                        								(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:subtitle2"}
String EchoSpotBad_ProviderDisplayName  			"Anbieter Name"                          							(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:providerDisplayName"}
String EchoSpotBad_MusicProvider 					"Musikanbieter"                          							(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:musicProviderId"}
String EchoSpotBad_playMusicVoiceCommand			"Musik Sprachbefehl"                          						(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:playMusicVoiceCommand"}
String EchoSpotBad_startCommand  					"Start"                          									(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:startCommand"}
String EchoSpotBad_RadioStationId       			"TuneIn Radio Station Id"           								(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:radioStationId"}
Switch EchoSpotBad_Radio                			"TuneIn Radio"                      								(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:radio"}
String EchoSpotBad_AmazonMusicTrackId    			"Amazon Music Track Id"            									(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:amazonMusicTrackId"}
String EchoSpotBad_AmazonMusicPlayListId 			"Amazon Music Playlist Id (Write Only)"  							(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:amazonMusicPlayListId"}
Switch EchoSpotBad_AmazonMusic           			"Amazon Music"                     									(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:amazonMusic"}
String EchoSpotBad_Remind                			"Remind"                           									(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:remind"}
String EchoSpotBad_TTS               				"Sprich"                           									(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:textToSpeech"}
String EchoSpotBad_PlayAlarmSound         			"Play Alarm Sound"                           						(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:playAlarmSound"}
String EchoSpotBad_startRoutine         			"Starte eine Routine"                           					(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:startRoutine"}
String EchoSpotBad_BluetoothId          			"Bluetooth Mac Address" 				<bluetooth> 				(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:bluetoothMAC"}
Switch EchoSpotBad_Bluetooth            			"Bluetooth"        						<bluetooth>      			(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:bluetooth"}
String EchoSpotBad_BluetoothDeviceName  			"Bluetooth Device" 						<bluetooth>      			(gEchoSpotBad)			 		{channel="amazonechocontrol:echospot:IDXXXXX:ID5:bluetoothDeviceName"}

//--> Wohnzimmer
Player EchoDotWZ_Player               				"Player"                            	<control>					(gEchoDotWZ,gEchoPlayer) 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:player"}
Dimmer EchoDotWZ_Volume               				"Volume [%.0f %%]" 						<soundvolume>    			(gEchoDotWZ) 					{channel="amazonechocontrol:echo:IDXXXXX:ID6:volume"}
Switch EchoDotWZ_Shuffle              				"Shuffle"                           								(gEchoDotWZ) 					{channel="amazonechocontrol:echo:IDXXXXX:ID6:shuffle"}
String EchoDotWZ_ImageUrl             				"Image URL"                         								(gEchoDotWZ) 					{channel="amazonechocontrol:echo:IDXXXXX:ID6:imageUrl"}
String EchoDotWZ_Title                				"Title"                             								(gEchoDotWZ) 					{channel="amazonechocontrol:echo:IDXXXXX:ID6:title"}
String EchoDotWZ_Subtitle1            				"Subtitle 1"                        								(gEchoDotWZ) 					{channel="amazonechocontrol:echo:IDXXXXX:ID6:subtitle1"}
String EchoDotWZ_Subtitle2            				"Subtitle 2"                        								(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:subtitle2"}
String EchoDotWZ_ProviderDisplayName  				"Anbieter Name"                          							(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:providerDisplayName"}
String EchoDotWZ_MusicProvider 						"Musikanbieter"                          							(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:musicProviderId"}
String EchoDotWZ_playMusicVoiceCommand				"Musik Sprachbefehl"                          						(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:playMusicVoiceCommand"}
String EchoDotWZ_startCommand  						"Start"                          									(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:startCommand"}
String EchoDotWZ_RadioStationId       				"TuneIn Radio Station Id"           								(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:radioStationId"}
Switch EchoDotWZ_Radio                				"TuneIn Radio"                      								(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:radio"}
String EchoDotWZ_AmazonMusicTrackId    				"Amazon Music Track Id"            									(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:amazonMusicTrackId"}
String EchoDotWZ_AmazonMusicPlayListId 				"Amazon Music Playlist Id (Write Only)"  							(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:amazonMusicPlayListId"}
Switch EchoDotWZ_AmazonMusic           				"Amazon Music"                     									(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:amazonMusic"}
String EchoDotWZ_Remind                				"Remind"                           									(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:remind"}
String EchoDotWZ_TTS               					"Sprich"                           									(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:textToSpeech"}
String EchoDotWZ_PlayAlarmSound         			"Play Alarm Sound"                           						(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:playAlarmSound"}
String EchoDotWZ_startRoutine         				"Starte eine Routine"                           					(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:startRoutine"}
String EchoDotWZ_BluetoothId          				"Bluetooth Mac Address" 				<bluetooth> 				(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:bluetoothMAC"}
Switch EchoDotWZ_Bluetooth            				"Bluetooth"        						<bluetooth>      			(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:bluetooth"}
String EchoDotWZ_BluetoothDeviceName  				"Bluetooth Device" 						<bluetooth>      			(gEchoDotWZ)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID6:bluetoothDeviceName"}

//--> Keller
Player EchoDotKG_Player               				"Player"                            	<control>					(gEchoDotKG,gEchoPlayer) 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:player"}
Dimmer EchoDotKG_Volume               				"Volume [%.0f %%]" 						<soundvolume>    			(gEchoDotKG) 					{channel="amazonechocontrol:echo:IDXXXXX:ID7:volume"}
Switch EchoDotKG_Shuffle              				"Shuffle"                           								(gEchoDotKG) 					{channel="amazonechocontrol:echo:IDXXXXX:ID7:shuffle"}
String EchoDotKG_ImageUrl             				"Image URL"                         								(gEchoDotKG) 					{channel="amazonechocontrol:echo:IDXXXXX:ID7:imageUrl"}
String EchoDotKG_Title                				"Title"                             								(gEchoDotKG) 					{channel="amazonechocontrol:echo:IDXXXXX:ID7:title"}
String EchoDotKG_Subtitle1            				"Subtitle 1"                        								(gEchoDotKG) 					{channel="amazonechocontrol:echo:IDXXXXX:ID7:subtitle1"}
String EchoDotKG_Subtitle2            				"Subtitle 2"                        								(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:subtitle2"}
String EchoDotKG_ProviderDisplayName  				"Anbieter Name"                          							(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:providerDisplayName"}
String EchoDotKG_MusicProvider 						"Musikanbieter"                          							(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:musicProviderId"}
String EchoDotKG_playMusicVoiceCommand				"Musik Sprachbefehl"                          						(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:playMusicVoiceCommand"}
String EchoDotKG_startCommand  						"Start"                          									(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:startCommand"}
String EchoDotKG_RadioStationId       				"TuneIn Radio Station Id"           								(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:radioStationId"}
Switch EchoDotKG_Radio                				"TuneIn Radio"                      								(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:radio"}
String EchoDotKG_AmazonMusicTrackId    				"Amazon Music Track Id"            									(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:amazonMusicTrackId"}
String EchoDotKG_AmazonMusicPlayListId 				"Amazon Music Playlist Id (Write Only)"  							(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:amazonMusicPlayListId"}
Switch EchoDotKG_AmazonMusic           				"Amazon Music"                     									(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:amazonMusic"}
String EchoDotKG_Remind                				"Remind"                           									(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:remind"}
String EchoDotKG_TTS               					"Sprich"                           									(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:textToSpeech"}
String EchoDotKG_PlayAlarmSound         			"Play Alarm Sound"                           						(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:playAlarmSound"}
String EchoDotKG_startRoutine         				"Starte eine Routine"                           					(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:startRoutine"}
String EchoDotKG_BluetoothId          				"Bluetooth Mac Address" 				<bluetooth> 				(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:bluetoothMAC"}
Switch EchoDotKG_Bluetooth            				"Bluetooth"        						<bluetooth>      			(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:bluetooth"}
String EchoDotKG_BluetoothDeviceName  				"Bluetooth Device" 						<bluetooth>      			(gEchoDotKG)			 		{channel="amazonechocontrol:echo:IDXXXXX:ID7:bluetoothDeviceName"}


//--> Test Item
Switch Echo_TTS_Test								"Text to Speech Test"					<echodot>

Thanks Dan, I saw you had some major progress on V3 a few months back. How is it going??

its coming :wink: I was pulled off on other things for the last couple months, but I’m back working on it.

3 Likes

Is it possible to trigger an Alexa Routine with an OpenHAB thing/device? Although I’m able to control things/devices through Alexa, these devices do not show-up as available triggers within Alexa’s Routine functionality. Do these type of devices require a special Amazon api/certification?

I will need to look into what makes a smart home device able to act as a trigger, I have not played with routines yet.

You need to use the Alexa control binding that will do it

So after a little searching, I think you will be able to do this with our V3 skill at some point, Alexa supports device triggers for contact and motion sensors which is in the v3 spec. I think we would also need to implement something called the event gateway which would allow openHAB events to flow directly to Amazon vs Alexa polling for updates. There is some code written to do this, but we are a little stuck on the best way to manage security credentials for this. That was a long way of saying , no right now, maybe when v3 comes out, probably too much information :slight_smile:

See https://developer.amazon.com/blogs/alexa/post/bda9d70c-2f0d-454d-9939-2eb82868cf35/announcing-contact-and-motion-sensor-apis-and-integration-into-alexa-routines-adding-new-home-automation-features-for-customers-and-new-opportunities-for-smart-home-developers

Thanks, that’s what I thought. The plaintext security credentials are a dealbreaker for me.

What plain text credentials ?