Commit 05228773 authored by martin hou's avatar martin hou

降低进度汇报的频率,改为每5%变化一次

parent 7c52b416
......@@ -167,7 +167,12 @@ export function Home() {
}
const get_file = () => {
jensen.getFile(filename, filelength, function() {}, function() {});
jensen.getFile(filename, filelength, function(data) {
console.log('data', data.length);
}, function(recvBytes) {
let percent = Math.floor(recvBytes / filelength * 100);
console.log('progress', percent);
});
}
return (
......
......@@ -137,7 +137,7 @@ function Jensen(log) {
: device.productId == 0xb00e
? 'hidock-p1'
: device.productId == 0xb00f ? 'hidock-p1:mini' : 'unknown';
console.log('device pid: ' + device.productId);
Logger.info('jensen', 'connect', 'device pid: ' + device.productId);
} catch (e) {
Logger.error('jensen', 'setup', String(e));
}
......@@ -242,7 +242,7 @@ function Jensen(log) {
Logger.debug('jensen', 'sendNext', 'command: ' + COMMAND_NAMES[cmd.command] + ', data bytes: ' + data.byteLength);
self.timewait = cmd.command == TRANSFER_FILE || cmd.command == GET_FILE_BLOCK ? 1000 : 10;
console.log('Send', data);
// console.log('Send', data);
await device.transferOut(1, data).catch((e) => crash('sendNext', e));
if (cmd.onprogress) cmd.onprogress(1, 1);
/*
......@@ -908,11 +908,20 @@ Jensen.prototype.getFile = async function (filename, length, ondata, onprogress)
}
};
// this.onreceive = onprogress;
this._progress_report = {};
this.onreceive = function(recvBytes)
{
let percent = Math.floor(recvBytes / length);
if (percent % 10 == 9) onprogress(recvBytes);
if (percent == 100) onprogress(recvBytes);
let percent = Math.floor(recvBytes / length * 100);
let k = 't' + percent;
if (percent % 5 == 0 && percent > 0 && percent < 100)
{
this._progress_report[k] && onprogress?.(recvBytes);
this._progress_report[k] = true;
}
if (percent == 100)
{
onprogress?.(recvBytes);
}
}
Jensen.registerHandler(TRANSFER_FILE, handler);
this.send(new Command(TRANSFER_FILE).body(fname));
......@@ -1051,11 +1060,11 @@ Jensen.prototype.sendScheduleInfo = function (infos) {
const reserved = [0x00, 0x00]; // 预留
bodys = bodys.concat([...startDate, ...endDate, ...reserved, ...codes]);
}
console.log('send schedule info', infos, bodys);
// console.log('send schedule info', infos, bodys);
return this.send(new Command(SCHEDULE_INFO).body(bodys));
} else {
const bodys = new Array(52).fill(0);
console.log('send schedule info', infos, bodys);
// console.log('send schedule info', infos, bodys);
return this.send(new Command(SCHEDULE_INFO).body(bodys));
}
};
......@@ -1113,7 +1122,7 @@ Jensen.prototype.updateUAC = async function(uacFile, seconds) {
}
Jensen.registerHandler(REALTIME_CONTROL, commonMessageParser);
Jensen.registerHandler(REALTIME_READ_SETTING, (msg) => {
console.log(msg);
// console.log(msg);
return msg;
});
Jensen.registerHandler(REALTIME_TRANSFER, (msg) => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment