Skip to content

Broadcasts

Управление email broadcast кампаниями, аудиториями и отслеживание доставки писем.

Обзор

Функциональность broadcasts включает:

  • Создание и редактирование broadcast кампаний
  • Управление аудиториями получателей
  • Отправка кампаний (немедленно или по расписанию)
  • Трекинг доставки, открытий, кликов
  • Аудит-лог всех email событий
  • Детальная информация по каждому получателю

Навигация

СтраницаURLОписание
Broadcasts/admin/broadcastsСписок всех broadcast кампаний
Detail/admin/broadcasts/:idДетальная страница кампании

Страницы

Список Broadcasts

URL: /admin/broadcasts

DataTable со всеми broadcast кампаниями. Колонки:

  • Title — название кампании
  • Audience — целевая аудитория
  • Status — статус (draft, scheduled, sent, failed)
  • Recipients — количество получателей
  • Delivered — успешно доставлено
  • Opened — количество открытий
  • Created — дата создания

Возможности:

  • Создание новой кампании (FAB кнопка)
  • Поиск по названию
  • Фильтрация по статусу
  • Переход к деталям кампании

Детальная страница Broadcast

URL: /admin/broadcasts/:id

Содержит вкладки:

Overview Tab

Основная информация о кампании:

  • Идентификаторы (broadcast ID, audience ID)
  • Название и subject письма
  • Статус и дата отправки
  • Кнопки действий (Edit, Send, Delete)

Статистика:

  • Total Recipients, Delivered, Opened, Clicked
  • Bounced, Complained

Recipients Tab

Таблица получателей кампании с пагинацией:

  • Email адрес
  • Статус доставки (pending, delivered, bounced и т.д.)
  • Дата доставки, открытия, клика

Фильтрация по статусу.

Events Tab

Аудит-лог всех email событий:

  • Тип события (delivered, opened, clicked, bounced, complained)
  • Email адрес
  • Дата события
  • Метаданные

Интерфейсы

IBroadcast

typescript
interface IBroadcast {
	id: string;
	title: string;
	subject: string;
	content: string;
	status: string; // draft | scheduled | sent | failed
	audienceId?: string;
	audienceName?: string;
	from: string;
	scheduledAt?: string;
	sentAt?: string;
	totalRecipients: number;
	delivered: number;
	opened: number;
	clicked: number;
	bounced: number;
	complained: number;
	createdAt: string;
	updatedAt: string;
}

IBroadcastRecipient

typescript
interface IBroadcastRecipient {
	id: string;
	broadcastId: string;
	email: string;
	status: string; // pending | sent | delivered | bounced | complained
	deliveredAt?: string;
	openedAt?: string;
	clickedAt?: string;
	bouncedAt?: string;
	createdAt: string;
}

IEmailEvent

typescript
interface IEmailEvent {
	id: string;
	emailId: string;
	broadcastId?: string;
	type: string; // delivered | opened | clicked | bounced | complained
	email: string;
	metadata?: Record<string, unknown>;
	createdAt: string;
}

IAudience

typescript
interface IAudience {
	id: string;
	name: string;
	contactsCount: number;
	createdAt: string;
	updatedAt: string;
}

IAudienceContact

typescript
interface IAudienceContact {
	id: string;
	audienceId: string;
	email: string;
	firstName?: string;
	lastName?: string;
	unsubscribed: boolean;
	createdAt: string;
}

BroadcastsService

Методы сервиса:

МетодОписание
getBroadcasts(params?)Список broadcasts с пагинацией
getBroadcastById(id)Получить broadcast по ID
createBroadcast(data)Создать новую кампанию
updateBroadcast(id, data)Обновить кампанию
deleteBroadcast(id)Удалить кампанию
sendBroadcast(id, data?)Отправить кампанию
getBroadcastRecipients(broadcastId, params?)Список получателей
getEmailEvents(params?)Email события
getAudiences(params?)Список аудиторий
getAudienceById(id)Аудитория по ID
getAudienceContacts(audienceId, params?)Контакты аудитории

Смотри полную документацию сервисов.

Диалоги

BroadcastDialogComponent

Создание и редактирование broadcast. Поля формы:

  • title — название кампании
  • subject — тема письма
  • content — HTML контент
  • from — email отправителя
  • audienceId — выбор аудитории

Status Variants

СтатусВариант
draftwarning
scheduledinfo
sentsuccess
failederror

Следующие шаги

SaaS Admin Documentation