Are you trying to overbill me on Lambda? 1 request per device is enough!!!
Hi THCG. There are two ways your skill's back-end might receive a ReportState directive. First, when a user verbally speaks to an Alexa device, and second, if a user has the Alexa app open, has tapped the "Devices" tab and then chosen a device to visually look at in the app.
In that second scenario, looking at a device via the Alexa app, a new ReportState directive will be send to your skill's back-end every few seconds. That's probably where these 20 ReportState directives you're seeing are coming from.
The reason for this is to ensure that what the user sees in the Alexa app represents the most recent state of the device I'm looking at. For example, if I'm using my Alexa app to look at my light switch, and I turn off the switch physically then I want to see that change reflected in the Alexa app as well.