Interface IInSessionDelivery
- All Known Implementing Classes:
ChannelInSessionDelivery
AppSessionGyro to its ClientSessionGyros - entirely within IIZI transports, never VAPID or FCM.Built by P4-10 (PUSH-PROPS-DESIGN section 9.1, ruled 2026-09-24 RR-14a): ChannelInSessionDelivery delivers down the Push Notification channel the client created under $env, com.iizix.prop.push.PushChannelProps (RR-1 B, P4-06), as the remote event DELIVER carrying the notification object of the Web Push leg; the client shows it on its Service Worker registration, or with the in-app toaster. The device UUID the channel reports is the target's; there is no FCM or APNS identity on this tier. The resolver enumerates live sessions as targets only while isAvailable() is true, and the engine routes those targets here and applies the ruled fallback to a device push for the in-session codes that permit one. NONE remains the default of an engine built without a server, for the tests.
This is the one delivery method with no third-party store-and-forward behind it, so for it the spool is the durability: an in-session target the seam cannot reach now is spooled like any other undelivered target.
- Author:
- Christopher Mindus
Field Summary
FieldsMethod Summary
Modifier and TypeMethodDescriptiondeliver(DeliveryTarget target, IPushNotification notification) Delivers a notification to a live client session.booleanChecks if in-session delivery is implemented and running.
Field Details
NONE
The seam as it stands: unavailable. The resolver produces no in-session targets and the engine never callsdeliver(DeliveryTarget, IPushNotification).
Method Details
isAvailable
boolean isAvailable()Checks if in-session delivery is implemented and running.- Returns:
- true when live sessions are valid delivery targets.
deliver
Delivers a notification to a live client session.- Parameters:
target- The in-session target (DeliveryTarget.isInSession()).notification- The notification.- Returns:
DeliveryOutcome.DELIVERED_IN_SESSION, or one of theIN_APP_SESSION_*codes.