-package com.ic.protocols;\r
-\r
-import com.enqualcomm.support.Config;\r
-import com.enqualcomm.support.CoreService;\r
-import com.enqualcomm.support.bean.Runtime;\r
-import com.enqualcomm.support.bean.SleepInfo;\r
-import com.enqualcomm.support.bean.StringMessage;\r
-import com.enqualcomm.support.utils.Connection;\r
-import com.enqualcomm.support.utils.ICLogger;\r
-import com.enqualcomm.support.utils.TimeUtil;\r
-\r
-\r
-public class protocolAPIHelper {\r
-\r
- private static protocol_jiai protocoljiai_handler=null;\r
- private static protocol_beehome protocolbeehome_handler=null;\r
- private static protocol_ic protocolic_handler=null;\r
- private static protocol_fzd protocolfzd_handler=null;\r
- private static protocol_mqtt protocolmqtt_handler=null;\r
-\r
- public protocolAPIHelper(Connection connect, Runtime runtime) {\r
- ICLogger.i("init Protocol "+Config.getProtocolNumber());\r
- if (protocolbeehome_handler==null)\r
- protocolbeehome_handler=new protocol_beehome(connect,runtime);\r
- if (protocoljiai_handler==null)\r
- protocoljiai_handler=new protocol_jiai(connect,runtime);\r
- if (protocolic_handler==null)\r
- protocolic_handler=new protocol_ic(connect,runtime);\r
- if (protocolfzd_handler==null)\r
- protocolfzd_handler=new protocol_fzd(connect,runtime);\r
- if (protocolmqtt_handler==null)\r
- protocolmqtt_handler=new protocol_mqtt(connect,runtime);\r
- }\r
-\r
- private static boolean is_protocol_not_Initialled(){\r
- return (protocolbeehome_handler==null || protocoljiai_handler == null || protocolic_handler==null|| protocolfzd_handler==null ||protocolmqtt_handler==null);\r
-\r
- }\r
- /*\r
- 返回true 表示 cmd 全部解析成功\r
- 返回false表示 cmd至少有一条解析失败,失败的数据归入buffer,下一次识别接着使用\r
- 字符串通过#号进行识别。\r
- 每个字符串如果发现 #,却又没有Header,“IW”则会被丢弃\r
- */\r
- public boolean parserCmd(String cmd_type,byte[] bytes) {\r
-\r
- //只要服务器收到消息,就认为服务器是联通的,保存联通的时间\r
- Runtime.lastLinkReceiveStamp=System.currentTimeMillis();\r
-\r
- if (is_protocol_not_Initialled()) return false;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- protocoljiai_handler.parserCmd(bytes);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- protocolbeehome_handler.parserCmd(bytes);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- protocolic_handler.parserCmd(bytes);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- protocolfzd_handler.parserCmd(bytes);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- protocolmqtt_handler.parserCmd(cmd_type,bytes);\r
- break;\r
- }\r
- return true;\r
- }\r
- public static StringMessage genStringMessage(String cmdName, byte[] rawdata){\r
- StringMessage sm=new StringMessage(new String[]{cmdName,new String(rawdata) });\r
- sm.setDate(TimeUtil.getSystemDateYYMMDD(),TimeUtil.getSystemTimeHHmmss());\r
- return sm;\r
- }\r
- public static StringMessage genStringMessage(String cmdName, String msg){\r
- StringMessage sm=new StringMessage(new String[]{cmdName,msg});\r
- sm.refresh(msg);\r
- sm.setDate(TimeUtil.getSystemDateYYMMDD(),TimeUtil.getSystemTimeHHmmss());\r
- return sm;\r
- }\r
-\r
- /***\r
- * its only used for message sending by mConnection.DeliverCMDMessageToSystem\r
- * @param msg\r
- * @return\r
- */\r
- public static String isCmdStr(StringMessage msg){\r
- if(msg==null)\r
- ICLogger.i("isCmdStr StringMessage is null");\r
- if (is_protocol_not_Initialled()) {\r
- ICLogger.i("isCmdStr is_protocol_not_Initialled ");\r
- return "";\r
- }\r
- String ret="";\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.isCmdStr(msg.isFromCache());\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.isCmdStr(msg.isFromCache());\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.isCmdStr(msg.isFromCache());\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.isCmdStr(msg.isFromCache());\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.isCmdStr(msg);\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getBindingMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.PING();\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.LGZONE(runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getSyncTimeMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.LGZONE(runtime);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getTemperatureMSG(double temp_adusted,double body_temp,double tempout,Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- if (runtime==null){\r
- if (CoreService.getInstance()!=null)\r
- runtime=CoreService.getInstance().getRuntime();\r
- else\r
- {\r
- ICLogger.i("Runtime == null !");\r
- return null;\r
- }\r
- }\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.AP50(runtime);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.APTP(temp_adusted,body_temp);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.APTP(temp_adusted,body_temp,tempout);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.temp(body_temp);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.temp(body_temp,runtime);;\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getChargingMSG(int charging){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- break;\r
- case Config.PROTOCOL_IC:\r
- if(Config.custom_name.equals("VitracK"))\r
- ret=protocol_ic.APCH(charging);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getWarningMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- runtime.dumpDevStatus();\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.AP10(runtime);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.AP10(runtime);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.AP10(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.AL(runtime);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.AL(runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getLoginMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.AP00(runtime);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.AP00(runtime);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.AP00(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.LK();\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.BREQ(runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getHeartbeatMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.AP03(runtime);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.AP03(runtime);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.AP03(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.KA(runtime);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.KA(runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getGPSLocationMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.AP01(runtime);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.AP01(runtime);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.AP01(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.UD(runtime);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.UD(runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getLBSLocationMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.AP02(runtime);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.AP02(runtime);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.AP02(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.UD(runtime);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.UD(runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static byte[] getVoicePacketItem(String packetTime,int count,int index,int datalen,byte[] amrdata,int filetype,int datatype){\r
- byte[] ret=null;\r
- if (is_protocol_not_Initialled()) return null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.AP07(packetTime,count,index,datalen,amrdata);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.AP07(packetTime,count,index,datalen,amrdata);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- /***\r
- * * 1 语音—— 1.监听语音 * 2.SOS语音 * 3.扩展\r
- * * 2 图片—— 1.签到图片 * 2.指令图片 * 3.设备图片 * 4.扩展\r
- */\r
- if(filetype==1 && datatype==3){\r
- //对讲用的类型\r
- ret=protocol_ic.AP07(packetTime,count,index,datalen,amrdata);\r
- }else {\r
- ret = protocol_ic.APTU(packetTime, filetype, datatype, count, index, datalen, amrdata);\r
- }\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;//protocol_fzd.AP07(packetTime,count,index,datalen,amrdata);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;//protocol_fzd.AP07(packetTime,count,index,datalen,amrdata);\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getPPG_ECG_MSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.APHP(runtime);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.APHP(runtime);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret = protocol_ic.APHP(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getPPG_ECG_MSG(int ppg,int bph,int bpl){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.APHT(ppg,bph,bpl);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.APHT(ppg,bph,bpl);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.APHT(ppg,bph,bpl);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getBlood_MSG(int pbh, int pbl,Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- if (runtime==null){\r
- if (CoreService.getInstance()!=null)\r
- runtime=CoreService.getInstance().getRuntime();\r
- else\r
- {\r
- ICLogger.i("Runtime == null !");\r
- return null;\r
- }\r
- }\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.blood(pbl,pbh);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.blood(pbl,pbh,runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getOxygen_MSG(int ox,Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- if (runtime==null){\r
- if (CoreService.getInstance()!=null)\r
- runtime=CoreService.getInstance().getRuntime();\r
- else\r
- {\r
- ICLogger.i("Runtime == null !");\r
- return null;\r
- }\r
- }\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.oxygen(ox);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.oxygen(ox,runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getPPG_MSG(int ppg,Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- if (runtime==null){\r
- if (CoreService.getInstance()!=null)\r
- runtime=CoreService.getInstance().getRuntime();\r
- else\r
- {\r
- ICLogger.i("Runtime == null !");\r
- return null;\r
- }\r
- }\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.heart(ppg);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.heart(ppg,runtime);\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getPPG_ECG_MSG(int ppg,int bph,int bpl,int spo2,Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
-\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.APHP(ppg,bph,bpl,spo2);\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.APHP(ppg,bph,bpl,spo2);\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret = protocol_ic.APHP(ppg, bph, bpl, spo2);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getWeatherMSG(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
-\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.APWT();\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret = protocol_ic.APTQ(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static String getDefaultServerIP(){\r
-\r
- String ret="";\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.defaultServerIP;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.defaultServerIP;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.defaultServerIP;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.defaultServerIP;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.defaultServerIP;\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static int getDefaultServerPort(){\r
-\r
- int ret=8090;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocol_jiai.defaultServerPort;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=protocol_beehome.defaultServerPort;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret=protocol_ic.defaultServerPort;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.defaultServerPort;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=protocol_mqtt.defaultServerPort;\r
- break;\r
- }\r
- return ret;\r
- }\r
- public static StringMessage getSleepMSG(SleepInfo sr,Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- if(Config.getProtocolServerHost(runtime.getContextProxy().context).equals(protocol_jiai.defaultServerIP))\r
- {\r
- ret=null;\r
- }else {\r
- ret = protocol_ic.APSL(sr.getCurrentDate(), sr.getDeepsleep_minutes(), sr.getLightsleep_minutes(), sr.getScore());\r
- }\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getPushTxtReadFlagToSrvMSG(Runtime runtime ){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=protocoljiai_handler.AP94();\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- if(Config.getProtocolServerHost(runtime.getContextProxy().context).equals(protocol_jiai.defaultServerIP))\r
- {\r
- ret=protocolic_handler.AP94();;\r
- }else {\r
- ret = null;\r
- }\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getPRACTICE(){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret = null;\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=protocol_fzd.PRACTICE(Runtime.healthInfo);\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
-\r
- public static StringMessage getBLEScanResult(Runtime runtime){\r
- if (is_protocol_not_Initialled()) return null;\r
- StringMessage ret=null;\r
- switch(Config.protocol_no)\r
- {\r
- case Config.PROTOCOL_JIAI:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_BEEHOME:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_IC:\r
- ret = protocol_ic.APBR(runtime);\r
- break;\r
- case Config.PROTOCOL_FZD:\r
- ret=null;\r
- break;\r
- case Config.PROTOCOL_MQTT:\r
- ret=null;\r
- break;\r
- }\r
- return ret;\r
- }\r
-}\r
+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;
+import com.enqualcomm.support.utils.Connection;
+import com.enqualcomm.support.utils.ICLogger;
+import com.enqualcomm.support.utils.TimeUtil;
+
+
+public class protocolAPIHelper {
+
+ private static protocol_jiai protocoljiai_handler=null;
+ private static protocol_beehome protocolbeehome_handler=null;
+ private static protocol_ic protocolic_handler=null;
+ private static protocol_fzd protocolfzd_handler=null;
+ private static protocol_mqtt protocolmqtt_handler=null;
+
+ public protocolAPIHelper(Connection connect, Runtime runtime) {
+ ICLogger.i("init Protocol "+Config.getProtocolNumber());
+ if (protocolbeehome_handler==null)
+ protocolbeehome_handler=new protocol_beehome(connect,runtime);
+ if (protocoljiai_handler==null)
+ protocoljiai_handler=new protocol_jiai(connect,runtime);
+ if (protocolic_handler==null)
+ protocolic_handler=new protocol_ic(connect,runtime);
+ if (protocolfzd_handler==null)
+ protocolfzd_handler=new protocol_fzd(connect,runtime);
+ if (protocolmqtt_handler==null)
+ protocolmqtt_handler=new protocol_mqtt(connect,runtime);
+ }
+
+ private static boolean is_protocol_not_Initialled(){
+ return (protocolbeehome_handler==null || protocoljiai_handler == null || protocolic_handler==null|| protocolfzd_handler==null ||protocolmqtt_handler==null);
+
+ }
+ /*
+ 返回true 表示 cmd 全部解析成功
+ 返回false表示 cmd至少有一条解析失败,失败的数据归入buffer,下一次识别接着使用
+ 字符串通过#号进行识别。
+ 每个字符串如果发现 #,却又没有Header,“IW”则会被丢弃
+ */
+ public boolean parserCmd(String cmd_type,byte[] bytes) {
+
+ //只要服务器收到消息,就认为服务器是联通的,保存联通的时间
+ Runtime.lastLinkReceiveStamp=System.currentTimeMillis();
+
+ if (is_protocol_not_Initialled()) return false;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ protocoljiai_handler.parserCmd(bytes);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ protocolbeehome_handler.parserCmd(bytes);
+ break;
+ case Config.PROTOCOL_IC:
+ protocolic_handler.parserCmd(bytes);
+ break;
+ case Config.PROTOCOL_FZD:
+ protocolfzd_handler.parserCmd(bytes);
+ break;
+ case Config.PROTOCOL_MQTT:
+ protocolmqtt_handler.parserCmd(cmd_type,bytes);
+ break;
+ }
+ return true;
+ }
+ public static StringMessage genStringMessage(String cmdName, byte[] rawdata){
+ StringMessage sm=new StringMessage(new String[]{cmdName,new String(rawdata) });
+ sm.setDate(TimeUtil.getSystemDateYYMMDD(),TimeUtil.getSystemTimeHHmmss());
+ return sm;
+ }
+ public static StringMessage genStringMessage(String cmdName, String msg){
+ StringMessage sm=new StringMessage(new String[]{cmdName,msg});
+ sm.refresh(msg);
+ sm.setDate(TimeUtil.getSystemDateYYMMDD(),TimeUtil.getSystemTimeHHmmss());
+ return sm;
+ }
+
+ /***
+ * its only used for message sending by mConnection.DeliverCMDMessageToSystem
+ * @param msg
+ * @return
+ */
+ public static String isCmdStr(StringMessage msg){
+ if(msg==null)
+ ICLogger.i("isCmdStr StringMessage is null");
+ if (is_protocol_not_Initialled()) {
+ ICLogger.i("isCmdStr is_protocol_not_Initialled ");
+ return "";
+ }
+ String ret="";
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.isCmdStr(msg.isFromCache());
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.isCmdStr(msg.isFromCache());
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.isCmdStr(msg.isFromCache());
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.isCmdStr(msg.isFromCache());
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.isCmdStr(msg);
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getBindingMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret=null;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.PING();
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.LGZONE(runtime);
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getSyncTimeMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret=null;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.LGZONE(runtime);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getTemperatureMSG(double temp_adusted,double body_temp,double tempout,Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ if (runtime==null){
+ if (CoreService.getInstance()!=null)
+ runtime=CoreService.getInstance().getRuntime();
+ else
+ {
+ ICLogger.i("Runtime == null !");
+ return null;
+ }
+ }
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.AP50(runtime);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.APTP(temp_adusted,body_temp);
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.APTP(temp_adusted,body_temp,tempout);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.temp(body_temp);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.temp(body_temp,runtime);;
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getChargingMSG(int charging){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ break;
+ case Config.PROTOCOL_IC:
+ if(Config.custom_name.equals("VitracK"))
+ ret=protocol_ic.APCH(charging);
+ break;
+ case Config.PROTOCOL_FZD:
+ break;
+ case Config.PROTOCOL_MQTT:
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getWarningMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ runtime.dumpDevStatus();
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.AP10(runtime);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.AP10(runtime);
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.AP10(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.AL(runtime);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.AL(runtime);
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getLoginMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.AP00(runtime);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.AP00(runtime);
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.AP00(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.LK();
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.BREQ(runtime);
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getHeartbeatMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.AP03(runtime);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.AP03(runtime);
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.AP03(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.KA(runtime);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.KA(runtime);
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getGPSLocationMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.AP01(runtime);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.AP01(runtime);
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.AP01(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.UD(runtime);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.UD(runtime);
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getLBSLocationMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.AP02(runtime);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.AP02(runtime);
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.AP02(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.UD(runtime);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.UD(runtime);
+ break;
+ }
+ return ret;
+ }
+
+ public static byte[] getVoicePacketItem(String packetTime,int count,int index,int datalen,byte[] amrdata,int filetype,int datatype){
+ byte[] ret=null;
+ if (is_protocol_not_Initialled()) return null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.AP07(packetTime,count,index,datalen,amrdata);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.AP07(packetTime,count,index,datalen,amrdata);
+ break;
+ case Config.PROTOCOL_IC:
+ /***
+ * * 1 语音—— 1.监听语音 * 2.SOS语音 * 3.扩展
+ * * 2 图片—— 1.签到图片 * 2.指令图片 * 3.设备图片 * 4.扩展
+ */
+ if(filetype==1 && datatype==3){
+ //对讲用的类型
+ ret=protocol_ic.AP07(packetTime,count,index,datalen,amrdata);
+ }else {
+ ret = protocol_ic.APTU(packetTime, filetype, datatype, count, index, datalen, amrdata);
+ }
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;//protocol_fzd.AP07(packetTime,count,index,datalen,amrdata);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;//protocol_fzd.AP07(packetTime,count,index,datalen,amrdata);
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getPPG_ECG_MSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ //ret=protocol_jiai.APHP(runtime);
+ ret=protocol_jiai.APHT(runtime);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.APHP(runtime);
+ break;
+ case Config.PROTOCOL_IC:
+ ret = protocol_ic.APHP(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getPPG_ECG_MSG(int ppg,int bph,int bpl){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.APHT(ppg,bph,bpl);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.APHT(ppg,bph,bpl);
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.APHT(ppg,bph,bpl);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getBlood_MSG(int pbh, int pbl,Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ if (runtime==null){
+ if (CoreService.getInstance()!=null)
+ runtime=CoreService.getInstance().getRuntime();
+ else
+ {
+ ICLogger.i("Runtime == null !");
+ return null;
+ }
+ }
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret=null;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.blood(pbl,pbh);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.blood(pbl,pbh,runtime);
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getOxygen_MSG(int ox,Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ if (runtime==null){
+ if (CoreService.getInstance()!=null)
+ runtime=CoreService.getInstance().getRuntime();
+ else
+ {
+ ICLogger.i("Runtime == null !");
+ return null;
+ }
+ }
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret=null;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.oxygen(ox);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.oxygen(ox,runtime);
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getPPG_MSG(int ppg,Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ if (runtime==null){
+ if (CoreService.getInstance()!=null)
+ runtime=CoreService.getInstance().getRuntime();
+ else
+ {
+ ICLogger.i("Runtime == null !");
+ return null;
+ }
+ }
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret=null;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.heart(ppg);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.heart(ppg,runtime);
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getPPG_ECG_MSG(int ppg,int bph,int bpl,int spo2,Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ // ret=protocol_jiai.APHP(ppg,bph,bpl,spo2);
+ ret=protocol_jiai.APHT(ppg,bph,bpl);
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.APHP(ppg,bph,bpl,spo2);
+ break;
+ case Config.PROTOCOL_IC:
+ ret = protocol_ic.APHP(ppg, bph, bpl, spo2);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getWeatherMSG(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.APWT();
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret = protocol_ic.APTQ(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+
+ public static String getDefaultServerIP(){
+
+ String ret="";
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.defaultServerIP;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.defaultServerIP;
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.defaultServerIP;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.defaultServerIP;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.defaultServerIP;
+ break;
+ }
+ return ret;
+ }
+ public static int getDefaultServerPort(){
+
+ int ret=8090;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocol_jiai.defaultServerPort;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=protocol_beehome.defaultServerPort;
+ break;
+ case Config.PROTOCOL_IC:
+ ret=protocol_ic.defaultServerPort;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.defaultServerPort;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=protocol_mqtt.defaultServerPort;
+ break;
+ }
+ return ret;
+ }
+ public static StringMessage getSleepMSG(SleepInfo sr,Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ if(Config.getProtocolServerHost(runtime.getContextProxy().context).equals(protocol_jiai.defaultServerIP))
+ {
+ ret=null;
+ }else {
+ ret = protocol_ic.APSL(sr.getCurrentDate(), sr.getDeepsleep_minutes(), sr.getLightsleep_minutes(), sr.getScore());
+ }
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getPushTxtReadFlagToSrvMSG(Runtime runtime ){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=protocoljiai_handler.AP94();
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ if(Config.getProtocolServerHost(runtime.getContextProxy().context).equals(protocol_jiai.defaultServerIP))
+ {
+ ret=protocolic_handler.AP94();;
+ }else {
+ ret = null;
+ }
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getPRACTICE(){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret = null;
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=protocol_fzd.PRACTICE(Runtime.healthInfo);
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+
+ public static StringMessage getBLEScanResult(Runtime runtime){
+ if (is_protocol_not_Initialled()) return null;
+ StringMessage ret=null;
+ switch(Config.protocol_no)
+ {
+ case Config.PROTOCOL_JIAI:
+ ret=null;
+ break;
+ case Config.PROTOCOL_BEEHOME:
+ ret=null;
+ break;
+ case Config.PROTOCOL_IC:
+ ret = protocol_ic.APBR(runtime);
+ break;
+ case Config.PROTOCOL_FZD:
+ ret=null;
+ break;
+ case Config.PROTOCOL_MQTT:
+ ret=null;
+ break;
+ }
+ return ret;
+ }
+}