这个状态维护是最近加的,可能是由于工作后的习惯,总会特意关注系统的整体状态,因为用到了4G模块,并且还要和子节点交互,所以我们必须要有个状态来维护4G和云平台之间的连接,同时也要维护和子节点的连接状态,我的实现想法是,每次上传数据前对MQTT的连接状态进行判断,如果状态不对,则重新连接云平台,如果云平台尚未连接成功,则放弃上传将收到的数据保存下来,等待网络恢复后进行上传。
并且也会统计与云平台断开的次数
这样做的好处是如果云平台丢失连接设备也能有一些自我恢复的能力,算是往成品靠近
与子节点的状态判断是,如果超时未收到回复则对应指示灯会有颜色变化,其实这种是因为节点少,如果节点多可以上传一个标志位,表示某个设备离线,目前测试是完全没有问题的,具体会在代码里有体现。