Server Send Event
Ce principe peut être utilisé pour des systèmes de chat, notifications ...
L'utilitaire sse permet offre des fonctions de configuration de d'envoi de message correctement formatée.
Utilisation
L'utilitaire associé est la class EagleCore\Utils\Sse
Cet exemple est à but représentatif des possibilités
$resourceManager = new ResourceManager();
$resourceManager
->setResource(key: "userToNotifyId",resource: 1)
->setResource(key: "notifyWith",resource: NotificationConfig::MESSAGE);
$sseManager = new EagleSee(
resourceManager: $resourceManager,
defaultSleepTimeSec: 10 # temps entre chaque tour de boucle
);
$sseManager->launch(
executor: function(EagleSse $manager):void{
if(condition)
$manager->sendEvent(eventName: "notification",eventDatas: $manager->getResourceManager()->getResource(key: "userToNotifyId"));
}, # Callable de gestion à chaque tour de boucle
stopVerifier: fn(EagleSse $manager):bool => condition_stop, # fonction renvoyant si le sse doit s'arrêter
stopEventName: "endOfNotifications" # nom de l'évènement envoyé en cas d'arrêt
);
12 août 2025