Files
Symcon_Belevo_Energiemanage…/OCPP_Server/libs/WebSocketEndpoint.php
T
2026-05-10 17:26:05 +02:00

41 lines
1.6 KiB
PHP

<?php
class WebSocketEndpoint
{
public static function supportSummary(bool $registerHookAvailable, string $hookPath, string $transportMode = 'webhook_spike'): array
{
if ($transportMode !== 'webhook_spike') {
return [
'status' => 'Externer WebSocket-Transport',
'detail' => 'OCPP_Server erwartet einen echten WebSocket-Server/Parent oder lokalen Adapter und uebernimmt nur Routing und Protokollzustand.',
'warning' => 'WebHook Control wird in diesem Modus nicht als OCPP-CSMS-Endpunkt verwendet.',
'hookPath' => $hookPath
];
}
if ($registerHookAvailable) {
return [
'status' => 'WebHook-Spike',
'detail' => 'RegisterHook ist verfuegbar, aber der WebHook-Pfad ist kein vollwertiger OCPP-CSMS-WebSocket-Server mit garantiertem Async-Push.',
'warning' => 'Nur fuer Spike/Diagnose verwenden. Produktiv ist ein echter WebSocket-Server/Parent erforderlich.',
'hookPath' => $hookPath
];
}
return [
'status' => 'Hook manuell/spaeter',
'detail' => 'RegisterHook ist in dieser Symcon-Umgebung nicht als Modul-Methode verfuegbar. WebHook Control muss manuell oder nach Upgrade verbunden werden.',
'warning' => 'Kein produktiver OCPP-WebSocket-Transport aktiv.',
'hookPath' => $hookPath
];
}
public static function readRawBody(): string
{
$data = @file_get_contents('php://input');
return is_string($data) ? $data : '';
}
}
?>