Alexa API broken notification

I’m relying more and more on my alexa_media integration with home assistant and providing me with various notifications. Every so often i have to re-authenticate with amazon and during that window the plugin no longer works. When i’m required to re-authenticate i get a notification in the web interface. Is it possible to check this for alexa_media notifications in Node Red so i can use a backup system for notifications?

In Node Red i have an alert flow that i would like to check to make sure the integration is still working before pushing to amazon, if it doesnt work maybe send me a text.

I have a flow check every 2 hours to see that the API is still available. I have an input_boolean that is normally on. The test turns it off, makes an API call and, if the call succeeds, it turns it back on. Five seconds later, it checks the status and, if it is off, it sends me a notification.

[{"id":"d4c6a8ff.4e1098","type":"tab","label":"Flow 1","disabled":false,"info":""},{"id":"609229b6.df5f78","type":"api-call-service","z":"d4c6a8ff.4e1098","name":"api_test","server":"f7b623d4.ed978","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_off","entityId":"input_boolean.api_test","data":"{\"entity_id\":\"input_boolean.api_test\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":300,"y":240,"wires":[["5f5c0e9.ca9d8f"]]},{"id":"110f983e.9c14d8","type":"delay","z":"d4c6a8ff.4e1098","name":"","pauseType":"delay","timeout":"5","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":140,"y":300,"wires":[["a0229b6a.1170e8"]]},{"id":"5f5c0e9.ca9d8f","type":"api-call-service","z":"d4c6a8ff.4e1098","name":"LC","server":"f7b623d4.ed978","version":1,"debugenabled":false,"service_domain":"alexa_media","service":"update_last_called","entityId":"","data":"","dataType":"json","mergecontext":"","output_location":"payload","output_location_type":"flow","mustacheAltTags":false,"x":450,"y":220,"wires":[["db34cafd.ec52a8"]]},{"id":"a0229b6a.1170e8","type":"api-current-state","z":"d4c6a8ff.4e1098","name":"api_test","server":"f7b623d4.ed978","version":1,"outputs":2,"halt_if":"off","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"input_boolean.api_test","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":300,"y":300,"wires":[["cab6b6bf.c2ed08"],[]]},{"id":"db34cafd.ec52a8","type":"api-call-service","z":"d4c6a8ff.4e1098","name":"api_test","server":"f7b623d4.ed978","version":1,"debugenabled":false,"service_domain":"input_boolean","service":"turn_on","entityId":"input_boolean.api_test","data":"{\"entity_id\":\"input_boolean.api_test\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":600,"y":200,"wires":[[]]},{"id":"ce73b56a.fd3ec8","type":"api-call-service","z":"d4c6a8ff.4e1098","name":"Notify","server":"f7b623d4.ed978","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_miller_s_iphone","entityId":"","data":"{\"message\":\"API is broken\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":630,"y":280,"wires":[[]]},{"id":"5b03989d.2ed798","type":"inject","z":"d4c6a8ff.4e1098","name":"Test API","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"7200","crontab":"","once":true,"onceDelay":"10","topic":"","payload":"","payloadType":"date","x":100,"y":220,"wires":[["609229b6.df5f78","110f983e.9c14d8"]]},{"id":"cab6b6bf.c2ed08","type":"time-range-switch","z":"d4c6a8ff.4e1098","name":"","lat":"","lon":"","startTime":"6:00","endTime":"22:00","startOffset":0,"endOffset":0,"x":470,"y":300,"wires":[["ce73b56a.fd3ec8"],[]]},{"id":"f7b623d4.ed978","type":"server","z":"","name":"Home Assistant","legacy":false,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true}]

What does it do if it fails?

If the API call fails, the input_boolean doesn’t get turned back on and the notification is sent. If it succeeds, the boolean is turned on and the flow ends.

1 Like

Thanks! I’ll try that out.