From: snickersun Date: Tue, 1 Sep 2020 00:08:48 +0000 (+0800) Subject: protocol mqtt X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=f027f386aa875216ca7e3b095b308b6ab7b79190;p=protocol_srv.git protocol mqtt 添加健康数据上报兼容 --- diff --git a/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java b/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java index e3e9d383..1c60f9ae 100644 --- a/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java +++ b/app/src/main/java/com/enqualcomm/support/service/HeartRateManager.java @@ -118,9 +118,9 @@ public class HeartRateManager extends AbstractInvokeHandlerService implements Se //因为协议中没有时间变量,所以只能实时传输,如果恰巧没有网络也只能丢弃,有时间变量的话,可以考虑通过deliver的buffer来进行缓存发送 if (connection.isServerConnected()) { if(PPGDATA==null){ - StringMessage ppgd=protocolAPIHelper.getPPG_MSG(runtime.getHRS().getPPG()); - StringMessage bloodd=protocolAPIHelper.getBlood_MSG( runtime.getHRS().getBPH(), runtime.getHRS().getBPL()); - StringMessage oxd=protocolAPIHelper.getOxygen_MSG(runtime.getHRS().getSpo2()); + StringMessage ppgd=protocolAPIHelper.getPPG_MSG(runtime.getHRS().getPPG(),runtime); + StringMessage bloodd=protocolAPIHelper.getBlood_MSG( runtime.getHRS().getBPH(), runtime.getHRS().getBPL(),runtime); + StringMessage oxd=protocolAPIHelper.getOxygen_MSG(runtime.getHRS().getSpo2(),runtime); connection.send( ppgd); connection.send(bloodd); connection.send( oxd); @@ -418,9 +418,9 @@ public static void triggerPPGtest(){ if (connection.isServerConnected()) { StringMessage PPGDATA = protocolAPIHelper.getPPG_ECG_MSG(Integer.parseInt(ppg), Integer.parseInt(bph), Integer.parseInt(bpl), Integer.parseInt(spo2)); if(PPGDATA==null){ - StringMessage ppgd=protocolAPIHelper.getPPG_MSG(Integer.parseInt(ppg)); - StringMessage bloodd=protocolAPIHelper.getBlood_MSG( Integer.parseInt(bph), Integer.parseInt(bpl)); - StringMessage oxd=protocolAPIHelper.getOxygen_MSG(Integer.parseInt(spo2)); + StringMessage ppgd=protocolAPIHelper.getPPG_MSG(Integer.parseInt(ppg),runtime); + StringMessage bloodd=protocolAPIHelper.getBlood_MSG( Integer.parseInt(bph), Integer.parseInt(bpl),runtime); + StringMessage oxd=protocolAPIHelper.getOxygen_MSG(Integer.parseInt(spo2),runtime); connection.send( ppgd); connection.send(bloodd); connection.send( oxd); diff --git a/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java b/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java index 39db0d3c..f672bed2 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java +++ b/app/src/main/java/com/enqualcomm/support/utils/ProcessReceiver.java @@ -394,7 +394,7 @@ public class ProcessReceiver extends BroadcastReceiver { }else if (ACTION_TEMP_RESULT.equals(str)) { double wrist_temp = paramIntent.getDoubleExtra(KEY_TEMP_WRIST, 0.0f); double body_temp = paramIntent.getDoubleExtra(KEY_TEMP_BODY, 0.0f); - StringMessage temperatureMsg = protocolAPIHelper.getTemperatureMSG(wrist_temp, body_temp); + StringMessage temperatureMsg = protocolAPIHelper.getTemperatureMSG(wrist_temp, body_temp,null); ICLogger.i("发送体温测量值 " + temperatureMsg.isFromCache()); Deliver.sendLocationMSG(temperatureMsg); }else if (ACTION_SET_SIT_RANGE.equals(str)) { diff --git a/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java b/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java index 58a66142..8143b07b 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java +++ b/app/src/main/java/com/enqualcomm/support/utils/TemperatureUtil.java @@ -71,7 +71,7 @@ public class TemperatureUtil { body_temp=TemperatureUtil.getBodyTemp(wrist_temp,26.0f); ICJniUtils.disableTemperature(); - StringMessage temperatureMsg= protocolAPIHelper.getTemperatureMSG(wrist_temp, body_temp); + StringMessage temperatureMsg= protocolAPIHelper.getTemperatureMSG(wrist_temp, body_temp,null); CoreService.getInstance().getConnection().send(temperatureMsg); ICLogger.i("发送体温测量值 "+temperatureMsg.isFromCache()); @@ -99,7 +99,7 @@ public class TemperatureUtil { wrist_temp=TemperatureUtil.get_temp_value_adjusted(); body_temp=TemperatureUtil.getBodyTemp(wrist_temp,26.0f); - StringMessage temperatureMsg= protocolAPIHelper.getTemperatureMSG(wrist_temp, body_temp); + StringMessage temperatureMsg= protocolAPIHelper.getTemperatureMSG(wrist_temp, body_temp,null); CoreService.getInstance().getConnection().send(temperatureMsg); ICLogger.i("发送体温测量值 "+temperatureMsg.isFromCache()); diff --git a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java index c1dfa7a1..9b12b001 100644 --- a/app/src/main/java/com/ic/protocols/protocolAPIHelper.java +++ b/app/src/main/java/com/ic/protocols/protocolAPIHelper.java @@ -1,6 +1,7 @@ package com.ic.protocols; import com.enqualcomm.support.Config; +import com.enqualcomm.support.CoreService; import com.enqualcomm.support.bean.Runtime; import com.enqualcomm.support.bean.SleepInfo; import com.enqualcomm.support.bean.StringMessage; @@ -131,8 +132,14 @@ public class protocolAPIHelper { return ret; } - public static StringMessage getTemperatureMSG(double temp_adusted,double body_temp){ + public static StringMessage getTemperatureMSG(double temp_adusted,double body_temp,Runtime runtime){ if (is_protocol_not_Initialled()) return null; + if (CoreService.getInstance()!=null && runtime==null){ + runtime=CoreService.getInstance().getRuntime(); + }else{ + ICLogger.i("Runtime == null !"); + return null; + } StringMessage ret=null; switch(Config.protocol_no) { @@ -149,7 +156,7 @@ public class protocolAPIHelper { ret=protocol_fzd.temp(body_temp); break; case Config.PROTOCOL_MQTT: - ret=null; + ret=protocol_mqtt.temp(body_temp,runtime);; break; } return ret; @@ -343,8 +350,14 @@ public class protocolAPIHelper { return ret; } - public static StringMessage getBlood_MSG(int pbh, int pbl){ + public static StringMessage getBlood_MSG(int pbh, int pbl,Runtime runtime){ if (is_protocol_not_Initialled()) return null; + if (CoreService.getInstance()!=null && runtime==null){ + runtime=CoreService.getInstance().getRuntime(); + }else{ + ICLogger.i("Runtime == null !"); + return null; + } StringMessage ret=null; switch(Config.protocol_no) { @@ -361,14 +374,20 @@ public class protocolAPIHelper { ret=protocol_fzd.blood(pbl,pbh); break; case Config.PROTOCOL_MQTT: - ret=null;//protocol_mqtt.blood(pbl,pbh); + ret=protocol_mqtt.blood(pbl,pbh,runtime); break; } return ret; } - public static StringMessage getOxygen_MSG(int ox){ + public static StringMessage getOxygen_MSG(int ox,Runtime runtime){ if (is_protocol_not_Initialled()) return null; + if (CoreService.getInstance()!=null && runtime==null){ + runtime=CoreService.getInstance().getRuntime(); + }else{ + ICLogger.i("Runtime == null !"); + return null; + } StringMessage ret=null; switch(Config.protocol_no) { @@ -385,13 +404,19 @@ public class protocolAPIHelper { ret=protocol_fzd.oxygen(ox); break; case Config.PROTOCOL_MQTT: - ret=null;//protocol_mqtt.oxygen(ox); + ret=protocol_mqtt.oxygen(ox,runtime); break; } return ret; } - public static StringMessage getPPG_MSG(int ppg){ + public static StringMessage getPPG_MSG(int ppg,Runtime runtime){ if (is_protocol_not_Initialled()) return null; + if (CoreService.getInstance()!=null && runtime==null){ + runtime=CoreService.getInstance().getRuntime(); + }else{ + ICLogger.i("Runtime == null !"); + return null; + } StringMessage ret=null; switch(Config.protocol_no) { @@ -408,7 +433,7 @@ public class protocolAPIHelper { ret=protocol_fzd.heart(ppg); break; case Config.PROTOCOL_MQTT: - ret=null;//protocol_mqtt.heart(ppg); + ret=protocol_mqtt.heart(ppg,runtime); break; } return ret; diff --git a/app/src/main/java/com/ic/protocols/protocol_mqtt.java b/app/src/main/java/com/ic/protocols/protocol_mqtt.java index 859ebb33..1400e49e 100644 --- a/app/src/main/java/com/ic/protocols/protocol_mqtt.java +++ b/app/src/main/java/com/ic/protocols/protocol_mqtt.java @@ -705,7 +705,6 @@ public class protocol_mqtt { * 消息下发到指定手表(MSGDOWN) * 平台发布(终端订阅): * 平台向“WBG100/v1/ID_手表IMEI/MSGDOWN”的主题发布 [LEN,包序号,具体消息] - * 具体消息采用 Unicode 编码下发给终端,例如,“你好”转为Unicode通常为“\u4f60\u597d”,实际传输要去掉\u,即传输具体消息为“4f60597d” * * 终端订阅“WBG100/v1/ID_手表IMEI/+”的主题列表,判断子主题是否为MSGDOWN *