跳至主要內容

云对云接入文档


平台对平台(云对云)接入文档

  • 产品形态
  • 账号注册
  • 企业认证
  • 创建产品
  • 导入设备
  • 测试设备与后台通讯
  • 配置回调地址
  • 推送文档
  • 语音聊天

产品形态

image-20231117224555796
image-20231117224555796

账号注册

登录以下网址进行注册

https://mp.thisiot.com/#/register

注册完成以后,进行认证,认证完以后,该账号就是管理员账号。

image-20240329141946998
image-20240329141946998

企业认证

需要准备的资料:

  • 营业执照
  • 法人身份证正面反面
  • 公司的Logo

账号注册完以后,登录会自动跳转到认证页面

image-20240329142448980
image-20240329142448980

请如实填写公司资料,提交认证,认证通过后会收到短信通知

创建产品

认证通过以后,登录管理中心-->产品管理--->创建产品。

image-20231207141428883
image-20231207141428883

填写入相关的信息:

image-20231117221835524
image-20231117221835524

导入设备

创建完产品以后,点击设备,或者点击侧栏的设备管理-->设备列表

image-20231117222049605
image-20231117222049605

下载模板,把设备的IMEI号填充到excel文档中。

然后点击导入设备:

image-20231117222845086
image-20231117222845086

选择导入设备

导入后会返回数据的解析结果,确认导入。如果额度不够了,请联系商务。

image-20231117223446208
image-20231117223446208

确保设备状态为在线,如果不在线,请重启设备,或者联系设备提供的厂商协助。

测试设备与后台通讯

设备显示在线以后,点击设备详情,跳转到设备详情页面。

image-20231117223628724
image-20231117223628724

点击查找设备,若设备有提示则设备与后台通讯成功。

配置回调地址

本文档适用于平台对平台的模式。

请贵公司实现以下要求接口:

  • POST请求
  • 公网可以访,或者可做内网穿透

配置回调地址:

点击设置-->推送设置

image-20231117224403296
image-20231117224403296

填写贵公司的回调地址以及服务器的IP

通过推送的开关来控制推送。

提交配置即可。

推送数据

响应体中的数据格式

{
"success":"true",
"msg":"xxx消息/推送",
"code":123455,
"data": {
	xxx数据对象
}
}
  • success:true表示成功,false表示失败
  • msg:消息说明
  • code:消息码
  • data:数据对象

令牌

贵公司服务器向物连网平台发起请求调用需要携带令牌。

  1. 配置好回调地址
  2. 编写好服务器的接收代码
  3. 登录管理中心,开启/停止推送令牌
image-20231117224854407
image-20231117224854407
  • 令牌有效期为2个小时,在开启推送以后,每隔一个小时则会推送一个新的令牌。贵公司收到新的 令牌后,替换旧的令牌。
  • 令牌的code为:28961
  • 收到令牌后body中返回字符串:“success”

再看一下这张图吧:

image-20231117224555796
image-20231117224555796

贵公司调用平台接口时,需要携带令牌

  • 接口请参考接口文档详细说明
  • 把物连网平台推送的令牌携带在header上,key为:Sob-Web-Req-Token
  • 同步调用则会有响应结果,异步调用只会响应状态(成功/失败),异步通过推送通知结果。

推送数据code

  • 令牌推送:28961
  • 心率结果:29000
  • 体温结果:29001
  • 血氧结果:29002
  • 血压结果:29003
  • SOS通知:29004
  • 围栏警告:29005
  • 定位推送:29006
  • 跌到警告:29007
  • 低电警告:29008
  • 脱腕警告:29009
  • 步数推送:29010
  • 中医数据:29012
  • 设备信号:29013
  • 设备电量:29014
  • 设备版本:29015
  • 通用数据:29016

详情请参考前面的响应体格式,数据在data里

推送示例

令牌28961

{
	"success": true,
	"msg": "令牌推送.",
	"code": 28961,
	"data": {
		"token": "70_RoqqJDBibKxxfZOz"
	}
}
  • token 令牌,有效期为2个小时,会定时推送,得到新的令牌后,替换旧的

心率结果推送29000

{
	"success": true,
	"msg": "心率结果推送.",
	"code": 29000,
	"data": {
		"heartRate": 80,
		"deviceId": "429244341796756",
		"createTime": "2023-12-07 03:35:59"
	}
}
  • heartRate 心率值,整型
  • deviceId 设备ID
  • createTime 数据创建时间

体温结果推送29001

{
	"success": true,
	"msg": "体温测试结果.",
	"code": 29001,
	"data": {
		"deviceId": "429244341796756",
		"temp": 36.9,
		"createTime": "2023-12-07 03:37:34"
	}
}
  • deviceId 设备ID
  • temp 温度,浮点型
  • createTime 数据创建时间

血氧结果推送29002

{
	"success": true,
	"msg": "血氧数据推送.",
	"code": 29002,
	"data": {
		"deviceId": "429244341796756",
		"oxygen": 85,
		"createTime": "2023-12-07 03:38:48"
	}
}
  • deviceId 设备ID
  • oxygen 血氧值, 整型
  • createTime 数据创建时间

血压结果29003

{
	"success": true,
	"msg": "血压数据推送.",
	"code": 29003,
	"data": {
		"deviceId": "429244341796756",
		"height": 115,
		"low": 85,
		"createTime": "2023-12-07 03:41:13"
	}
}
  • deviceId 设备ID
  • height 舒张压,整型
  • low 收缩压,整型
  • createTime 数据创建时间

SOS警告推送29004

{
	"success": true,
	"msg": "SOS消息.",
	"code": 29004,
	"data": {
		"deviceId": "429244341796756",
		"type": "sos",
		"msg": "SOS呼救",
		"createTime": "2023-12-07 03:42:32"
	}
}
  • deviceId 设备ID
  • type 类型,sos则为SOS求救
  • msg 消息内容
  • createTime 消息创建时间

离开电子围栏推送29005

{
	"success": true,
	"msg": "离开电子围栏.",
	"code": 29005,
	"data": {
		"deviceId": "429244341796756",
		"type": "rail_out",
		"msg": "离开电子围栏.",
		"createTime": "2023-12-07 03:42:32"
	}
}
  • deviceId 设备ID
  • type 类型,rail_out则为离开电子围栏
  • msg 消息内容
  • createTime 消息创建时间

定位推送29006

{
	"success": true,
	"msg": "位置信息推送.",
	"code": 29006,
	"data": {
		"deviceId": "429244341796756",
		"baseDate": "231207",
		"baseTime": "034231",
		"locatedResult": "A",
		"latitude": "23.173798",
		"latitudeDirection": "N",
		"longitude": "113.275283",
		"longitudeDirection": "E",
		"speed": "0",
		"direction": "0",
		"altitude": "0",
		"gpsCount": "0",
		"gsmRsi": "100",
		"batteryLev": "100",
		"stepCount": "8103",
		"rollTime": "0",
		"clientStatus": "00330000",
		"cellIndex": "1",
		"mcc": "460",
		"mnc": "1",
		"cellCount": 1,
		"wifiCount": 7,
		"cellList": [{
			"areaCode": "0",
			"cellId": "4294967295",
			"rsi": "100"
		}],
		"wifiList": [{
			"wifiName": "wifi0",
			"mac": "d9:d9:90:09:d9:21",
			"rsi": "-100"
		}, {
			"wifiName": "wifi1",
			"mac": "3e:f4:b0:f4:29:8c",
			"rsi": "-100"
		}, {
			"wifiName": "wifi2",
			"mac": "3e:19:f4:c7:90:d9",
			"rsi": "-100"
		}, {
			"wifiName": "wifi3",
			"mac": "d9:f4:90:8c:21:8c",
			"rsi": "-100"
		}, {
			"wifiName": "wifi4",
			"mac": "11:90:19:b0:21:f1",
			"rsi": "-100"
		}, {
			"wifiName": "wifi5",
			"mac": "b0:b0:8c:19:29:c7",
			"rsi": "-100"
		}, {
			"wifiName": "wifi6",
			"mac": "90:35:09:f4:29:f4",
			"rsi": "-100"
		}],
		"createTime": "2023-12-07 03:42:31"
	}
}
  • deviceId 设备ID,通常是IMEI号
  • baseDate 数据创建的日期
  • baseTime 数据创建的时间
  • locatedResult GPS定位结果,A为定位成功,V为定位失败
  • latitude 纬度
  • latitudeDirection 纬度的方向,N为北纬,S为南纬
  • longitude 经度
  • longitudeDirection 经度的方向,W为西经,E为东经
  • speed 速度
  • direction 方向
  • altitude 海拔
  • gpsCount GPS数量
  • gsmRsi GPS信号强度
  • batteryLev 电池电量
  • stepCount 步数
  • rollTime 翻滚次数
  • clientStatus 客户端的状态,转成二进制,共32位,左边高 16bit 表示报警,右边低16bit 表示状态。0 低电状态1 出围栏状态(目前没用到)2 进围栏状态(目前没用到)3 手环戴上取下状态4 手表运行静止状态16 SOS 报警17 低电报警18 出围栏报警(目前没用到)19 进围栏报警(目前没用到)20 手环拆除报警21 跌倒报警22 震动报警23 断油断电报警24 心率骤降报警25 车辆启动、位移报警26 低温报警27 高温报警28 超速报警
  • cellIndex 连接第几个基站
  • mcc 国家码
  • mnc 地区码
  • cellCount 基站个数
  • wifiCount wifi个数
  • cellList 基站列表
    • areaCode 区域码
    • cellId 基站ID
    • rsi 信号强度
  • wifiList WIFI列表
    • wifiName wifi名称
    • mac mac地址
    • rsi 信号强度
  • createTime 数据收到时间

跌到警告29007

{
	"success": true,
	"msg": "跌倒报警.",
	"code": 29007,
	"data": {
		"deviceId": "429244341796756",
		"type": "fall_down",
		"msg": "跌倒报警",
		"createTime": "2023-12-07 03:42:33"
	}
}
  • deviceId 设备ID
  • type 类型,fall_down跌到报警
  • msg 消息内容
  • createTime 消息创建时间

低电量警告29008

{
	"success": true,
	"msg": "设备低电.",
	"code": 29008,
	"data": {
		"deviceId": "429244341796756",
		"type": "power_low",
		"msg": "低电警告",
		"createTime": "2023-12-07 03:42:33"
	}
}
  • deviceId 设备ID
  • type 类型,power_low低电量报警
  • msg 消息内容
  • createTime 消息创建时间

佩戴脱落警告29009

{
	"success": true,
	"msg": "佩戴脱落.",
	"code": 29009,
	"data": {
		"deviceId": "429244341796756",
		"type": "wrist_off",
		"msg": "佩戴脱落",
		"createTime": "2023-12-07 03:42:33"
	}
}
  • deviceId 设备ID
  • type 类型,wrist_off佩戴脱落
  • msg 佩戴脱落
  • createTime 消息创建时间

步数推送29010

{
	"success": true,
	"msg": "步数推送.",
	"code": 29010,
	"data": {
		 "createTime":"yyyy-MM-dd HH:mm:ss",
		"stepCount": "9787",
		"deviceId": "2023-12-07 03:42:33"
	}
}
  • createTime 推送时间
  • stepCount 步数,整型
  • deviceId 设备ID

中医数据:29012

{
	"success": true,
	"msg": "中医数据推送.",
	"code": 29012,
        "data":{
        "createTime":"yyyy-MM-dd HH:mm:ss",
        "deviceId":"设备ID",
        "imei":"IMEI号",
        "uploadtime":"上传时间时间戳",
        "params":{
            "number":"数量整型",
            "data":"数据字符串"
        }
    }
}

设备信号:29013

{
	"success": true,
	"msg": "设备信号推送.",
	"code": 29013,
     "data":{
        "createTime":"yyyy-MM-dd HH:mm:ss",
        "deviceId":"设备ID",
        "signal":"信号强度0~100",
    }
}

设备电量:29014

{
	"success": true,
	"msg": "设备电量推送.",
	"code": 29014,
	"data": {
        "createTime":"yyyy-MM-dd HH:mm:ss",
        "deviceId":"设备ID",
        "battery":"0~100电量",
    }
}

设备版本:29015

{
	"success": true,
	"msg": "设备版本推送.",
	"code": 29015,
	"data": {
        "createTime":"yyyy-MM-dd HH:mm:ss",
        "deviceId":"设备ID",
        "version":"版本字符串"
    }
}

通用数据:29016

{
	"success": true,
	"msg": "通用数据推送.",
	"code": 29016,
     "data": {
        "deviceId":"设备ID",
        "createTime":"yyyy-MM-dd HH:mm:ss",
        "jsonStr":"json字符串"
    }
}

设备在线:29017

{
	"success": true,
	"msg": "设备在线推送.",
	"code": 29017,
     "data": {
        "deviceId":"设备ID",
        "createTime":"yyyy-MM-dd HH:mm:ss"
    }
}

设备离线:29018

{
	"success": true,
	"msg": "设备离线推送.",
	"code": 29018,
     "data": {
        "deviceId":"设备ID",
        "createTime":"yyyy-MM-dd HH:mm:ss"
    }
}

设备心跳:29019

{
	"success": true,
	"msg": "设备心跳推送.",
	"code": 29019,
     "data": {
        "deviceId":"设备ID",
        "createTime":"yyyy-MM-dd HH:mm:ss"
    }
}

设备控制指令

调用地址:

正式环境:https://mp.api.thisiot.com/dev

文档地址:

http://8.134.68.15:32606/swagger-ui.html

微聊

微聊主要包括两部分:

  • 贵公司后台发送语音到设备上
  • 设备上语音推送到贵公司的后台

语音发送

//正式环境
https://mp.api.thisiot.com/md/we-talk/voice/{deviceId}
  • 参数 deviceId 类型 path 含义 设备ID
  • 参数 voice 类型 formData 含义声音文件,要求小于50kb,amr格式
  • 请求方法:POST

文字下发

//测试环境
https://mp.api.thisiot.com/dev/fun/msg-group/{deviceId}
  • 参数 deviceId 类型 path 含义 设备ID

  • body

    {
    	"msg":"消息内容"
    }
    
  • 请求方法:POST

语音接收(推送)

  • code:29020

  • 内容:

    {
      "success":true,
      "code":29020,
      "msg":"语音消息推送",
      "data":{
      	"path":"音频路径",
      	"id":"设备ID",
      	"avatar":"设备头像",
      	"time":"消息时间,时间戳,Long类型",
      	"nickname":"设备昵称",
      	"type":"device保留值",
      	"deviceId":"设备ID"
      }
    }
    
  • 语音转换:收到语音的消息推送,通过path上的url进行下载,内容做以下转换:

    服务器和客户端接收 ARM 格式音频数据时需要做以下转译
    遇到左边的数据就转译成右边的数据:0X7D 0X01 --> 0X7D
    0X7D 0X02 --> 0X5B
    0X7D 0X03 --> 0X5D
    0X7D 0X04 --> 0X2C
    0X7D 0X05 --> 0X2A
    服务器和客户端发送 ARM 格式音频数据时需要做以下转译
    遇到左边的数据就转译成右边的数据:0X7D --> 0X7D 0X01
    0X5B --> 0X7D 0X02
    0X5D --> 0X7D 0X03
    0X2C --> 0X7D 0X04
    0X2A --> 0X7D 0X05