设备合法性校验&主机配置
设备IMEI号合法性校验&主机配置
- 合法性校验目的:为了防止别人复制板子,使用客户公司的系统软件;
- 主机配置:如果贵公司想把设备连接到其他的云平台,可以通过主机配置来让设备开机启动连接到目标云服务;
- 前期准备:完成了企业账号的注册和认证。
流程
- 首次开机/重置开机
- 获取IMEI号+初始bid+key(获取到新的后可以连接第三方服务器),走http,向服务器请求三件套(bid,key,host、port)
- 设备拿着三件套进行通讯,如果没有三件套则不进行联网(非法设备)
管理员录入配置

三件套的检查流程
- 设备是否存在(设备是否入库)--->不存在则返回空
- 设备级别---->设备存在,查询是否有单独的设备配置,有则返回,无则检查产品级别的配置(配置优先级:单设备配置、产品级别的配置、公司级别的配置)
- 产品级别---->产品级别的配置存在则返回,不存在则检查公司级别的配置
- 公司级别----->公司级别的配置存在,则返回配置,不存在则返回空
返回结果说明
- 失败,表示非法设备
- 成功,表示合法设备
- 携带配置信息:连接第三方服务器
- 不携带设备信息:连接默认服务器
接口
http://iot.api.thisiot.com/dev/device/check
请求方法:GET
参数
- imei 设备ID
- bid 品牌ID(根据实际的产品登录管理中心创建产品,并且把imei号导入到对应的产品中)
- sonce 随机数
- sign 签名(签名方法参考后面说明)
签名方式
sign=Md5(imei*bid*sonce*key)
返回结果
Bid错误
{ "success":false, "msg":"签名错误", "code":50000, "data":null }
请检查bid和秘钥
签名错误
{ "success":false, "msg":"签名错误", "code":50000, "data":null }
请检查签名算法,如果错误,请到后台进行校验
设备未导入
{ "success":false, "msg":"设备未注册地", "code":50012, "data":null }
请先导入设备
非法设备
{ "success":false, "msg":"非法设备", "code":50000, "data":null }
合法设备
{ "success":true, "msg":"合法设备", "code":20000, "data":{ "bid":"bid(没有配置则返回当前设备所在库中的产品配置)", "secretKey":"秘钥(没有配置则返回当前设备所在库中的产品配置)", "protocolType":"协议类型(有可能为空,如果没有配资和的话)", "host":"服务器地址(有可能为空,如果没有配置的话)", "port":"端口号,int类型,没有返回-1", "extJsonStr":"扩展自定义字符串" } }
设备ICCID鉴权
- 企业管理员行为
- 设备行为
企业管理员行为
ICCID号录入:登录管理员后台,下载导入模板,导入ICCID列表,支持小批量添加
ICCID与设备解绑:登录后台,搜索ICCID,点击与设备解绑,即可清空ICCID对应的IMEI号

设备行为(开发人员)
- 开机后,检查sim卡是否有准备好
- 携带IMEI号与ICCID向后台请求
- 根据后台返回的结果作出处理
请求接口
https://iot.api.thisiot.com/dev/iccid/check
请求方法:GET
参数
- imei 设备ID
- iccid 卡号
- bid 品牌ID(根据实际的产品登录管理中心创建产品,并且把imei号导入到对应的产品中)
- sonce 随机数
- sign 签名(签名方法参考后面说明)
签名方式
sign=Md5(imei*iccid*bid*sonce*key)
返回结果
Bid错误
{ "success":false, "msg":"BID ERROR", "code":50000, "data":null }
请检查bid和秘钥
签名错误
{ "success":false, "msg":"SIGN ERROR", "code":50000, "data":null }
请检查签名算法,如果错误,请到后台进行校验
设备未导入
{ "success":false, "msg":"设备未注册地", "code":50012, "data":null }
请先导入设备
非法设备
{ "success":false, "msg":"非法SIM卡", "code":50016, "data":null }
SIM卡已占用
{ "success":false, "msg":"SIM卡已被其他设备占用", "code":50017, "data":null }
合法SIM卡
{ "success":true, "msg":"合法SIM卡", "code":20008, "data":null }