北斗短报文通信服务平台
This commit is contained in:
26
app/middleware/packageBuild/packageBuild.js
Normal file
26
app/middleware/packageBuild/packageBuild.js
Normal file
@@ -0,0 +1,26 @@
|
||||
// 构造发送包,传入参数nowData和resendData
|
||||
// nowData为当前数据段,resendData为重发数据段
|
||||
// nowData和resendData都为数组,数组元素的内容为:信息类型编号 + 信息内容长度 + 信息内容
|
||||
module.exports = (app, nowData, resendData) => {
|
||||
const utils = app.middleware.utils;
|
||||
utils.intrinsic.packageNumber++;
|
||||
let now = new Date();
|
||||
let sendTime = utils.packageItem(2, now.getFullYear()) +
|
||||
utils.packageItem(1, now.getMonth() + 1) +
|
||||
utils.packageItem(1, now.getDate());
|
||||
let packageMsg = utils.packageItem(2, app.config.socketClient.id) +
|
||||
utils.packageItem(2, app.config.socketClient.destination) +
|
||||
utils.packageItem(4, utils.intrinsic.packageNumber) +
|
||||
utils.packageItem(1, nowData.length) +
|
||||
utils.packageItem(2, utils.arrItemLength(nowData)) +
|
||||
(resendData ? '01' : '00') +
|
||||
(resendData ? utils.packageItem(1, resendData.length) : '00') +
|
||||
(resendData ? utils.packageItem(2, utils.arrItemLength(resendData)) : '0000') +
|
||||
sendTime +
|
||||
utils.arrTotalItem(nowData) +
|
||||
(resendData ? sendTime : '') +
|
||||
(resendData ? utils.arrTotalItem(resendData) : '') +
|
||||
utils.intrinsic.separateIdentifiers;
|
||||
const buffer = Buffer.from(packageMsg, 'hex');
|
||||
return buffer;
|
||||
};
|
||||
Reference in New Issue
Block a user