jdk8.github.io

本文介绍两种常见的物联网开发平台,腾讯云IOT平台以及苹果MDM

腾讯云IOT

准备

网关 子设备(如电源控制器,灯,门禁等) IOT平台 配网小程序

网关和子设备一般是由适配了腾讯云协议的厂商提供,IOT平台由腾讯提供,业务只需要开发配网小程序(腾讯云提供了SDK,开发非常方便)。

结构

网关和设备通过局域网协议进行通信,网关和IOT平台通过MQTT协议进行通信。只需要配置网关的网络,不需要配置设备的网络。 在这里插入图片描述 腾讯云IOT平台相关概念:

网关配网

腾讯云提供了若干种配置网关网络的方法,下面是通过softAP方式对网关进行配网的流程: 在这里插入图片描述

在这里插入图片描述

子设备添加到网关

子设备添加到网关需要设备商提供相关的功能,涉及到了网关和子设备局域网的通信。步骤如下:

苹果MDM

需要用户自己搭建MDM服务器,推荐使用开源的:https://github.com/micromdm/micromdm

概念

如上图所示,MDM server需要APNS和ABM的鉴权,需要配置相关的证书,流程比较长,参照micromdm的文档配置鉴权: https://github.com/micromdm/micromdm/blob/main/docs/user-guide/quickstart.md

MDM server和APNS之间通信遵守苹果制定的协议: https://developer.apple.com/business/documentation/MDM-Protocol-Reference.pdf

设备添加

添加流程如下:

正确录入的设备通过./mdmctl get devices命令可以查看设备的EnrollmentStatus状态为true。

成功录入的设备就可以HTTP调用/v1/commands进行设备控制。

设备控制的流程可以参考上图:

如果设备不在线,APNS会把指令存起来,等设备在线了,会再次控制设备,再调用mdm返回结果。