Campaign

Campaign provides a foundation for building multi-channel messaging campaigns in Drupal. It defines entity types, bundles, and fields for modeling campaigns, messages, and results — actual message delivery is delegated to channel-specific integrations rather than handled here.

Planned capabilities

  • Campaigns as one-time sends or multi-step automations, driven by triggers and conditions.
  • Multi-channel messages — email, SMS, postal, and more.
  • A/B testing as a built-in feature, with variant splits and automatic winner selection.
  • Engagement tracking through per-recipient events and campaign-level rollups.

Everything is built on Drupal's Entity API, so all components are fieldable and extensible.

Status

The data model and extension surface exist: the campaign and campaign_message entity types with their bundles, and the Channel, Recipient, Composition and Scheduling plugin types with reference implementations spanning the email and SMS channels — see Architecture for the contracts. Delivery, tracking implementation, A/B testing, automations and engagement events are future issues built on those contracts.