declension / squeeze-alexa

Squeezebox integration for Amazon Alexa
GNU General Public License v3.0
59 stars 20 forks source link

Rewrite and extend documentation around Amazon / Lambda setup #21

Closed jamietudor closed 6 years ago

jamietudor commented 6 years ago

Hi there - I'm working through your documentation to set this up. I've completed all the LMS config but I've got totally lost in the AWS setup section.

When I create a custom skill it asks me for the name and invocation name and so on, but I can't see any details of anything else I need to provide there in the interaction model or configuration tabs.

And your docs sat "needs to be python 2.7 runtime" but I can't see anywhere to actually specify that.

Any chance of almost a "dummies guide" of how to do the AWS side of this?

Cheers Jamie

declension commented 6 years ago

Sorry - only just seen this ticket. Been updating the server config.

I'll have a look on my own AWS setup tomorrow, see if I can add any details (or if it's changed recently) or simplify a bit.

jamietudor commented 6 years ago

Thanks Nick - I'm looking forward to getting it going, but I think maybe the AWS side is a bit ahead of my AWS skills. If you could come up with a simple guide I'd be happy to guinea pig it for you.

Cheers Jamie

declension commented 6 years ago

Hi @jamietudor. Re-written / added a whole bunch of stuff around Dev console and AWS console (as link above).

Please re-open this if that doesn't solve it, or open new tickets if there are other problems (though I've run out of time for now).

grtessman commented 6 years ago

Many of the links are still broken.

All of them included in here are an example: <<

These are kept here in metadata/
In your Amazon Developer portal, configure your new skill:
Copy-paste the utterances as the sample utterances
Copy-paste intents.json into the Intents schema

Add Slots

In theory these are optional, but you'll have to edit the interaction model if you opt out. Better just do to this:

Add a new slot type PLAYER, and make sure to copy players.txt in there, adding your player names if it helps.
Add a new slot type GENRE, and make sure to copy genres.txt in there, extending if really necessary (there are all the standards, and quite a few more already)
Add a new slot type PLAYLIST, and make sure to copy playlists.txt in there, adding your own for better results (avoiding short words helps, I find)
declension commented 6 years ago

@grtessman well spotted, thanks. The docs got moved to their own directory but I forgot to update all relative links..

jamietudor commented 6 years ago

Hi all - I've got through all the AWS section much easier this time. I'm now stuck on the final part though, i.e. the section beginning "Upload the customised skill". Not sure how to use Lambda uploader, or the AWS CLI, or indeed where to run the pip command the extract the dependencies and do it manually...

If you can help push me over the line and I can see if I've done the rest of it correctly.

Cheers Jamie

jamietudor commented 6 years ago

Brilliant! That's got it working. That must show you've done the instructions well if an AWS novice like me can get it going...

The only thing that I can't get to function is using the simple form like "Alexa next" or "Alexa play". If I use the full form "Alexa ask squeeze to play" then it works fine.

Is that something obvious I have missed?

Cheers Jamie

declension commented 6 years ago

Excellent. Glad the updates / extra scripting paid off.

The only thing that I can't get to function is using the simple form like "Alexa next" or "Alexa play". If I use the full form "Alexa ask squeeze to play" then it works fine.

Because of the sneaky way this works, there are limitations. Something in full form has to come first (e.g. Alexa, turn on Upstairs music, then you should be good to use short form versions for a while.

Also, more generally I find pause / resume works better (think I missed something there)