Центральными таблицами в этой схеме являются eud_item и eud_item_recipient. Они соответствуют понятиям уведомлений и получателей, при этом уведомления описывают все данные, необходимые для создания уведомления, а получатели обозначают тех, кто именно должен получить эти уведомления.

В этой таблице приводится описание всех таблиц системы уведомлений.

Таблицы системы уведомлений
Таблица Описание
eud_item Содержит большую часть информации, которая необходима для оповещения пользователя о событии: название события, даты его начала и окончания, родительский элемент содержимого и т. д. Однако в ней нет информации о том, кто должен получать эти уведомления.
eud_item_recipient Описывает пользователя уведомления. У всех получателей есть родительская запись уведомлений и идентификатор пользователя. Кроме того, отслеживается состояние уведомления для этого варианта использования. Например, было ли оно разослано ранее и отправлялись ли напоминания.
eud_item_role В этой таблице хранятся роли на курсе, для которых должны отправляться уведомления. Система использует информацию этих ролей для создания записей eud_item_recipient при регистрации уведомления и при добавлении новых пользователей в курс.
eud_item_group В этой таблице хранятся группы курсов, для которых создается уведомление. Система использует информацию этих групп для создания записей eud_item_recipient при регистрации уведомления и при добавлении новых пользователей в группу.
eud_general_setting Здесь хранятся настройки уведомлений, например, включена ли система, включена ли рассылка по электронной почте, через какое время система должна удалить устаревшего получателя.
eud_method_setting Здесь хранятся настройки типов событий для отдельных уведомлений, например, включена ли для событий Задание доступно рассылка по электронной почте, включено ли для событий Задание отправлено отображение на панели мониторинга уведомлений.

eud_item

Это центральная таблица системы уведомлений. В ней содержатся все данные, которые необходимы системе для администрирования и публикации уведомлений. Задача системы — знать как можно меньше об элементах, для которых создаются уведомления, поэтому в этой таблице и вспомогательных таблицах содержится минимум необходимой для этого информации.

Три первых параметра в таблице (source_id, source_type и event_type) представляют собой уникальные идентификаторы для каждой записи уведомления.

Таблица edu_item
Столбец Обязательное? Описание
source_id Да Идентификатор, уникальным образом определяющий элемент для создания уведомления. Обеспечение уникальности этого идентификатора входит в задачи отдельных подсистем.
source_type Да Соответствует классу события: событие задания, событие оценки, событие содержимого и т. д.
event_type Да Соответствует определенному типу события в course_type: Задание доступно или Задание отправлено.
parent_id Нет Если это уведомление концептуально подчинено другому уведомлению, например так же, как уведомление Задание отправлено подчинено уведомлению «Задание со сроком выполнения», то этот столбец содержит идентификатор родительского уведомления.
crsmain_pk1 Да Курс, к которому относится уведомляемый элемент.
crs_contents_pk1 Да Идентификатор элемента содержимого курса, к которому относится уведомление. При отсутствии связанных элементов содержимого, как в случае с уведомлением-объявлением, значение идентификатора будет null.
parent_contents_pk1 Да Идентификатор элемента содержимого курса, являющегося родительским по отношению к элементу содержимого, к которому относится уведомление. Если элемент содержимого находится в папке, этот столбец идентифицирует эту папку. Эта информация нужна системе для расчета доступности адаптивных выпусков.
title Да Название элемента, к которому относится уведомление.
type Да Определяет, запланировано ли это уведомление или доступно.
owner_pk1 Да Ссылка внешнего ключа на пользователя, который создал этот элемент или несет за него ответственность.
start_date Нет Дата начала периода уведомлений, которая обычно соответствует дате, когда элемент становится доступным. Если этот параметр задан, система не будет отображать уведомления до наступления этой даты.

Это не относится к правилам адаптивных выпусков, которые оцениваются отдельно и самостоятельно.

due_date Нет Установленная для этого уведомления дата. Дата выполнения используется в системе для расчета времени отправки напоминаний и смены состояния событий с Со сроком выполнения на Просрочено.
end_date Нет Дата окончания периода уведомлений, которая обычно соответствует дате, когда элемент становится недоступным. Если этот параметр задан, система не будет отображать уведомления после наступления этой даты.

Это не относится к правилам адаптивных выпусков, которые оцениваются отдельно и самостоятельно.

dtcreated Да Дата, когда элемент был добавлен впервые.
data_pending_ind Да Указывает на то, находится ли это уведомление в процессе создания. Другими словами, ожидается ли создание его получателей.
important_ind Да Маркер «Важно» указывает на то, что во время создания массовых уведомлений это уведомление должно отправляться получателям в любом случае.
can_replace_ind Да Указывает на то, можно ли заменять это уведомление поступающими уведомлениями, которые обычно должны его заменять.
override_setting_ind Да Указывает на то, должно ли это уведомление игнорировать пользовательские или системные настройки, запрещающие его рассылку. Этот параметр полезен для уведомлений, которые должны быть отправлены в любом случае.

eud_item_recipient

Получатели представляют собой дочерние элементы одного уведомления и идентифицируют пользователя, которому должно быть отправлено уведомление. При создании уведомления система подсчитывает число его получателей на основании соответствующих ролей и членства на курсе. Таким образом, это на данный момент самая большая отдельная таблица в системе и, возможно, одна из самых больших таблиц в Blackboard Learn.

Таблица edu_item_recipient
Столбец Обязательное? Описание
eud_item_pk1 Да Уведомление, с которым связан этот получатель.
user_item_pk1 Да Пользователь, который должен получить это уведомление.
type Да Указывает на отправителя или получателя уведомления. Отправители создают элементы или обстоятельства, которые приводят к появлению запроса на отправку уведомлений. Поэтому все преподаватели курсов будут отправителями для события Наступил срок сдачи задания, а все учащиеся будут его получателями.
status Да Состояние уведомления: (U) не обработано, (N) оповещены, (Z) не доставлено, (D) удалено или (F) в ожидании.
reminded_ind Да Указывает на то, было ли отправлено этому получателю напоминание об уведомлениях со сроком выполнения.
group_pk1 Нет Если группа указана как цель родительского уведомления, а получатель — участник этой группы, то в этом столбце будет указан идентификатор группы.