From: TrillGates Date: Mon, 5 Apr 2021 07:12:06 +0000 (+0800) Subject: completed voice send. X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=4932d4081d6bb10b20c70e276c6e902605f4c28b;p=protocol_srv.git completed voice send. --- diff --git a/app/src/main/java/com/enqualcomm/support/utils/Connection.java b/app/src/main/java/com/enqualcomm/support/utils/Connection.java index 046eeba9..498a2fd6 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/Connection.java +++ b/app/src/main/java/com/enqualcomm/support/utils/Connection.java @@ -3,25 +3,28 @@ package com.enqualcomm.support.utils; import com.enqualcomm.support.bean.StringMessage; public interface Connection { - void close(); - - void connect(String paramString, int paramInt); - - void disconnect(); - boolean disconnectServer(); - - int getTimeout(); - - void open(); - - void send(StringMessage paramStringMessage); - - boolean sendBlocking(StringMessage paramStringMessage); - - void setTimeout(int paramInt); - - void DeliverCMDMessageToSystem(String cmd,String msg); - - boolean isServerConnected(); + void close(); + + void connect(String paramString, int paramInt); + + void disconnect(); + + boolean disconnectServer(); + + int getTimeout(); + + void open(); + + void send(StringMessage paramStringMessage); + + void send(String cmd, byte[] bytes); + + boolean sendBlocking(StringMessage paramStringMessage); + + void setTimeout(int paramInt); + + void DeliverCMDMessageToSystem(String cmd, String msg); + + boolean isServerConnected(); } diff --git a/app/src/main/java/com/enqualcomm/support/utils/NettyConnection.java b/app/src/main/java/com/enqualcomm/support/utils/NettyConnection.java index c014a8d3..941377bd 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/NettyConnection.java +++ b/app/src/main/java/com/enqualcomm/support/utils/NettyConnection.java @@ -310,7 +310,6 @@ public class NettyConnection implements Connection { } public void send(StringMessage msg) { - if (msg == null) { ICLogger.i(" StringMessage is null skip send!"); return; @@ -321,6 +320,12 @@ public class NettyConnection implements Connection { } + @Override + public void send(String cmd, byte[] bytes) { + ICLogger.d("cmd==> " + cmd); + sendMsg(bytes); + } + public boolean sendBlocking(StringMessage paramStringMessage) { ICLogger.i(paramStringMessage.isFromCache()); sendMsg(paramStringMessage.isFromCache()); diff --git a/app/src/main/java/com/enqualcomm/support/utils/mqttConnection.java b/app/src/main/java/com/enqualcomm/support/utils/mqttConnection.java index 00cf02e6..e8aea5cc 100644 --- a/app/src/main/java/com/enqualcomm/support/utils/mqttConnection.java +++ b/app/src/main/java/com/enqualcomm/support/utils/mqttConnection.java @@ -114,6 +114,11 @@ public class mqttConnection implements Connection { } } + @Override + public void send(String cmd, byte[] bytes) { + mqtt_client.publish(cmd, bytes); + } + @Override public boolean sendBlocking(StringMessage paramStringMessage) { send(paramStringMessage); diff --git a/app/src/main/java/com/ic/protocols/protocol_fzd.java b/app/src/main/java/com/ic/protocols/protocol_fzd.java index 4ddc6a60..28661d4e 100644 --- a/app/src/main/java/com/ic/protocols/protocol_fzd.java +++ b/app/src/main/java/com/ic/protocols/protocol_fzd.java @@ -102,17 +102,37 @@ public class protocol_fzd { //fos.close(); //以上代码,验证成功,说明转换是对的 //更新数据库状态 - - //发送消息 //TODO: + //发送消息 + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + String cmd = cmdMap.get(CMD_TYPE.TK); + int tkLength = cmd.length(); + String header = genHeader(tkLength, cmd); + StringBuilder sb = new StringBuilder(); + if (doEncryption) { + String keyHeader = keyheader(cmd, tkLength); + sb.append(CMDHEADER).append(keyHeader).append(header); + } else { + sb.append(CMDHEADER).append(header); + } + //头部构造好了,添加逗号 + sb.append(CMDSPLIT); + //转成byte + bos.write(sb.toString().getBytes()); + //追加数据 + bos.write(result); + //追加结尾 + bos.write(CMDEND.getBytes()); + mConnection.send(cmd, bos.toByteArray()); } catch (Exception e) { e.printStackTrace(); } - + //TODO: //更新状态 } } + public enum CMD_TYPE { /*终端发起*/ //链路保持数据 @@ -393,6 +413,10 @@ public class protocol_fzd { String cmdStr = new String(bytes); String[] split = cmdStr.split(","); ICLogger.d("split[0].length() == > " + split[0].length()); + if (split[1].length() == 2) { + //更新发送状态 + return; + } //处理数据 byte[] dataPackage = Util.subArray(bytes, split[0].length() + 1, bytes.length - 1); //String packageStr = new String(dataPackage); diff --git a/app/src/main/java/com/ic/protocols/protocol_mqtt_client.java b/app/src/main/java/com/ic/protocols/protocol_mqtt_client.java index d61203b4..1988ffdd 100644 --- a/app/src/main/java/com/ic/protocols/protocol_mqtt_client.java +++ b/app/src/main/java/com/ic/protocols/protocol_mqtt_client.java @@ -32,6 +32,10 @@ public class protocol_mqtt_client { topic_header = header; } + public void publish(String cmd, byte[] bytes) { + mClient.publish(cmd, bytes); + } + private class MqttCallback implements Handler.Callback { @Override public boolean handleMessage(Message msg) {