Microsoft Azure IoT 中心 (java) 在发送消息后通知 "Lost connection to the server. Reconnecting 0 time."

Microsoft Azure IoT hub (java) notifies a "Lost connection to the server. Reconnecting 0 time." after sending a message

我使用 IoT 中心 Java 库在我的设备和 Microsoft Azure 之间发送消息。

要连接我打电话给

client = new DeviceClient(connString, protocol);
client.open();

然后,为了发送消息,我调用

client.sendEventAsync(message, callback, lockobj);

然后,我的 callback 函数在发送消息时被调用。

然而,这就是问题所在,在我的终端上调用 sendEventAsync 后无限出现消息 Lost connection to the server. Reconnecting 0 time.

我试过发送消息后关闭连接,每次都重新打开,但我认为这是最糟糕的,问题仍然存在。而且,我已经执行了Azure(https://github.com/Azure-Samples/azure-iot-samples-java/archive/master.zip)给出的测试样本,我也遇到了同样的问题。

所以我的问题是,库是否有问题(因为即使它的代码也存在问题)?还是我做错了什么?

非常感谢!

我发现了问题:今天我测试了与昨天相同的代码,一切正常。所以我登录了 Azure,发现了这个错误消息:

There was an error querying devices: Forbidden:{ "Message": "ErrorCode:IotHubQuotaExceeded;Total number of messages on IotHub '[..]' exceeded the allocated quota. Max allowed message count : '8000', current message count : '20107'. Send and Receive operations are blocked for this hub until the next UTC day. Consider increasing the units for this hub to increase the quota.", "ExceptionMessage": "Tracking ID:[..]-TimeStamp:10/17/2018 08:48:37" }.

所以,问题是我超出了消息配额。但是,昨天我很困惑,因为 Azure 回复了我 "OK_EMPTY" 的消息,这意味着一切正常...