HTTPS API v2 / HLR - sprawdzanie dostępności numeru

Zasada działania

Aby przy pomocy Zdalnej obsługi sprawdzić dostępność numeru należy wywołać określony adres URL metodą POST.

phones/check

Dostępne parametry

Parametr Typ Przykładowa wartość lub format Opis
username String login Login konta używany do wysyłki.
password String hasło Hasło do konta.
phone String|Array 500600700 lub +42565478965 Numer w formacie 9-cio cyfrowym. Numery mogą być rozdzielone przecinkami lub w formie tablicy. Dla numerów zagranicznych niezbędne jest podanie plusa i prefiksu kraju. Maksymalna liczba obsługiwanych jednorazowo numerów to 50 000.
id String numer zgłoszenia Parametr służący do odczytu wyniku, jeśli czas oczekiwania na odpowiedź przekroczy 60 sekund lub przesłano więcej niż jeden numer.
url String http://www.adres.com/index.php?id=#ID#&stan=#STAN# W przypadku wysyłki więcej niż jednego numeru, po zakończeniu sprawdzania system wywoła podany URL informujący o możliwości pobrania wyników.

Parametry oznaczone pogrubieniem są obowiązkowe. Pozostałe są opcjonalne.

Zwrot wygenerowany po przesłaniu przykładowego pojedynczego zapytania.

{
   "phone":"+48500600700",
   "status":"OK",
   "imsi":26006,
   "network":"Orange (PTK Centertel Sp. z o.o.)",
   "ported":false,
   "network_ported":null,
   "description":null
}

Zwrot wygenerowany w przypadku sprawdzania więcej niż jednego numeru.

{
   "status":"done",
   "process": 100,
   "items":[
   {
       "phone":"+48500600700",
       "status":"ERR",
       "imsi":26003,
       "network":"Orange (PTK Centertel Sp. z o.o.)",
       "ported":false,
       "network_ported":null,
       "description":"ABSENT_SUBSCRIBER_SM"
   },
   {
       "phone":"+48600700800",
       "status":"OK",
       "imsi":260011234567890,
       "network":"Plus (Polkomtel S.A.)",
       "ported":true,
       "network_ported":"Plus (Polkomtel S.A.)",
       "description":null
   }]
}

Objaśnienie poszczególnych parametrów zwrotnych

Parametr Opis
phone Sprawdzany numer telefonu
status Status zapytania HLR, jeśli jest poprawny, system zwróci „OK”, jeśli nie ma możliwości aby sprawdzić numer lub numer nie jest poprawny, system zwróci „ERR”. UWAGA! Taryfikowane są wszystkie zapytania HLR, zarówno poprawne jak i niepoprawne.
imsi Unikatowy numer przypisany do każdej karty SIM w sieci GSM lub UMTS. W niektórych sytuacjach może zawierać jedynie numer kraju i numer sieci (np. „26003”).
network Nazwa alfanumeryczna sieci z której numer pochodzi.
ported Informacja o tym czy numer jest przenoszony „true” czy też nie „false”.
network_ported Nazwa alfanumeryczna sieci do której numer jest obecnie przypisany.
description Kod ew. błędu podczas sprawdzania numeru

Kody błędów

Kod Opis
UNKNOWN_SUBSCRIBER Nieznany numer
CALL_BARRED Usługa zastrzeżona przez sieć docelową
ABSENT_SUBSCRIBER_SM Numer tymczasowo niedostępny
TELE_SERVICE_NOT_PROVISIONED Usługa zastrzeżona przez sieć docelową
HLR_REJECT Zapytanie zostało odrzucone przez Operatora
HLR_ABORT Zapytanie zostało odrzucone przez Operatora
HLR_LOCAL_CANCEL Brak odpowiedzi na zapytanie HLR
TIMEOUT Brak odpowiedzi w określonym czasie
IMSI_LOOKUP_BLOCKED Usługa zablokowana dla wybranego numeru

Jeśli czas oczekiwania na odpowiedź przekroczy 60 sekund, zwrócony zostanie identyfikator, który należy podstawić do zapytania w późniejszym czasie w celu odczytu statusu po jego aktualizacji. Odpowiedź zwrotna będzie miała wówczas postać:

{
   "phone":"+48500600700",
   "id":"6970aa5525"
}

Zalecane ustawienia

Nie należy sprawdzać wielokrotnie pod rząd tego samego numeru gdyż każde wywołanie sprawdzające przynależność do sieci jest taryfikowane. Warto więc zapisywać wyniki lokalnie i posługiwać się nimi przez określony czas np. kilka dni. 

Należy ustawić większy timeout dla zapytań, gdyż oczekiwanie na odpowiedź systemu może trwać od kilku do nawet kilkudziesięciu sekund.