跳转至

流程说明

合宙 IOT 通用报文协议 AirCloud

九、流程说明

9.1 AirCloud 连接流程

  1. 初始化配置:设备初始化配置,调用 setup 方法
  2. 调用 open 方法:启动连接流程
  3. 获取连接信息:调用 getip 服务,获取连接信息
  4. 获取服务器信息:获取成功后,获取服务器信息;失败则重复获取三次,三次都失败则返回失败
  5. 创建连接:创建连接,连接服务器
  6. 发送鉴权请求:连接成功后,发送鉴权请求
  7. 鉴权成功:鉴权成功后,进行状态数据上报、文件上报、接收下发数据和指令
  8. 启动心跳机制:启动心跳机制,定期发送心跳
  9. 重连机制:若连接失败,进入重连机制,先用当前连接信息重连,达到最大重连次数后重新调用 getip 服务

3683dee5-2a32-4fc4-a399-04d3ce32c1ba

9.2 文件上传流程

  1. 调用上传接口:设备调用上传接口(upload_image/upload_audio)
  2. 检查 getip 服务:检查是否使用 getip 服务,若否则返回失败(手动填写 IP 不允许上传)
  3. 检查文件存在:检查文件是否存在,若否则返回失败
  4. 检查服务器连接:检查是否连接到服务器,若否则返回失败
  5. 检查上传配置:检查上传配置(url),若无配置则调用 getip 获取
  6. 上传文件:获取配置成功后,开始上传文件
  7. 发送通知:根据上传结果发送成功或失败通知
  8. 返回结果:返回上传结果

aircloud文件上传流程

9.3 运维日志功能流程

9.3.1 初始化流程

  1. 初始化 excloud.setup:在 excloud.setup 时初始化运维日志功能
  2. 检查是否启用:检查是否启用运维日志功能,若否则返回成功但功能禁用
  3. 初始化 exmtn:调用 exmtn.init 初始化,若失败则返回失败并记录错误
  4. 初始化成功:初始化成功后,运维日志功能可用

9bff541a-a458-4ec4-8059-d403f36036f0

9.3.2 日志写入流程

  1. 调用 excloud.mtn_log:调用 excloud.mtn_log 接口写入日志
  2. 检查是否启用:检查是否启用运维日志功能,若否则返回失败
  3. 记录日志:调用 exmtn.log 记录日志,返回成功

8e925267-7eb8-4af1-927d-a2452a7b3777

9.3.3 日志上传流程

  1. 接收上传请求:接收运维日志上传请求并处理
  2. 检查是否正在上传:检查是否正在上传,若是则抛弃新请求
  3. 发送响应:发送运维日志上传响应,启动上传任务
  4. 设置上传标志:设置上传标志位,扫描运维日志文件
  5. 遍历日志文件:遍历检查每个日志文件,若文件存在且不为空则开始上传
  6. 检查上传配置:检查上传配置,若无配置则调用 getip 获取
  7. 上传文件:获取配置成功后,调用 upload_file 上传文件
  8. 发送状态通知:根据上传结果发送成功或失败状态通知
  9. 通知上传进度:通知上传进度,若还有文件则继续上传
  10. 通知上传完成:所有文件上传完成后,通知上传完成并清除上传标志位

aircloud运维日志上传

9.4 时序图

9.4.1 http+mqtt基本业务

http_mqtt基本业务

9.4.2 http+tcp基本业务

http_tcp基本业务

9.4.3 http+udp基本业务

http_udp基本业务

搜索
AirMaster 实时解答