4G物联网网络功放,5G/4G网络功放厂家,4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂家深圳市索想伟业科技有限公司生产简介
4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
表10 播控器发起开播请求的消息体定义
序号 语法(字段名) 长度(字节) 必填 编码规则
1 业务数据类型 1 是 值为0x08。
2 设备ID长度 1 是 设备ID的长度。
3 设备ID ID长度 是 设备ID,ASCII编码(支持字母做设备ID)。
4 分组编号 1 是 分组编号,对应播控器上的数字按键;
没有数字按键播控器不需要携带;
5 音量 1 是 音量按百分比形式标识,其中:
0x00:静音
0xff:开播,音量不变
0x01~0x64:对应音量1%~100%
6 电话号码长度 1 是 本字段标识电话号码的长度。
0x00则无电话号码。
7 电话号码 可变长 否 部分播控器支持语音网关,该字段携带发起语音的电话,交由平台进行白名单判断
8 广播消息编码标识 1 是 标识是否有广播标识编码。
0x00则无;4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
0x01则有。
9 广播消息编码 9 否 18位数字码,采用压缩型BCD编码,9字节。通过广播消息ID区别其他的广播消息。编码规则:日期(14位)+顺序码(4位),日期格式为YYYY-MM-DD HH:mm:ss,YYYY表示年,MM表示月,DD表示日, 后面为时分秒;顺序码按时间更新,每秒可产生0-9999的顺序码。
播控器播放结束
播控器播放结束上报的消息体字段如图9,每个字段的定义见表11所示。
4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
图9 播控器播放结束的消息体字段
表11 播控器播放结束的消息体定义
序号 语法(字段名) 长度(字节) 必填 编码规则
1 业务数据类型 1 是 值为0x09。
2 设备ID长度 1 是 设备ID的长度。
3 设备ID ID长度 是 设备ID,ASCII编码(支持字母做设备ID)。
4 广播消息编码 9 是 18位数字码,采用压缩型BCD编码,9字节。通过广播消息ID区别其他的广播消息。编码规则:日期(14位)+顺序码(4位),日期格式为YYYY-MM-DD HH:mm:ss,YYYY表示年,MM表示月,DD表示日, 后面为时分秒;顺序码按时间更新,每秒可产生0-9999的顺序码。
查询任务4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
在开机、断线重连情况下音柱终端发起;服务端根据当前终端是否存在播放任务返回播放广播或者当前无任务(即查询任务应答)。消息体字段如图10,每个字段的具体定义见表12所示。
图10 查询任务的消息体字段
表12 查询任务的消息体定义
序号 语法(字段名) 长度(字节) 必填 编码规则
1 业务数据类型 1 是 值为0x0A。
2 设备ID长度 1 是 设备ID的长度。
3 设备ID 单个设备ID所需的字节数 是 设备ID,ASCII编码(支持字母做设备ID)。
1.4验证数据
广播数据包验证数据部分的语法定义见表13所示。
表13 验证数据语法定义格式
序号 语法 长度(字节) 编码规则
1 数字签名信息长度 2 数字签名的总长度(如果消息头中签名标识为0,则此处序号1、2、3、4的字段都为空,即数据包中不携带)。
2 数字签名时间 4 数字签名UTC时间。
3 签名证书编号 6 签名验证需要使用的发送源数字证书编号,***范围内采用统一的***编号,证书编号48比特,采用BCD码表示的12个数字。
4 数字签名 n 数字签名数据(计算消息头和消息体)。
5 CRC32 4 数据包CRC32值,计算范围为数据包所有数据。
2、JSON格式
2.1平台下发数据
播放广播4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
字段表如下:4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
字段名 类型 必填 描述
action string 是 业务数据类型
task_number string 是 广播消息编码
streaming_url string 是 播放地址,目前采用rtsp地址
text string 否 文本信息
level int 是 事件级别。平台按照规则计算事件级别对应的整型数值,终端根据数值大小判定即可(详见附录调度规则)
volume int 否 音量,不指定则使用当前默认音量
4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
示例4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
{
"action": "play",
"task_number": "广播消息编码",
"streaming_url": "rtsp://ip:port/path",
"text": "文本内容",
"level": 3,
"volume": 8
}4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
停止广播
字段表如下:
字段名 类型 必填 描述
action string 是 业务数据类型
task_number string 是 广播消息编码
示例
{
"action": "play_stop",
"task_number": "广播消息编码",
}4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
回复播控器开播请求
字段表如下:
字段名 类型 必填 描述
action string 是 业务数据类型
allow boolean 是 true:允许开播、false:不允许
task_number string 否 广播消息编码
streaming_url string 否 开播发起后的音频推流地址
示例
{4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
"action": "record_result",
"allow":true,
"task_number": "广播消息编码",
"streaming_url": "rtsp://ip:port/xxx.sdp",
}
4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
控制设备
字段表如下:
字段名 类型 必填 描述
action string 是 业务数据类型
volume int 否 音量
run boolean 否 false:停止运行当前任务
true:继续运行
示例
{4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
"action": "control",
"volume":9,
"run":true,
}
设备升级
字段表
字段名 类型 必填 描述
action string 是 业务数据类型
version_code int 是 新版本号
md5 string 是 升级包md5校验码
download_url string 是 升级包***地址
示例4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
{
"action": "upgrade",
"version_code":3,//新版本号
"md5":"6c7b7cd1007f3324badb4637632fd3ed",
"download_url":"http://47.96.132.39:15010/n",
}4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
查询任务应答
字段表
字段名 类型 必填 描述
action string 是 业务数据类型
task [] 否 若有任务则为开播指令
示例
{4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
"action": "query_task" ,
“task”:[ 开播指令按时间降序排序]
}
2.2设备上报数据
上报设备状态(心跳包)
包括音柱和播控器,事件间隔为40s(当设备状态变化时,立即上报一次心跳包)。
字段表
字段名 类型 必填 描述
action string 是 业务数据类型
device_id string 是 设备id
status int 是 附录-设备状态
task_number string 否 广播消息编码,status = 2时携带
volume int 是 查看附录-音量
rssi int 是 信号强度
示例4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
{
"action": "update",
"device_id": "设备id",
"status": 1,
"task_number": "广播消息编码",
"volume": 1,
"rssi": 1,
}
播控器发起开播请求
字段表4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
字段名 类型 必填 描述
action string 是 业务数据类型
device_id string 是 设备ID
group_id int 否 分组编号,对应播控器上的数字按键;没有数字按键播控器不需要携带;
volume int 否 附录-音量,不指定则使用当前默认音量
示例
{
"action": "record",
"device_id": "设备ID",
"group_id": 1,
"volume": 12,
}
播控器播放结束4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
字段表
字段名 类型 必填 描述
action string 是 业务数据类型
device_id string 是 设备id
task_number string 是 广播消息编码
示例
{
"action": "record_stop",
"device_id": "设备id",
"task_number": "广播消息编码",
}
4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
查询任务
在开机、断线重连情况下音柱终端发起;服务端根据当前终端是否存在播放任务返回播放广播或者无任务(查询任务应答)
字段表
字段名 类型 必填 描述
action string 是 业务数据类型
device_id string 是 设备id
示例
{
"action": "query_task",
"device_id": "设备id",
}4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
二、对接流程
目前AEP平台支持MQTT和TCP两种方式对接,具体如下:
MQTT:采用透传方式,只支持JSON格式,将报文进行Base64编码后,放入到MQTT报文的payload结构中,采用格式{“data”:“base64编码数据”}进行发送;
TCP:根据AEP平台TCP对接方式,将报文以二进制格式放在TCP报文的业务数据中;
示例:
MQTT:4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
{
"type": 1 (二进制) / 2 (json),
”data“: base64(DES(二进制报文/json报文))
}
TCP:4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
byte[0] + DES(二进制报文/json报文)
注:byte[0]为1时标识为二进制报文;为2时标识为json报文。
注:数据下发到设备时没有标识数据类型
具体查看https:///ml#/aepuserhelp
三、音频流格式
我方平台在外网部署Darwin Stream Server开源实时流媒体播放服务器作为通知音频分发服务器,音频数据使用RTP/RTCP编码传输,传输方式支持TCP和UDP,通知音频的播控器和音柱使用RTSP协议和音频分发服务器进行通信,音频参数(音频编码:MP3,采样率:8-44.1KHz、码率:32/64kbps);
(获取音频分发服务器地址的协议为播放广播-拉流、回复播控器开播请求-推流);
音频分发流程如下图11所示:
图11 音频分发流程
四、整体架构
用户可通过web平台和手机APP,通过AEP平台实现各种业务。终端设备通过加***服务器取得密钥进行登录;传输加密数据和平台进行安全通信;通过部署的流媒体服务器进行推流和拉流。系统的整体架构如图12所示。
图12 整体架构
附录
音量
音量范围0-100,如果开播任务中携带了volume字段为0-100,则音柱使用该音量进行播放,如果开播任务中不含该字段或者该字段值为任意其他值,则音柱使用默认音量(设备音量)进行播放;
设备状态
值 描述
1 待机
2 播放
信号强度
信号强度范围为0-5,每个等级详细说明见下表,2级以上能正常播放,1级心跳包可上报,但有断网和卡顿的风险。
信号强度(级) 说明 备注
5 HIGHEST 信号满格
4 GREAT 信号***
3 GOOD 信号良好
2 MODERATE 信号正常
1 POOR 信号较弱,心跳包可上报,有断网和卡顿的风险
0 NONE_OR_UNKNOWN 没有信号,由于无法上报,设备侧保存即可
广播消息编码4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
二进制:18位数字码,采用压缩型BCD编码,9字节。通过广播消息编码区别其他的广播消息。编码规则:日期(14位)+顺序码(4位),日期格式为YYYY-MM-DD HH:mm:ss,YYYY表示年,MM表示月,DD表示日, 后面为时分秒;顺序码按时间更新,每秒可产生0-9999的顺序码;
JSON: 日期14字节+ 顺序码4字节(编码规则同二进制,不使用BCD编码)。
通知播放调度规则
平台根据计算规则计算出整型数值标识事件等级,终端方直接根据该数值大小进行调度即可。
平台计算规则:通知等级分为4级,1-4,1优先级***高,4优先级***低;
分组等级为纯数字,范围1-255,数值越大代表优先级越大;
事件级别 = (4-通知等级)*255+分组等级
终端判断规则为:事件级别对应的整型数值越大则优先级越高;
优先级调度规则为下几点4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂:
1、 优先级高的通知优先播放;
2、 在通知播放过程中接收到优先级高的通知,需要立即插播优先级高的通知,待插播完成后继续播放原来未播放完成的通知;
3、 在通知播放过程中接收到相同优先级或优先级低的通知,将该通知加入待播放队列,待当前通知播放完成后从队列中取出播放;
设备二维码创建规则
明文内容:厂商ID+自定义序列号(即设备id去掉aep产品id)
密文内容:Base64(AES-128-ECB(明文内容))
AES-128-ECB的key:IP09_io45m08LkHg 填充方式:PKCS5Padding
注:在saas门户添加设备时,同样是使用厂商ID+序列号注册。
设备ID命名规则
设备ID命名统一规范如下:
aep产品id(8字节)+厂商id(4字节)+自定义序列号(6字节)
备注:厂商id若位数不够前面补零;序列号每个字节位字母、数字均可。4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
厂商 设备类型 厂商id
康通 播控器 0136
音柱 0137
收扩机 0138
新大陆 播控器 0067
音柱 0066
收扩机 0068
贝特 播控器 0183
音柱 0182
收扩机 0184
日海 播控器 0001
音柱 0002
收扩机 0003
赛达 播控器 0004
音柱 0005
收扩机 0006
湖山 播控器 0007
音柱 0008
收扩机 0009
卡尔 播控器 0010
音柱 0011
收扩机 0012
德芯 播控器 0013
音柱 0014
收扩机 0015
注:aep产品id为各厂商公***品的id;厂商id除了康通、新大陆、贝特外,后面新增厂商id依次递增。
版本号
版本号为int值,每次升级加1
CRC32校验算法
使用CRC32(而非CRC/MPEF-2),
多项式:04C11DB7
临时加密方案4G物联网网络功放,5G/4G网络功放厂家4G物联网平台音响功放喇叭厂4G物联网网络功放,5G/4G网络功放厂
出于安全考虑,终端和平台通信的数据包都要经过加密,由于AEP平台目前暂时未上线***2、***3、***9等加密功能,因此采取了临时加密的过渡方案如下:平台和终端通过预先协商好的DES密钥进行数据加密,加密数据包括所有的上报数据和下发数据。
备注:DES的加密模式和填充方式:ECB和KCS5Padding。