Developers: Sequence Discovery - alandtse/alexa_media_player GitHub Wiki
As of version 1.0.0 we now support Alexa sequences. To discover more sequences, you will need access to the Alexa App and a web browser.
Alexa App:
- Create a new routine. Use the
When this happens > voice
and enter an utterance trigger (e.g.,sequence discovery
). It doesn't matter if it's enabled or disabled as you don't have to run the routine and the trigger does not matter. You are only using this to be able to look the Actions. - Browse the available actions and select the ones you are interested in. You can add all if you want.
- Save the Routine.
Web browser:
- Login to www.amazon.com (or your region specific url).
- Change the url to https://alexa.amazon.com/api/behaviors/v2/automations (or region specific url). This is the page showing your automations.
- Load into your favorite JSON browser or just search for the trigger you selected in 1. The utterance you selected in 1 should be the value of the
utterance
variable under the key structure:[triggers][0][payload][utterance]
. The newest routines should also be at the end. - All your actions will be found in the
[sequence][startNode][nodesToExecute]
list. Specifically you should see some values like the below.
{
"@type":"com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode",
"type":"Alexa.Notifications.SendMobilePush",
"operationPayload":
{"customerId":"****",
"notificationMessage":"Test",
"alexaUrl":"#v2/behaviors",
"title":"Amazon Alexa"},
"name":null}
- The specific sequence name is under the
type
key. In this case, it will beAlexa.Notifications.SendMobilePush
. - By default, the component will only be able to send sequences with a simple
operationPayload
without modifying the api directly. A simpleoperationPayload
only includes these values:
{
"deviceType": "value",
"deviceSerialNumber": "****",
"locale": "en-US",
"customerId": "****"
}
If you see a new sequence that requires something more complex in the operationPayload like in the Alexa.Notifications.SendMobilePush
example above, you'll need to submit a new issue asking for a new feature and providing the json data in 7. Please scrub any data like customerId
and deviceSerialNumber
as those are unique to your system.