Hi, I am trying to use RASA NLU to develop alexa skill, but i found out there is no way of getting complete user utterance from alexa, in this forum there is a topic on google and alexa connector, there also I asked this question but I didn’t get any reply so creating this topic and also there is a tutorial about connecting google assistant with RASA and I did that, but I am not finding a way to do that with alexa.
HI @yashwanths112. I have experimented with Alex a little bit and had the same experience as you had, that it’s not that easy to pass user inputs to Alexa. I got it working in the end, I will try to find some time to write it all up and post it on the forum
Hey Juste! Was this tutorial about creating a custom connector to Amazon’s Alexa that you mention in your August 2018 reply to a user named yashwanths112 (linked below) ever released?
I would love to know, thanks so much! Please have a good day.
Has anyone figured out if there’s a way to get the complete utterance from Alexa? I did a little test and the alexa skill intent handler lambda <> rasa interface is super-easy. But it seems like the alexa training data for that requires at least one fixed word. e.g.,
‘ok {full_sentence}’ works so that I can say “ok hello there rasa” and this will invoke the alexa handler with the slot full_sentence = “hello there rasa” … I can send that down to rasa and get the response back and say it.
But this:
‘{full_sentence}’
is not a legal training example. So I’m stuck. Maybe there’s some trick with the fallback intent?
Hi @rctatman, to my knowledge, the method of using single intent with a single slot to get the complete user utterance will not pass Alexa Certification.
I believe the Alexa docs says that this is not allowed.
Can you confirm that this will work now and any examples in production that have passed certification using this method?
Hi Mark! I’ve heard mixed results from folks about using this approach in the certification process. I’ve been scouring the Alexa docs this week looking for a relevant policy and haven’t found one yet, but someone from the Alexa team on Twitter suggested it would go against the certification policy. (If you’ve got a lead on more info I’d really appreciate it! ) The Amazon team recommended using custom slots as a replace after the Amazon.LITERAL intent–which did the same thing–was deprecated so it does still seem like the best solution to me. I’m continuing to do more research & will post updates as I find out more.
In the meantime, if you have an Alexa for Business account you can publish a private skill without having to go through the certification process. It will only work on your business devices, though, so not a very general solution.
Not that I know of unfortunately. You can store the conversation history on the Rasa side but I couldn’t find a way to get more than one utterance at a time passed from Alexa.