chirpstack-network-server
chirpstack-network-server copied to clipboard
Limit Azure IoT Hub downlink retries
If the publishCommand function for Azure IoT Hub gets an error when sending a cloud-to-device message it retries forever so it may never finish. This change adds a retry limit to prevent that. It also adds a test case for testing Azure IoT Hub downlinks.
@brocaar Another thing we observed is that when the limit is reached for a particular device, IoT Hub returns the error below and endlessly retries connecting to IoT Hub even though is not a "connection" error. For now this is more of a immediate hotfix, lookout for another PR later on that actually checks for Device Queue Limit.
Added a change for the queue limit exceeded error. Now it only recreates the sender link instead of doing a full reconnection since that error doesn't require a reconnect.