Neues Ladestationsmodul mit ocpp Modul erstellt.
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
class ChargingProfileBuilder
|
||||
{
|
||||
public function build(array $setpoint, string $version): array
|
||||
{
|
||||
$currentA = max(0.0, (float)($setpoint['effectiveCurrentA'] ?? 0));
|
||||
$validTo = gmdate('Y-m-d\TH:i:s\Z', time() + 120);
|
||||
|
||||
if ($version === '1.6') {
|
||||
return [
|
||||
'connectorId' => (int)($setpoint['connectorId'] ?? 1),
|
||||
'csChargingProfiles' => [
|
||||
'chargingProfileId' => (int)(time() % 100000),
|
||||
'stackLevel' => 0,
|
||||
'chargingProfilePurpose' => 'TxDefaultProfile',
|
||||
'chargingProfileKind' => 'Absolute',
|
||||
'validTo' => $validTo,
|
||||
'chargingSchedule' => [
|
||||
'chargingRateUnit' => 'A',
|
||||
'chargingSchedulePeriod' => [
|
||||
['startPeriod' => 0, 'limit' => $currentA]
|
||||
]
|
||||
]
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
return [
|
||||
'evseId' => (int)($setpoint['evseId'] ?? 1),
|
||||
'chargingProfile' => [
|
||||
'id' => (int)(time() % 100000),
|
||||
'stackLevel' => 0,
|
||||
'chargingProfilePurpose' => 'TxDefaultProfile',
|
||||
'chargingProfileKind' => 'Absolute',
|
||||
'validTo' => $validTo,
|
||||
'chargingSchedule' => [
|
||||
[
|
||||
'id' => 1,
|
||||
'chargingRateUnit' => 'A',
|
||||
'chargingSchedulePeriod' => [
|
||||
['startPeriod' => 0, 'limit' => $currentA]
|
||||
]
|
||||
]
|
||||
]
|
||||
]
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user