• Модуль: voximplant
  • Путь к файлу: ~/bitrix/modules/voximplant/classes/general/vi_incoming.php
  • Класс: CVoxImplantIncoming
  • Вызов: CVoxImplantIncoming::CheckNumberForBlackList
static function CheckNumberForBlackList($number)
{
	$blackListTime = BitrixMainConfigOption::get("voximplant", "blacklist_time", 5);
	$blackListCount = BitrixMainConfigOption::get("voximplant", "blacklist_count", 5);

	$minTime = new BitrixMainTypeDateTime();
	$minTime->add('-'.$blackListTime.' minutes');

	$dbData = VIStatisticTable::getList(array(
		'filter' => array(
			"PHONE_NUMBER" => $number,
			'>CALL_START_DATE' => $minTime,
		),
		'select' => array('ID')
	));

	$callsCount = 0;
	while($dbData->fetch())
	{
		$callsCount++;
		if ($callsCount >= $blackListCount)
		{
			$number = mb_substr($number, 0, 20);
			VIBlacklistTable::add(array(
				"PHONE_NUMBER" => $number
			));

			$messageUserId = BitrixMainConfigOption::get("voximplant", "blacklist_user_id", "");
			CVoxImplantHistory::SendMessageToChat(
				$messageUserId,
				$number,
				CVoxImplantMain::CALL_INCOMING,
				GetMessage("BLACKLIST_NUMBER")
			);

			return true;
		}
	}

	return false;
}