[RELEASE] - Denon HEOS Integration

Thank you for the ludicrous speed response. Got it on SSML. Will ask in that link

Nothing in the queue. If I go to the driver go to the Play Text field and enter "Hello World" if will loop infinitely until I issue a stop

Well that's not good! What kind of HEOS speaker are you testing on? Is it grouped? I had this issue a few times during my initial testing but I thought I fixed it.

Also, didn't see a response on the Pandora part. Let me know what's not working and I'll get an account set (I'm more of an Amazon guy normally).

From rules machine attached to a motion sensor

playText(Motion in front hall) on Bathroom
Bathroom: Stop --> delayed: 0:00:02
Bathroom: Stop --> delayed: 0:00:03

Speaker is not linked. using a Heos 1 HS2

Edit: I think you are correct. I think the queue is filling up and track is set to play in a loop. (you can see it in the app). Did notice at first

On Pandora maybe I am confused. I thought it had to be in your dropdown on the source list. I basically wanted to add a few tiles that had my favorite Pandora play lists

Maybe you can share a simple example ?

Ah I see. I haven't tried doing that. I'll have to play around. Unfortunately my power just went out (great being stuck at home due to quarantine and not have power!) so I probably won't be able to try to look into your issues until later tonight or tomorrow.

Very sorry to hear you are without power. Hopefully back soon. Again, thank you, appreciate you looking into this.

One thing to clarify on Pandora I am trying play a station I created . If (when you can) you could share an example of how I create a tile to play a specific station that would be GREAT! I seem to be a bit clueless.

Edit: I went into HEOS app. Selected the station I wanted. Went to the driver. Looked at the event log and I can't pick out (or parse) what I need to pull out to feeback into the driver. Also not sure which field to put in.

Sorry to be pain

The code is supposed to clear out the queue after each play. Do you have the debug logging turned on? Wondering if you're getting any errors

Edit: I think you are correct. I think the queue is filling up and track is set to play in a loop. (you can see it in the app). Did notice at first. I think the loop is the primary issue.

Try clearing the queue. Once it is cleared out, when the app adds to the queue it should auto remove it so it shouldn't happen again. If it does let me know, it'd be a bug.

I clear it out. Still happening. Filled up again but I think the track is set to loop. Pretty sure that is the issue.

Ok well I'll look at that next, however, you were right about Pandora, it wasn't supported. Pandora is done in a weird way (similar to the weird way that Amazon Music is done). That being said, I think I have Pandora working now. Could you grab this version of the driver https://raw.githubusercontent.com/dcmeglio/hubitat-heos/Pandora-and-fixes/drivers/Denon_HEOS_Speaker.groovy

You'll now see that the playTopResult has a Pandora option and you can choose Station or Playlist. Just specify the name of the station and it should start playing. Let me know if that works, then I can show you how you'd do the tiles like you wanted. Still looking into the looping issue.

2 Likes

Ok you are going to love this (and so will your high school English teacher). Punctuation matters. If I place a period at the end of the sentence, it does not loop! However, the queue is filling and will play as many times as the phrase is in the queue. I suspect the way the TTS works, it is somehow defeating your queue clear code.

This at least narrow it way down. Sorry I was not able to start here.

1 Like

Awesome. Doing it right now.

I think I found the problem, just need to figure out how to fix it.

1 Like

Great. Thank you for working on it. BTW other account got locked. Too many posts day one

You Rock! Literally. This work perfectly. Thank you!

Any chance there is a Spotify integration hiding in there as well? I know the HEOS Spotify integration is kind of clunkily. So if this too much work I totally understand.

BTW if this is addressable in conjunction with RM by making a "clear queue" in the driver that will work fine. Anyone who is using the TTS will be using RM or something like it. Might be a faster fix if you already "know" how to clear the queue.

. . . Just a thought

I'd have to look, there is some stuff in the API for Spotify. I've never used Spotify before so I don't know a lot about it.

I think the queue thing is a timing issue. Also, if there's a bug I really don't want a RM rule to be needed to work around it. I'm a believer that the driver should hide the device weirdness. Can you tell me if this code resolves it? https://raw.githubusercontent.com/dcmeglio/hubitat-heos/Pandora-and-fixes/drivers/Denon_HEOS_Speaker.groovy

There might still be more work needed but I think this part of it.

1 Like

Spotify won't work, the API doesn't provide any way to browse or search it. Next/previous track would work, but not playing stations. Seems like the integration with HEOS is pretty crappy...

1 Like

While you test out that fix...

The way to setup your dashboard tiles would be create virtual buttons. Then use RM to trigger the custom playTopResult command when the particular button is pressed. That should get you what you need!

1 Like