icann官方网站,广州企业网站设计公司,昆明公司网站制作,贵州做网站功能说明
本文将以JavaScript代码为实例#xff0c;讲解如何通过JavaScript代码调用博灵语音通知终端 A4实现声光语音告警。主要博灵语音通知终端如何实现无线循环播报或者周期播报的功能。 本代码实现HTTP接口的声光语音播报#xff0c;并指定循环次数、播报内容。由于通知…功能说明
本文将以JavaScript代码为实例讲解如何通过JavaScript代码调用博灵语音通知终端 A4实现声光语音告警。主要博灵语音通知终端如何实现无线循环播报或者周期播报的功能。 本代码实现HTTP接口的声光语音播报并指定循环次数、播报内容。由于通知终端采用TTS语音合成技术所以本次案例中无需预先录制音频。
代码实战
为了通过JavaScript调用博灵语音通知终端实现HTTP方式调用声光语音报警首先需要配置JavaScript环境。
本文使用的环境为
Chrome浏览器关闭CROS以便支持跨站链接ES6及以上环境
闲话少说直接看代码
注意本代码仅展示了关于Ajax 部分的请求部分签名计算部分需要参考·说明书文档·来使用。 也可以参考官方Demo中对于Postman的签名计算方式实现一键请求。
var notify_desc 默认;
var tts_text 测试;
var sign c2ffd2c025dfbfd5a31dac396dd5ce0c;
var time 1725506055;// 创建FormData对象
var formData new FormData();
formData.append(notify_desc, notify_desc);
formData.append(tts_text, tts_text);
formData.append(time, time);
formData.append(sign, sign);// 发送POST请求
fetch(http://192.168.0.66/api/api/not_stop_repeat_alarm, {method: POST,body: formData
})
.then(response response.json()) // 解析响应为JSON
.then(data console.log(data)) // 打印响应数据
.catch(error console.error(Error:, error));这部分代码直接复制到控制台即可使用。
关于Postman的签名自校验算法代码
由于HTTP的语音播报demo中提供了一键请求方法这部分功能又Postman的Scripts实现可以实现请求前对请求体进行修改。详情见下图 自签名校验部分的代码如下
let sign_time parseInt(new Date().valueOf() / 1000);
pm.environment.set(sign_time, sign_time);if(pm.request.method GET){// 遍历Get Parametervar query_params pm.request.url.query.all();var sign_data {};query_params.each(function(param){if( !param.disabled ) {sign_data[ param.key ] param.value;}});
}else{sign_data request.data;
}sign_data[token] pm.collectionVariables.get(token);
sign_data[time] sign_time;let keys Object.keys(sign_data);
keys.sort();
sign_temp ;
for (let i in keys){if(keys[i] sign) continue;// 此处原本的reqdate的time是{{time}}需要处理if(keys[i] time){sign_temp time sign_time;continue;}sign_temp keys[i] sign_data[keys[i]];
}
console.log(sign_temp);
let sign CryptoJS.MD5(sign_temp).toString();
pm.environment.set(sign, sign);周期播报接口说明
博灵语音通知终端A4支持通过HTTP调用接口或者通过云端调用接口实现循环播报同时可以允许用户通过按钮清空周期循环播报功能。 周期循环播报为间隔性质的播报隔几分钟播报一次播报n次后停止。 周期接口说明如下 请求地址 http://报警灯IP地址/api/api/set_api_repeat_alarm 请求方法POST form-data 请求参数如下
参数名类型说明notify_descstring通知组tts_textstring语音播报内容
其中通知组名为设备管理页面中需要配置的通知组。通知组负责管理这个告警的播报样式提示音重复次数,播报间隔。
所以如果需要使用自定义样式需要提前设置
无限循环播报接口说明
无限循环播报的接口与周期播报相似不同之处在于没有间隔和次数限制会不停的播报直到手动取消 请求地址http://报警灯IP地址/api/api/not_stop_repeat_alarm 请求方法POST form-data 请求参数如下
参数名类型说明notify_descstring通知组tts_textstring语音播报内容
效果演示 Modbus-博灵语音通知终端与PLC联动告警介绍 Api文档参考链接以及错误码详解
参见博灵通知终端A4的说明书
产品参数说明
语音报警应用场景范围以及限制
由于该功能属于无限循环播报需要严格遵守使用场景的限制防止产生告警风暴。对于工业场所用到组态管理软件例如组态王等情况下当出现停机时需要实现语音循环播报。又或者在医疗机构中的信息化管理系统需要通过使用循环播报功能来提醒患者或医生实现操作。 此时需要实现无限循环播报以及周期播报直到用户进行确认才可以停止播报。 业务限制范围MIS系统、ERP系统 关键业务告警、BPM系统 重要业务流程告警、动力环境监测系统 传感器故障告警、服务器监控平台 性能故障告警、工单系统 新工单告警、合规监控平台 违规操作告警、OA系统 重要事项待处理告警、工业化监控平台 重要信息告警。