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