Skip to content

Commit

Permalink
some optimizations
Browse files Browse the repository at this point in the history
  • Loading branch information
afuerhoff committed Dec 17, 2024
1 parent 0d9ca60 commit 378a4aa
Show file tree
Hide file tree
Showing 5 changed files with 28 additions and 56 deletions.
16 changes: 6 additions & 10 deletions build/main.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions build/main.js.map

Large diffs are not rendered by default.

19 changes: 10 additions & 9 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"url": "https://github.com/afuerhoff/ioBroker.solarviewdatareader"
},
"dependencies": {
"@iobroker/adapter-core": "^3.2.2"
"@iobroker/adapter-core": "^3.2.3"
},
"devDependencies": {
"@alcalzone/release-script": "^3.8.0",
Expand All @@ -33,7 +33,7 @@
"@types/chai": "^4.3.20",
"@types/chai-as-promised": "^7.1.8",
"@types/mocha": "^10.0.10",
"@types/node": "^20.17.8",
"@types/node": "^20.17.10",
"chai": "^4.5.0",
"chai-as-promised": "^7.1.2",
"mocha": "^10.8.2",
Expand Down
41 changes: 8 additions & 33 deletions src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -513,11 +513,6 @@ class Solarviewdatareader extends utils.Adapter {
return prefixMap[dataCode] || '';
}

/*handleConnectionError(errorMessage: string): void {
this.log.error(`handleConnectionError: ${errorMessage}`);
this.setStateChanged('info.connection', { val: false, ack: true });
}*/

async handleChecksumSuccess(sv_data: string[], sv_prefix: string, response: Buffer): Promise<void> {
try {
this.chkCnt = 0;
Expand Down Expand Up @@ -574,7 +569,7 @@ class Solarviewdatareader extends utils.Adapter {
}
}

updateExtendedStates(sv_data: string[], sv_prefix: string): void {
private updateExtendedStates(sv_data: string[], sv_prefix: string): void {
this.updateState(`${sv_prefix}udc`, sv_data, 11);
this.updateState(`${sv_prefix}idc`, sv_data, 12);
this.updateState(`${sv_prefix}udcb`, sv_data, 13);
Expand All @@ -601,7 +596,7 @@ class Solarviewdatareader extends utils.Adapter {
}
}

updateState(stateName: string, sv_data: string[], index: number): void {
private updateState(stateName: string, sv_data: string[], index: number): void {
const value = Number(sv_data[index]);
this.setStateChanged(stateName, { val: value, ack: true });
}
Expand Down Expand Up @@ -665,33 +660,27 @@ class Solarviewdatareader extends utils.Adapter {
this.conn.on('close', this.onCloseHandler.bind(this));
this.conn.on('error', this.onErrorHandler.bind(this));

/*this.conn.on('error', err => {
this.log.error(`conn.on error - cmd: ${this.lastCommand} - ${err.message}`);
//this.setStateChanged('info.connection', { val: false, ack: true });
});*/

//First start
await this.setCmdQueue();

this.jobSchedule = setInterval(async () => {
try {
await this.setCmdQueue();
} catch (error: any) {
this.log.error(`onReady.getData: ${error}`);
this.log.error(`onReady.schedule: ${error.message}`);
}
}, this.config.intervalVal * 1000);
} catch (error: any) {
this.log.error(`onReady: ${error}`);
this.log.error(`onReady: ${error.message}`);
}
}

async onDataHandler(data: any): Promise<void> {
try {
//this.chkCnt = 0;
await this.processData(data);
this.conn.end();
} catch (error: any) {
this.log.error(`conn.on data: ${error}`);
this.log.error(`conn.on data: ${error.message}`);
}
}

Expand All @@ -706,7 +695,7 @@ class Solarviewdatareader extends utils.Adapter {
this.handleChecksumFailure(strdata, cs);
}
} catch (error: any) {
this.log.error(`processData: ${error}`);
this.log.error(`processData: ${error.message}`);
}
};

Expand All @@ -725,17 +714,8 @@ class Solarviewdatareader extends utils.Adapter {
this.chkCnt = 0;
}
} catch (error: any) {
this.log.error(`conn.on close: ${error}`);
this.log.error(`conn.on close: ${error.message}`);
}

//this.conn = new net.Socket();
//this.conn.setTimeout(2000);
//this.conn.on('data', this.onDataHandler.bind(this));
//this.conn.on('close', this.onCloseHandler.bind(this));
//this.conn.on('error', this.onErrorHandler.bind(this));
/*this.connectAsync(this.config.port, this.config.ipaddress).catch(err => {
this.log.error(`Reconnection failed: ${err.message}`);
});*/
}

onErrorHandler(err: any): void {
Expand Down Expand Up @@ -841,15 +821,10 @@ class Solarviewdatareader extends utils.Adapter {
private async executeCommand(cmd: string): Promise<void> {
this.log.debug(`Attempting to execute command: ${cmd}`);
try {
/*if (!this.conn || this.conn.destroyed) {
this.log.debug('Connection not active. Reconnecting...');
await this.connectAsync(this.config.port, this.config.ipaddress);
}*/
await this.connectAsync(this.config.port, this.config.ipaddress);
this.lastCommand = cmd;
this.conn.write(cmd);
this.log.debug(`Command successfully sent: ${cmd}`);
//await this._sleep(500);
} catch (error: any) {
this.log.error(`Error executing command ${cmd}: ${error.message}`);
throw error;
Expand All @@ -865,7 +840,7 @@ class Solarviewdatareader extends utils.Adapter {
this.log.info('cleaned everything up...');
callback();
} catch (error: any) {
this.log.info(`onUnload: ${error}`);
this.log.info(`onUnload: ${error.message}`);
callback();
}
}
Expand Down

0 comments on commit 378a4aa

Please sign in to comment.