I got 3 skills in my account, eg SkillA
, SkillB
and SkillC
.
I am using an endpoint url to listen to these skills, and my server is common for all the 3 skills. So if I try to invoke a skill by saying open SkillA
it invokes LaunchRequest
. Same is the case with other 2 skills.
So how would I be able to know which Skill's LaunchRequest
was invoked.
My server is ruby with Ralyxa Gem.
For every skill there is a unique Skill ID known as applicationId
. Making use of this applicationId
from the request JSON you can easily determine from which skill the request came in.
You can find this applicationId
under application
object in every request from Alexa to your backend.
{
"version": "1.0",
"session": {
"new": true,
"sessionId": "amzn1.echo-api.session.xxxx-xxxx-xxxx-xxxx-xxxxxxx",
"application": {
"applicationId": "amzn1.ask.skill.xxxx-xxxx-xxxx-xxxx-xxxx"
},
"user": {
"userId": "amzn1.ask.account.xxxxxxxxxxxxxx"
}
},
...
You can also view the Skill ID from Alexa developers console where your Alexa Skills are listed.
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments