• Модуль: voximplant
  • Путь к файлу: ~/bitrix/modules/voximplant/lib/controller/callerid.php
  • Класс: BitrixVoximplantControllerCallerId
  • Вызов: CallerId::getAction
public function getAction($phoneNumber)
{
	$number = Parser::getInstance()->parse($phoneNumber);

	if(!$number->isValid() && mb_substr($phoneNumber, 0, 1) !== "+")
	{
		$number = Parser::getInstance()->parse("+" . $phoneNumber);
	}

	if(!$number->isValid())
	{
		$this->errorCollection[] = new Error(Loc::getMessage("VOX_CALLER_ID_WRONG_NUMBER"), "wrong_number");
		return null;
	}
	$normalizedNumber = $number->format(Format::E164);
	// remove +
	$normalizedNumber = mb_substr($normalizedNumber, 1);

	$result = CallerIdTable::getRow(['filter' => ['=NUMBER' => $normalizedNumber]]);
	if(!$result)
	{
		$this->errorCollection[] = new Error(Loc::getMessage("VOX_CALLER_ID_NOT_FOUND"), "not_found");
		return null;
	}

	return [
		'phoneNumber' => "+" . $result['NUMBER'],
		'verified' => $result['VERIFIED'] == 'Y',
		'verifiedUntil' => $result['VERIFIED_UNTIL'] ? $result['VERIFIED_UNTIL']->toString() : null
	];
}