You are on page 1of 29

MyHaloNet - MyServices

TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Spis treści

Jak zamówić, uruchomić, skonfigurować...................................................................................3

Ustawienie w panelu użytkownika.............................................................................................4

Komunikacja z usługą MyHaloNet-MyServices........................................................................5

Korzystanie z poleceń.................................................................................................................6
billing - GetBillingAccountOut....................................................................................7
billing - GetBillingIpbxOut...........................................................................................9
billing - GetBillingToNumber.....................................................................................11
finanse - GetAccountBalace.......................................................................................13
konfiguracja - GetAccountData..................................................................................15
konfiguracja - GetAccountIpbxData...........................................................................17
konfiguracja - GetPhonebookEntries..........................................................................19
nagrania - GetUrlFiles.................................................................................................21
usługa - HaloSpinacz..................................................................................................23
wysyłanie – SendSMSTxt...........................................................................................25
wysyłanie – SendSMSVoice.......................................................................................27

Przykład wywołania funkcji pobierającej billing:....................................................................29

MyHaloNet-MyServices 2 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Jak zamówić, uruchomić, skonfigurować

Krok 1. Dodanie „dodatkowego loginu”

Jeżeli do usługi łączyć się będzie kilka komputerów, należy utworzyć osobne loginy. Do każdego
loginu istnieje możliwość nadania różnych uprawnień do usługi.

Krok 2. Kontakt z BOK HaloNet


– należy podać login, na którym będzie świadczona usługa
– należy wskazać jakie grupy poleceń mają być dostępne
– billing – dostęp do danych billingowych
– nagrania – dostęp do pobierania linków do plików z nagraniami z rejestratora
– konfiguracja – dostęp do konfiguracji kont
– finanse – dostęp do odczytu stanu finansowego na kontach
– wysyłanie – dostęp do usługi HaloSpinacz oraz wysyłki (np. SMS-ów)

Krok 3. Ustawienie klucza w panelu użytkownika

GRATULACJE !!!
Konfiguracja usługi MyHaloNet-MyServices zakończona.

MyHaloNet-MyServices 3 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Ustawienie w panelu użytkownika

Zmian ustawień w profilu dokonać może administrator/właściciel profilu. Dodatkowym loginem


do usługi MyHaloNet-MyServices nie ma możliwości logowania się do profilu użytkownika.

Zgodnie z ustaleniem z BOK HaloNet, pobierany „Token” będzie uprawniał do wybranych grup
poleceń.

MyHaloNet-MyServices 4 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Komunikacja z usługą MyHaloNet-MyServices

Poniżej zamieszczony jest przykładowy kod w PHP korzystający z biblioteki cURL. W funkcji
należy poustawiać odpowiednie parametry. Parametry powinny być przekazywane jako zmienne
POST. Po poprawnym uwierzytelnieniu zostanie wygenerowany token do autoryzacji poleceń
z ustalonych grup.

Funkcja pobierająca jednorazowy Token autoryzacyjny na okaziciela:

Function getToken() {

$_Url = "https://www.halonet.pl/api/GetBearerToken";

$ProfileName = ''; // Dodatkowy/rozszerzony login do profilu


$Password = '';

$curl = curl_init();
sleep(1);
curl_setopt_array($curl,
array(
CURLOPT_URL => $_Url,
CURLOPT_USERPWD => $ProfileName.":".$Password,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => ''
)
);

$response = curl_exec($curl);
$err = curl_getinfo($curl, CURLINFO_HTTP_CODE);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

Wywołanie:

$res = getToken();
if( $res['response'] === false || $res['err'] !== 200 ) {
print_r($res);
} else {
$token = json_decode($res['response'])->Token;
}

UWAGA
Ograniczenie liczby zapytań (limity)
– nie częściej niż 1 sekunda

MyHaloNet-MyServices 5 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Korzystanie z poleceń

MyHaloNet-MyServices 6 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

billing - GetBillingAccountOut

Zwraca wychodzące rekordy billingowe zgodnie z podanymi parametrami. Maksymalny przedział


czasowy zwracanych danych jest domyślnie ograniczony do ostatnich dwóch godzin. Zakres
czasowy pobieranych danych jest ograniczony do 15 dni.

Funkcja pobierająca billing (rozmowy wychodzące):

function GetBillingAccountOut($token, $AccountName = '', $ForDayHour = '') {


/**
$AccountName - domyślnie wszystkie
$ForDayHour - [rrrr-mm-dd gg] - domyślnie ostatnie 2 godziny
w formacie php: date(„Y-m-d H”)
*/

$Url = "https://www.halonet.pl/api/GetBillingAccountOut";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($ForDayHour?"&ForDayHour=".$ForDayHour:'');
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 7 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy billing.

Parametry funkcji GetBillingAccoutOut:


– AccountName – domyślnie wszystkie
– ForDayHour – [rrrr-mm-dd gg] - domyślnie wysyłane są dane z ostatnich dwóch godzin.
W przypadku pobierania starszych danych, dane filtrowane są od zerowej do pięćdziesiątej
dziewiątej minuty podanej godziny. Format w języku php: date(„Y-m-d H”).

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


AcctUniqueId unikalne id rekordu billingowego
AccountName nazwa konta
CalledStationId numer docelowy
AcctSessionTime czas rozmowy
ConnectTime czas rozpoczęcia połączenia
DestDescription opisowa nazwa kierunku połączenia

MyHaloNet-MyServices 8 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

billing - GetBillingIpbxOut

( tylko dla klientów posiadających wirtualną centralę iPBX )

Zwraca wychodzące rekordy billingowe zgodnie z podanymi parametrami. Maksymalny przedział


czasowy zwracanych danych jest domyślnie ograniczony do ostatnich dwóch godzin. Zakres
czasowy pobieranych danych jest ograniczony do 15 dni.

Funkcja pobierająca billing z central iPBX (rozmowy wychodzące):

function GetBillingIpbxOut($token, $AccountName, $AccountIpbxName = '', $ForDayHour = '') {


/**
$AccountName - konto sip halonet na którym jest centralka (wartość wymagana)
$AccountIpbxName - np. 'nzwcentr-212' - domyślnie wszystkie
$ForDayHour - [rrrr-mm-dd gg] - domyślnie ostatnie 2 godziny
w formacie php: date(„Y-m-d H”)
*/

$Url = "https://www.halonet.pl/api/GetBillingIpbxOut";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .="&ForDayHour=".$ForDayHour;
$postfields .="&AccountName=".$AccountName;
$postfields .="&AccountIpbxName=".$AccountIpbxName;

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 9 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy billing.

Parametry funkcji GetBillingIpbxOut:


– AccountName – konto SIP, na którym jest centralka (wartość ta jest wymagana)
– ForDayHour – [rrrr-mm-dd gg] - domyślnie wysyłane są dane z ostatnich dwóch godzin.
W przypadku pobierania starszych danych, dane filtrowane są od zerowej do pięćdziesiątej
dziewiątej minuty podanej godziny. Format w języku php: date(„Y-m-d H”).
– AccountIpbxName – konto centralkowe (np. 'nazwa-201') – domyślnie wszystkie

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


AcctUniqueId unikalne id rekordu billingowego
NumberAccountIpbx numer konta centralkowego
BillingDescription (w wykazach billingowych służy
do grupowania połączeń)
CalledStationId numer docelowy
AcctSessionTime czas rozmowy
ConnectTime czas rozpoczęcia połączenia

MyHaloNet-MyServices 10 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

billing - GetBillingToNumber

Zwraca przychodzące rekordy billingowe zgodnie z podanymi parametrami. Maksymalny przedział


czasowy zwracanych danych jest domyślnie ograniczony do ostatnich dwóch godzin. Zakres
czasowy pobieranych danych jest ograniczony do 15 dni.

Funkcja pobierająca billing (rozmowy przychodzące):

function GetBillingToNumber($token, $Number, $ForDayHour = '') {


/**
$Number - na jaki numer dzwoniono (wartość wymagana)
$ForDayHour - [rrrr-mm-dd gg] - domyślnie ostatnie 2 godziny
w formacie php: date(„Y-m-d H”)
*/

$Url = "https://www.halonet.pl/api/GetBillingToNumber";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($ForDayHour?"&ForDayHour=".$ForDayHour:'');
$postfields .=($Number?"&Number=".$Number:'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 11 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy billing.

Parametry funkcji GetBillingToNumber:


– Number – numer, na który zostało wykonane połączenie (wartość wymagana)
– ForDayHour – [rrrr-mm-dd gg] - domyślnie wysyłane są dane z ostatnich dwóch godzin.
W przypadku pobierania starszych danych, dane filtrowane są od zerowej do pięćdziesiątej
dziewiątej minuty podanej godziny. Format w języku php: date(„Y-m-d H”).

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


AcctUniqueId unikalne id rekordu billingowego
CallingStationId numer dzwoniący
CalledStationId numer docelowy
ConnectTime czas rozpoczęcia połączenia
AcctSessionTime czas rozmowy
DestDescription opisowa nazwa kierunku połączenia

MyHaloNet-MyServices 12 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

finanse - GetAccountBalace

Zwraca ilości środków zgromadzonych na poszczególnych kontach.

Funkcja pobierająca stan kont

function GetAccountBalance($token, $AccountName = '') {


/**
$AccountName - domyślnie wszystkie
*/

$Url = "https://www.halonet.pl/api/GetAccountBalance";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 13 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy finanse.

Parametry funkcji GetAccoutBalance:

– AccountName – domyślnie wszystkie

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


AccountName nazwa konta
Netto stan finansowy na koncie

MyHaloNet-MyServices 14 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

konfiguracja - GetAccountData

Zwraca podstawowe informacje o konfiguracji kont.

Funkcja pobierająca konfigurację kont

function GetAccountData($token, $AccountName = '') {


/**
$AccountName - domyślnie wszystkie
*/

$Url = "https://www.halonet.pl/api/GetAccountData";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 15 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy konfiguracja.

Parametry funkcji GetAccoutData:

– AccountName – domyślnie wszystkie

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


AccountName nazwa konta
Clip prezentacja numerem
IpbxExists jeżeli na tym koncie jest centralka ipbx
przyjmuje wartość 1
Numbers [array] w tablicy wymienione są numery
przypisane do tego konta

MyHaloNet-MyServices 16 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

konfiguracja - GetAccountIpbxData

( tylko dla klientów posiadających wirtualną centralę iPBX )

Zwraca podstawowe informacje o konfiguracji kont centralkowych.

Funkcja pobierająca konfigurację kont centralkowych

function GetAccountIpbxData($token, $AccountName) {


/**
$AccountName - konto sip halonet na którym jest centralka (wartość wymagana)
*/

$Url = "https://www.halonet.pl/api/GetAccountIpbxData";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 17 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy konfiguracja.

Parametry funkcji GetAccoutIpbxData:

– AccountName – konto SIP, na którym jest centralka (wartość ta jest wymagana)

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


AccountIpbxName nazwa konta centralkowego
NumberAccountIpbx numer konta centralkowego
CalleridDescription opis
ScreeningNumber prezentacja dla ruchu wychodzącego
BillingDescription (w wykazach billingowych służy
do grupowania połączeń)

MyHaloNet-MyServices 18 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

konfiguracja - GetPhonebookEntries

Funkcja pobierająca dane z książki telefonicznej

function GetPhonebookEntries($token) {

$Url = "https://www.halonet.pl/api/GetPhonebookEntries";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 19 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy konfiguracja.

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


SpeedDialNum Numer skrócony
Display Nazwa wyświetlania
Number Numer telefoniczny

MyHaloNet-MyServices 20 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

nagrania - GetUrlFiles

( tylko dla klientów posiadających rejestrator rozmów )

Zwraca linki do plików z rejestratora połączeń zgodnie z podanymi parametrami. Maksymalny


przedział czasowy zwracanych danych jest domyślnie ograniczony do ostatnich dwóch godzin.
Zakres czasowy pobieranych danych jest ograniczony do 15 dni.

Funkcja pobierająca linki do plików rejestratora połączeń:

function GetUrlFiles($token, $AccountName = '', $ForDayHour = '') {


/**
$AccountName - domyślnie wszystkie
$ForDayHour - [rrrr-mm-dd gg] - domyślnie ostatnie 2 godziny
w formacie php: date(„Y-m-d H”)
*/

$Url = "https://www.halonet.pl/api/GetUrlFiles";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($ForDayHour?"&ForDayHour=".$ForDayHour:'');
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

return array('err'=>$err, 'response'=>$response);


}

MyHaloNet-MyServices 21 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy nagrania.

Parametry funkcji GetUrlFiles:


– AccountName – domyślnie wszystkie
– ForDayHour – [rrrr-mm-dd gg] - domyślnie wysyłane są dane z ostatnich dwóch godzin.
W przypadku pobierania starszych danych, dane filtrowane są od zerowej do pięćdziesiątej
dziewiątej minuty podanej godziny. Format w języku php: date(„Y-m-d H”).

Dane przesyłane z serwera są w formacie JSON.

Nazwa pola Opis


AcctUniqueId unikalne id rekordu
IpbxName nazwa centrali iPBX
CallingStationId numer dzwoniący
CalledStationId numer docelowy
ConnectTime czas rozpoczęcia połączenia
FileSize rozmiar pliku
Url link do pliku

MyHaloNet-MyServices 22 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

usługa - HaloSpinacz

Funkcja eksportująca zestawy numerów dla usługi HaloSpinacz

function HaloSpinacz($token, $key, $AccountName, $AccountPass, $SourceNumbers, $DestNumbers ) {

$key = hash('sha256', $key);


$AccountPass = openssl_encrypt(date("YmdH").'pass'.$AccountPass, "AES-256-CBC",
$key, 0, substr(hash('sha256', $AccountName. $AccountPass), 0, 16) );
$AccountPass = base64_encode($AccountPass);

$Url = "https://www.halonet.pl/api/HaloSpinacz";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');
$postfields .=($AccountPass?"&AccountPass=".addslashes($AccountPass):'');
$postfields .=($SourceNumbers?"&SourceNumbers=".addslashes($SourceNumbers):'');
$postfields .=($DestNumbers?"&DestNumbers=".addslashes($DestNumbers):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

if( curl_error($curl) ) $res['err'] = curl_error($curl);

$res['response'] = curl_exec($curl);
curl_close($curl);

return $res;
}

MyHaloNet-MyServices 23 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy wysyłanie.

Parametry funkcji HaloSpinacz:

– key – klucz wygenerowany w panelu użytkownika


– AccountName – konto SIP, z którego zostaną wykonane połączenia
– AccountPass – hasło do konta
– SourceNumber – numer, który zostanie wywołany jako pierwszy
– DestNumbers – numer, na który zostanie wywołany po uzyskaniu połączenia z pierwszym

Uwaga

Opłata za wykonane połączenia pobierana jest z ustawionego konta. Koszt można sprawdzić
w cenniku.

MyHaloNet-MyServices 24 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

wysyłanie – SendSMSTxt

Funkcja wysyłająca SMS

function SendSMSTxt($token, $key, $AccountName, $AccountPass, $DestNumbers, $SMSText,


$SourceNumber='' ) {

$key = hash('sha256', $key);


$AccountPass = openssl_encrypt(date("YmdH").'pass'.$AccountPass, "AES-256-CBC",
$key, 0, substr(hash('sha256', $AccountName. $AccountPass), 0, 16) );
$AccountPass = base64_encode($AccountPass);

$Url = "https://www.halonet.pl/api/SendSMSTxt";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');
$postfields .=($AccountPass?"&AccountPass=".addslashes($AccountPass):'');
$postfields .=($DestNumbers?"&DestNumbers=".addslashes($DestNumbers):'');
$postfields .=($SMSText?"&SMSText=".base64_encode($SMSText):'');
$postfields .=($SourceNumber?"&SourceNumber=".addslashes($SourceNumber):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

if( curl_error($curl) ) $res['err'] = curl_error($curl);

$res['response'] = curl_exec($curl);
curl_close($curl);

return $res;
}

MyHaloNet-MyServices 25 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy wysyłanie.

Parametry funkcji SendSMSTxt:

– key – klucz wygenerowany w panelu użytkownika


– AccountName – konto SIP, z którego zostanie wysłany SMS
– AccountPass – hasło do konta
– DestNumbers – numer, na który zostanie wysłany SMS (można wprowadzić więcej
numerów oddzielając poszczególne numery przecinkami).
– SMSText – teks SMS-a
– SourceNumber – informacja dla odbierającego (podpis)

Uwaga

Opłata za wysłanie wiadomości pobierana jest z ustawionego konta. Koszt można sprawdzić
w cenniku.

MyHaloNet-MyServices 26 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

wysyłanie – SendSMSVoice

Funkcja wysyłająca SMS-Voice

function SendSMSVoice($token, $key, $AccountName, $AccountPass, $DestNumbers, $SMSText,


$SourceNumber='' ) {

$key = hash('sha256', $key);


$AccountPass = openssl_encrypt(date("YmdH").'pass'.$AccountPass, "AES-256-CBC",
$key, 0, substr(hash('sha256', $AccountName.$AccountPass), 0, 16) );
$AccountPass = base64_encode($AccountPass);

$Url = "https://www.halonet.pl/api/SendSMSVoice";

$curl = curl_init();
$postfields = "grant_type=authorization_code&code=$token";
$postfields .=($AccountName?"&AccountName=".addslashes($AccountName):'');
$postfields .=($AccountPass?"&AccountPass=".addslashes($AccountPass):'');
$postfields .=($DestNumbers?"&DestNumbers=".addslashes($DestNumbers):'');
$postfields .=($SMSText?"&SMSText=".base64_encode($SMSText):'');
$postfields .=($SourceNumber?"&SourceNumber=".addslashes($SourceNumber):'');

curl_setopt_array($curl,
array(
CURLOPT_URL => $Url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => array("content-type: application/x-www-form-urlencoded"),
)
);

if( curl_error($curl) ) $res['err'] = curl_error($curl);

$res['response'] = curl_exec($curl);
curl_close($curl);

return $res;
}

MyHaloNet-MyServices 27 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przed wywołaniem funkcji należy pobrać jednorazowy Token funkcją getToken (opis w rozdziale
„Komunikacja z usługą MyHaloNet-MyServices”). W funkcji należy poustawiać odpowiednie
parametry i wywołać przekazując pobrany Token.

Token powinien autoryzować do poleceń z grupy wysyłanie.

Parametry funkcji SendSMSVoice:

– key – klucz wygenerowany w panelu użytkownika


– AccountName – konto SIP, z którego zostanie wysłany SMS
– AccountPass – hasło do konta
– DestNumbers – numer, na który zostanie wysłany SMS (można wprowadzić więcej
numerów oddzielając poszczególne numery przecinkami).
– SMSText – teks SMS-a
– SourceNumber – informacja dla odbierającego (podpis)

Uwaga

Opłata za wysłanie wiadomości pobierana jest z ustawionego konta. Koszt można sprawdzić
w cenniku.

MyHaloNet-MyServices 28 / 29
TARTEL Sp. z o.o. ul. Kozielska 18, 44-100 Gliwice tel. 32 49 44 44 e-mail: bok@halonet.pl www.halonet.pl
NIP: 631-25-35-263, Regon: 240703572
KRS: 0000287048, Sąd Rejonowy w Gliwicach, X Wydział Gospodarczy Kapitał zakładowy: 50.000 zł

Przykład wywołania funkcji pobierającej billing:

// billing - połączenia wychodzące


$res = getToken();
if( $res['response'] === false || $res['err'] !== 200 ) {
$output = $res;
} else {
$token = json_decode($res['response'])->Token;
$res = GetBillingAccountOut($token);
$output = json_decode($res['response']);
}
print_r($output);

MyHaloNet-MyServices 29 / 29

You might also like