修复不在控制页时收到蓝牙消息,进入设备页后未同步显示的问题
This commit is contained in:
@ -779,23 +779,23 @@ class BleHelper {
|
|||||||
str: str,
|
str: str,
|
||||||
hexs: hexs
|
hexs: hexs
|
||||||
};
|
};
|
||||||
console.log("监听到特征值:" + JSON.stringify(recData));
|
// console.log("监听到特征值:",recData);
|
||||||
if (this.cfg.receivDataCallback) {
|
if (this.cfg.receivDataCallback) {
|
||||||
|
|
||||||
if (this.cfg.receivDataCallback.length > 0) {
|
if (this.cfg.receivDataCallback.length > 0) {
|
||||||
|
|
||||||
console.log("有人订阅消息")
|
// console.log("有人订阅消息")
|
||||||
this.cfg.receivDataCallback.forEach((
|
this.cfg.receivDataCallback.forEach((
|
||||||
rec) => {
|
rec) => {
|
||||||
console.log("有人订阅消息111", )
|
// console.log("有人订阅消息111", )
|
||||||
if (rec.callback) {
|
if (rec.callback) {
|
||||||
try {
|
try {
|
||||||
console.log("正在处理订阅消息",rec);
|
// console.log("正在处理订阅消息",rec);
|
||||||
rec.callback(recData, f,
|
rec.callback(recData, f,
|
||||||
rec.key, this.cfg
|
rec.key, this.cfg
|
||||||
.receivDataCallback
|
.receivDataCallback
|
||||||
);
|
);
|
||||||
console.log("处理订阅消息完毕");
|
// console.log("处理订阅消息完毕");
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error(
|
console.error(
|
||||||
"订阅消息出现异常",
|
"订阅消息出现异常",
|
||||||
|
|||||||
@ -49,20 +49,20 @@ class BleReceive {
|
|||||||
let handler = null;
|
let handler = null;
|
||||||
let keys = Object.keys(this.HandlerMap);
|
let keys = Object.keys(this.HandlerMap);
|
||||||
let devKey = f.device.detailPageUrl ? f.device.detailPageUrl.replace(/\//g, '').toLowerCase() : '';
|
let devKey = f.device.detailPageUrl ? f.device.detailPageUrl.replace(/\//g, '').toLowerCase() : '';
|
||||||
// console.log("查找handler - detailPageUrl:", f.device.detailPageUrl, "转换后:", devKey);
|
|
||||||
for (let index = 0; index < keys.length; index++) {
|
for (let index = 0; index < keys.length; index++) {
|
||||||
let devKey = f.device.detailPageUrl ? f.device.detailPageUrl.replace(/\//g, "").toLowerCase() : '';
|
let devKey = f.device.detailPageUrl ? f.device.detailPageUrl.replace(/\//g, "").toLowerCase() : '';
|
||||||
let key = keys[index].replace(/\//g, '').toLowerCase();
|
let key = keys[index].replace(/\//g, '').toLowerCase();
|
||||||
if (key == devKey) {
|
if (key == devKey) {
|
||||||
handler = this.HandlerMap[keys[index]];
|
handler = this.HandlerMap[keys[index]];
|
||||||
// console.log("找到匹配的handler:", keys[index]);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (handler) {
|
if (handler) {
|
||||||
let data = handler(receive, f, path, recArr);
|
let data = handler(receive, f, path, recArr);
|
||||||
// console.log("设备"+f.device.deviceName+"收到消息,数据:", data);
|
this.setBleFormData(data, f);
|
||||||
return data;
|
return data;
|
||||||
} else {
|
} else {
|
||||||
console.error("已收到消息,但无指定处理程序, deviceUrl:", f.device.detailPageUrl, "可用handlers:", keys);
|
console.error("已收到消息,但无指定处理程序, deviceUrl:", f.device.detailPageUrl, "可用handlers:", keys);
|
||||||
@ -159,7 +159,7 @@ class BleReceive {
|
|||||||
formData.modeCurr = modeCurr;
|
formData.modeCurr = modeCurr;
|
||||||
formData.warnLevel = warn;
|
formData.warnLevel = warn;
|
||||||
formData.iswarn = iswarn;
|
formData.iswarn = iswarn;
|
||||||
this.setBleFormData(formData, f);
|
|
||||||
|
|
||||||
let recCnt = recArr.find(v => {
|
let recCnt = recArr.find(v => {
|
||||||
return v.key.replace(/\//g, "").toLowerCase() == f.device.detailPageUrl
|
return v.key.replace(/\//g, "").toLowerCase() == f.device.detailPageUrl
|
||||||
@ -208,7 +208,7 @@ class BleReceive {
|
|||||||
if (str.indexOf('mac address:') == 0) {
|
if (str.indexOf('mac address:') == 0) {
|
||||||
let formData = {};
|
let formData = {};
|
||||||
formData.macAddress = str.split(':')[1];
|
formData.macAddress = str.split(':')[1];
|
||||||
this.setBleFormData(formData, f);
|
|
||||||
return formData;
|
return formData;
|
||||||
} else {
|
} else {
|
||||||
let receiveData = {
|
let receiveData = {
|
||||||
@ -327,7 +327,7 @@ class BleReceive {
|
|||||||
receiveData.fourGStrenth = fourGStrenth;
|
receiveData.fourGStrenth = fourGStrenth;
|
||||||
receiveData.SOS = sosTxt;
|
receiveData.SOS = sosTxt;
|
||||||
receiveData.qzwarn = sosTxt === 'sg';
|
receiveData.qzwarn = sosTxt === 'sg';
|
||||||
this.setBleFormData(receiveData, f);
|
|
||||||
console.log("recArr=", recArr);
|
console.log("recArr=", recArr);
|
||||||
let recCnt = recArr.find(v => {
|
let recCnt = recArr.find(v => {
|
||||||
return v.key.replace(/\//g, "").toLowerCase() == f.device.detailPageUrl
|
return v.key.replace(/\//g, "").toLowerCase() == f.device.detailPageUrl
|
||||||
@ -415,8 +415,7 @@ class BleReceive {
|
|||||||
console.log('将数据转文本失败', ex);
|
console.log('将数据转文本失败', ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// console.log("todo",receiveData);
|
|
||||||
this.setBleFormData(receiveData, f);
|
|
||||||
return receiveData;
|
return receiveData;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -503,8 +502,6 @@ class BleReceive {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
this.setBleFormData(formData, f);
|
|
||||||
return formData;
|
return formData;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log('7305数据解析错误:', error);
|
console.log('7305数据解析错误:', error);
|
||||||
@ -605,8 +602,6 @@ class BleReceive {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
this.setBleFormData(formData, f);
|
|
||||||
return formData;
|
return formData;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.log('7305数据解析错误:', error);
|
console.log('7305数据解析错误:', error);
|
||||||
|
|||||||
Reference in New Issue
Block a user