CampaignModel class

A single campaign fetched from the Digia backend.

Dart port of the Android CampaignModel. Campaigns are keyed by campaignKey in CampaignStore and routed by campaignType when the CEP plugin triggers them.

Constructors

CampaignModel({required String id, required String campaignKey, required String campaignType, required CampaignConfigModel config, FrequencyPolicy? frequency, List<String> targetScreenNames = const <String>[]})
const

Properties

campaignKey String
final
campaignType String
final
config CampaignConfigModel
final
frequency FrequencyPolicy?
Server-configured frequency cap, or null when the campaign has none. Consulted by the FrequencyManager to gate and silence the campaign.
final
hashCode int
The hash code for this object.
no setterinherited
id String
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
targetScreenNames List<String>
Screens this campaign is scoped to, from the dashboard's targetScreenNames.names. Empty means "any screen" — the campaign is not screen-gated at all. Matched against the host's last Digia.setCurrentScreen(...) value by allowsScreen.
final

Methods

allowsScreen(String? currentScreen) bool
Whether this campaign may render while the host is on currentScreen.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

fromJson(Map<String, dynamic> json) CampaignModel?
Parses one campaign object from the getCampaigns response.