• Модуль: voximplant
  • Путь к файлу: ~/bitrix/modules/voximplant/classes/general/vi_config.php
  • Класс: CVoxImplantConfig
  • Вызов: CVoxImplantConfig::GetConfigurations
static function GetConfigurations()
{
	$result = [];
	$res = VIConfigTable::getList([
		'select' => [
			'ID',
			'PORTAL_MODE',
			'SEARCH_ID',
			'PHONE_NAME',
			'PHONE_NUMBER' => 'NUMBER.NUMBER',
			'CALLER_ID_NUMBER' => 'CALLER_ID.NUMBER'
		],
	]);
	while ($row = $res->fetch())
	{
		if ($row['SEARCH_ID'] == 'test')
			continue;

		if ($row['PORTAL_MODE'] == static::MODE_SIP)
		{
			$name = $row['PHONE_NAME'] ?: static::GetDefaultPhoneName($row);
		}
		else if ($row['PORTAL_MODE'] == static::MODE_RENT)
		{
			$name = BitrixMainPhoneNumberParser::getInstance()->parse($row['PHONE_NUMBER'])->format(PhoneNumberFormat::INTERNATIONAL);
		}
		else if ($row['PORTAL_MODE'] == static::MODE_LINK)
		{
			$name = BitrixMainPhoneNumberParser::getInstance()->parse($row['CALLER_ID_NUMBER'])->format(PhoneNumberFormat::INTERNATIONAL);
		}
		else
		{
			$name = $row['PHONE_NAME'];
		}

		$result[] = array(
			'ID' => $row['ID'],
			'NAME' =>  $name,
			'TYPE' => $row['PORTAL_MODE']
		);
	}

	return $result;
}