The Alexa List API FAQ says as follows:
How can a developer determine that an event has been triggered due to their skill?
Consider this scenario:
- The customer creates a to-do in the app.
- The skill service uses the Skill Messaging API to send a message to the skill to create a list item in Alexa.
- The skill receives the Skill Messaging API message and POSTs to householdlist and list items.
In response to the POST, the skill service records the alexa_item_id locally. An ItemsCreate event also occurs as a list item was just created. Alexa triggers an event even if a list item is created by calling List API. Skill developers can use the item_id value returned by CreateListItem to uniquely identify an item.
Now my question:
Is there any more precise information / sample on that? (I am still new to node.js and alexa development)
In my current skill implementation (AWS Lambda endpoint) list elements are added via ask list API which results in return in receiving the ItemsCreated event a few seconds later in the same lambda.
Currently I cannot filter out events like that which results in en endless circular update loop. The same is true for delete events while it stops after the first try here.
- How can I determine that I can skip this event?
- Where/how shall I store/cache this (e.g. the item_id mentioned above) information?
- How do I get to this information seconds later (while other users may have called into the lambda meanwhile)?
Note:
Both happens out of session.