Всем привет! От провайдера во всех полях CALLERID (num, all, ani, ani2...) приходит номер без кода страны. Служба ТП провайдера говорит, что мы неправильно форматируем этот самый CID, и что они транслируют номер без изменений. Помогите разобраться, как увидеть код страны. Поля вывожу в консоль через
Да, десятизнак - хороший признак российских номеров. Если прибегает CLID = 3432123456 то это звонок из Екатеринбурга или из Испании?
Вот если +3431234567 - то Испания, а если 3431234567 или одинадцатизнак +73431234567 или 83431234567
то точно Екатерибург.
В России операторы большой тройки не парятся, номер может быть какого угодно формата.
Для Питера это может быть просто 7 знаков, может 812XXXXXXX, может быть 810812XXXXXXX.
Но собственно вариантов не так много, вот пример преобразования для РТУ (регион - СПб):
Мегафон: ^810(.*)$/\1;^8([3489].{9})/7\1;^(.{7})$/7812\1;^([3489].{9})$/7\1
МТС: ^(.{7})$/7812\1;^([3489].{9})$/7\1;^8(800.{7})$/7\1
SkyTel OU - облачная АТС, DID, SIP-транк с посекундной тарификаицей, мобильная связь http://skytel24.com | Эстония: +372.333.55.10 | Россия: +7(495)4019900