Данный фильтр поможет получать записи с учетом даты Начало активности и Окончание активности, а также, если не будут заданы даты, универсальное решение.
$arMessage = MessageTable::getList(array(
'order' => array('SORT' => 'ASC','ID' => 'ASC'),
'select' => array('ID','TYPE','MESSAGE'),
'filter' => array(
'=ACTIVE' => 'Y',
'?SITE_ID' => $siteId,
'LOGIC' => 'AND',
array(
'LOGIC' => 'OR',
'>=ACTIVE_TO' => new \Bitrix\Main\Type\DateTime(),
'ACTIVE_TO' => null,
),
array(
'LOGIC' => 'OR',
'<=ACTIVE_FROM' => new \Bitrix\Main\Type\DateTime(),
'ACTIVE_FROM' => null,
),
),
))->fetchAll();