api/cep library
The Core ↔ CEP interface, v2.
A CEP plugin implements DigiaCEPPlugin, receives a DigiaCEPHost in
attach, and for every CEP campaign calls host.deliver(trigger). What
comes back is a CampaignPresentation — a claim ticket whose outcome
settles exactly once, guaranteed by core. Releasing the CEP's slot binds to
that outcome, so no terminal path can skip it.
final presentation = host.deliver(trigger); // never throws
presentation.onSignal(forwardMarkingToTheCep); // best-effort
await presentation.outcome; // never rejects
await releaseTheCepSlot(); // exactly once
Not exported from package:digia_engage/digia_engage.dart while the v1
interface still exists — both declare a DigiaCEPPlugin, and exporting
both would make the name ambiguous at every import site. Import this
library explicitly:
import 'package:digia_engage/api/cep.dart';
Classes
- CampaignPresentation
- A claim ticket for one delivered trigger, owned exclusively by the plugin that delivered it.
- CEPTriggerPayload
- The translation contract between a CEP plugin and Digia's rendering engine.
- ClickedSignal
- A qualifying interaction with the experience.
- DigiaCEPHost
-
Core's door, handed to each plugin in
DigiaCEPPlugin.attach. The plugin's only way into the Digia engine. - DigiaCEPPlugin
-
Implemented by each CEP plugin package —
digia_engage_clevertap,digia_webengage_plugin,digia_moengage_plugin. - DisplayedSignal
- The experience became visible. Fires at most once, before any other signal, and never on a presentation that ends up dropped.
- PendingPayloadBuffer
- Holds a plugin's CEP triggers while core is not READY.
- PresentationController
- The write face of a presentation: the half only the hosting core holds.
- PresentationDismissed
- The experience displayed, and has now left the screen.
- PresentationDropped
- The experience never displayed.
- PresentationOutcome
- The exactly-once terminal result of a presentation.
- PresentationSignal
- A mid-flight signal scoped to one presentation, delivered only to the plugin that owns it.
Enums
- DismissReason
- How a presentation that did display ended.
- DropReason
- Why a presentation ended without ever displaying.
- PresentationState
- The lifecycle phase of a presentation.