Add support for ConnectionTimeOut standard parameter
authorJérôme Benoit <jerome.benoit@sap.com>
Sun, 13 Jun 2021 20:39:33 +0000 (22:39 +0200)
committerJérôme Benoit <jerome.benoit@sap.com>
Sun, 13 Jun 2021 20:39:33 +0000 (22:39 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
README.md
src/charging-station/ChargingStation.ts
src/utils/Constants.ts

index 0a24123dd0f4f9fe9bc99c1573cb7b26198a131c..5246171d9711bc5fb2458f8ade8af532cdfd9434 100644 (file)
--- a/README.md
+++ b/README.md
@@ -218,7 +218,7 @@ All kind of OCPP parameters are supported in a charging station template. The li
 
 - :white_check_mark: AuthorizeRemoteTxRequests (type: boolean) (units: -)
 - :x: ClockAlignedDataInterval (type: integer) (units: seconds)
-- :x: ConnectionTimeOut (type: integer) (units: seconds)
+- :white_check_mark: ConnectionTimeOut (type: integer) (units: seconds)
 - :x: GetConfigurationMaxKeys (type: integer) (units: -)
 - :white_check_mark: HeartbeatInterval (type: integer) (units: seconds)
 - :x: LocalAuthorizeOffline (type: boolean) (units: -)
index 10806bd295bf93134f8ec3734c597378b2788fba..e0845e756af24f66e3abac85bcbc636a572949be 100644 (file)
@@ -707,13 +707,16 @@ export default class ChargingStation {
 
   // 0 for disabling
   private getConnectionTimeout(): number | undefined {
+    if (this.getConfigurationKey(StandardParametersKey.ConnectionTimeOut)) {
+      return parseInt(this.getConfigurationKey(StandardParametersKey.ConnectionTimeOut).value) ?? Constants.DEFAULT_CONNECTION_TIMEOUT;
+    }
     if (!Utils.isUndefined(this.stationInfo.connectionTimeout)) {
       return this.stationInfo.connectionTimeout;
     }
     if (!Utils.isUndefined(Configuration.getConnectionTimeout())) {
       return Configuration.getConnectionTimeout();
     }
-    return 30;
+    return Constants.DEFAULT_CONNECTION_TIMEOUT;
   }
 
   // -1 for unlimited, 0 for disabling
index 706ef41cc3291189c7e2ffa148a14523167c832c..a7e274a7770c6cb8f466b79e7b9d91d8c9e559b9 100644 (file)
@@ -36,4 +36,6 @@ export default class Constants {
   static readonly DEFAULT_WORKER_POOL_MIN_SIZE = 4;
   static readonly DEFAULT_WORKER_POOL_MAX_SIZE = 16;
   static readonly DEFAULT_CHARGING_STATIONS_PER_WORKER = 1;
+
+  static readonly DEFAULT_CONNECTION_TIMEOUT = 30;
 }