• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Mail.php
  • Класс: BitrixImV2Mail
  • Вызов: Mail::getMessageIdsToSendByType
protected function getMessageIdsToSendByType(string $type, int $lastSend, ?int $limit = null): array
{
	$sendDelayInSeconds = (int)Option::get(static::MODULE_ID, self::SEND_DELAY_OPTION_NAME, self::DEFAULT_SEND_DELAY);
	$sendDelayInSeconds = abs($sendDelayInSeconds);
	$readDeadline = (new DateTime())->add("-{$sendDelayInSeconds} seconds");
	$query = MessageUnreadTable::query()
		->setSelect(['MESSAGE_ID'])
		->where('MESSAGE_ID', '>', $lastSend)
		->where('CHAT_TYPE', $type)
		->where('DATE_CREATE', '<', $readDeadline)
	;

	if (isset($limit))
	{
		$query->setLimit($limit);
	}

	return $query
		->fetchCollection()
		->getMessageIdList()
	;
}