Răsfoiți Sursa

20220806 v1.0 上线版本

lifuquan 2 ani în urmă
părinte
comite
d3d8ed8376

+ 2 - 2
doc/接口文档/短信黑名单接口说明文档.md

@@ -14,14 +14,14 @@ Content-Type: application/json
 
 ## 接口2: 黑名单解除接口
 
-- 本地访问
+- 本地访问 18631137650
 
 ```http
 POST HTTP://127.0.0.1:12120/sms/blacklist/api/remove/
 Content-Type: application/json
 
 {
-    "phone": "13739798862",
+    "phone": "18631137650",
     "fromSystem": "test",
     "operator": "test01"
 }

BIN
doc/部署文档/正式环境/bin/sms_blk_api-exec.jar


+ 2 - 1
doc/部署文档/正式环境/bin/smsblk.properties

@@ -1,7 +1,8 @@
 blkServer.ipAddress=10.17.182.24
 blkServer.port=50000
+# sass2/gFdqsD13
 blkServer.systemId=sass2
-blkServer.password=HCdqs!23
+blkServer.password=gFdqsD13
 blkServer.heartbeatDelay=15000
 
 # 超时设置

+ 27 - 0
doc/部署文档/正式环境/正式环境部署文档.md

@@ -1 +1,28 @@
 # 正式环境部署文档
+
+```sh
+# 部署目录 192.168.70.130:/data1/sms_blk/
+# 启动命令 
+sh run.sh
+# 停止命令
+sh stop.sh
+
+# 12120
+```
+
+## 接口测试
+
+- 黑名单解除接口
+
+- nginx转发
+
+```http
+POST HTTP://133.96.94.108:12120/sms/blacklist/api/remove/
+Content-Type: application/json
+
+{
+    "phone": "18631137650",
+    "fromSystem": "test",
+    "operator": "test01"
+}
+```

+ 1 - 0
doc/部署文档/测试环境/测试环境部署文档.md

@@ -8,6 +8,7 @@ sh run.sh
 sh stop.sh
 
 # 为了保证能开对测试环境的访问,同时添加了在133.96.94.108上的nginx映射到12110端口
+# 打包之前需要注意修改验证条件
 ```
 
 ## 接口测试

+ 2 - 2
sms_blk_api/src/main/java/com/nokia/sms/entity/DelBlkBody.java

@@ -14,8 +14,8 @@ public class DelBlkBody {
     // blk_type 1 Unsigned Integer 否 1:主叫黑名单 固定值
     private byte blk_type = 1;
     // province_code 1 Unsigned Integer 否 黑名单的省份代码,参见附录B
-    // 河北省对应code为14,这里是黑名单省份,与号码归属无关
-    private byte province_code = 14;
+    // 河北省对应code为13,这里是黑名单省份,与号码归属无关
+    private byte province_code = 13;
 
     public DelBlkBody(String phoneNumber) {
         blkNum = phoneNumber;

+ 9 - 6
sms_blk_api/src/main/java/com/nokia/sms/message/ClientMessageUtil.java

@@ -24,7 +24,7 @@ public class ClientMessageUtil {
         // 初始化header
         MessageHeader header = new MessageHeader();
         // header 12 + body 16+20 所以是48字节
-        header.setMessageLength(48);
+        header.setMessageLength(38);
         header.setCommandId(CommandId.SMIT_BIND);
         // 所有的初始连接需要从0开始
         header.setSequenceNumber(0L);
@@ -37,12 +37,15 @@ public class ClientMessageUtil {
         // 填充systemId
         byte[] systemIdByteArray = systemId.getBytes();
         System.arraycopy(systemIdByteArray, 0, message, 12, systemIdByteArray.length);
+        // System.arraycopy(systemIdByteArray, 0, message, 28 -
+        // systemIdByteArray.length, systemIdByteArray.length);
 
         // 填充AuthCode
         String authCodeString = password + dateFormat.format(new Date());
+        System.out.println("authCodeString : " + authCodeString);
         MessageDigest digest = MessageDigest.getInstance("SHA-1");
         // sha1以后为20字节
-        System.arraycopy(digest.digest(authCodeString.getBytes()), 0, message, 28, 20);
+        System.arraycopy(digest.digest(authCodeString.getBytes()), 0, message, 18, 20);
         return message;
     }
 
@@ -54,7 +57,7 @@ public class ClientMessageUtil {
         // 初始化header
         MessageHeader header = new MessageHeader();
         // header 12 + body 21 + 1 + 1 + 1 所以是36字节
-        header.setMessageLength(36);
+        header.setMessageLength(27);
         header.setCommandId(CommandId.SMIT_DELBLK);
         // 从客户端获取下一个序号
         header.setSequenceNumber(sequenceNumber);
@@ -70,9 +73,9 @@ public class ClientMessageUtil {
         byte[] blkNumByteArray = delBlkBody.getBlkNum().getBytes();
         System.arraycopy(blkNumByteArray, 0, message, 12, blkNumByteArray.length);
         // 填充 block_type
-        message[33] = delBlkBody.getBlock_type();
-        message[34] = delBlkBody.getBlk_type();
-        message[35] = delBlkBody.getProvince_code();
+        message[24] = delBlkBody.getBlock_type();
+        message[25] = delBlkBody.getBlk_type();
+        message[26] = delBlkBody.getProvince_code();
         return message;
     }
 

+ 6 - 6
sms_blk_api/src/main/java/com/nokia/sms/service/SocketClientService.java

@@ -37,7 +37,7 @@ public class SocketClientService {
     // 0 - 4294967295 0xFFFFFFFF
     // 在进程间共享
     volatile long sequenceNumber;
-    private static final long MAX_SEQUENCE_NUMBER = 10L;
+    private static final long MAX_SEQUENCE_NUMBER = 4294967295L;
     volatile Future<?> heartbeatFuture;
 
     volatile String systemId = BlkConfig.getConfig("blkServer.systemId");
@@ -49,7 +49,7 @@ public class SocketClientService {
 
     public SocketClientService(ThreadPoolTaskScheduler socketScheduler) throws ConnectFailedException {
         this.socketScheduler = socketScheduler;
-        // connect();
+        connect();
     }
 
     /*
@@ -67,7 +67,7 @@ public class SocketClientService {
             byte[] smitDelBlk = ClientMessageUtil.getSmitDelBlkMessage(delBlkBody, sequenceNumberSend);
             outputStream.write(smitDelBlk);
             outputStream.flush();
-            log.debug("已发送解除黑名单消息 SMIT_DELBLK, 序列号: {}", sequenceNumberSend);
+            log.debug("已发送解除黑名单消息 SMIT_DELBLK, 序列号: {} -- {}", sequenceNumberSend, Arrays.toString(smitDelBlk));
             // 接收回复消息
             byte[] resp = new byte[13];
             inputStream.read(resp);
@@ -107,13 +107,13 @@ public class SocketClientService {
             byte[] smitBind = ClientMessageUtil.getSmitBindMessage(systemId, password);
             outputStream.write(smitBind);
             outputStream.flush();
-            log.debug("已发送绑定请求消息 SMIT_BIND");
+            log.debug("已发送绑定请求消息 SMIT_BIND {}", Arrays.toString(smitBind));
             // 接收回复消息
-            byte[] resp = new byte[128];
+            byte[] resp = new byte[13];
             int count = inputStream.read(resp);
             // 解析消息
             BindRespStatus status = ClientMessageUtil.parseSmitBindRespMessage(resp);
-            log.debug("收到服务器回复...长度 {} 字节, 状态: {}({})", count, status, status.status);
+            log.debug("收到服务器回复...长度 {} 字节, 状态: {}--{}", count, status, Arrays.toString(resp));
             if (BindRespStatus.SUCCESS.equals(status)) {
                 connected = true;
                 log.info("已成功与服务端建立连接,开始心跳检测");

+ 2 - 1
sms_blk_api/src/main/resources/smsblk.properties

@@ -1,7 +1,8 @@
 blkServer.ipAddress=10.17.182.24
 blkServer.port=50000
+# 账号/密码:sass2/HCdqs!23 sass2/gFdqsD13
 blkServer.systemId=sass2
-blkServer.password=HCdqs!23
+blkServer.password=gFdqsD13
 blkServer.heartbeatDelay=15000
 
 # 超时设置