Metody api

Na podanej liście funkcji znajdują się przykłady zastosowania. Zostały one wygenerowane automatycznie na podstawie DocTestów. Jako pierwszy argument jest podawany request który w przypadku komunikacji przez api jest dodawany automatycznie podanie go spowoduje błąd. Poniższe przykłady ponadto nie są enkapsułowane w protokół JSON-RPC 2.0.

Każda z poniższych metod umożliwia również podanie dwóch dodatkowych argumentów username oraz password które umożliwia wykonanie danej metody bez uprzedniego zalogowania i uwierzytelniania na podstawie klucza sesyjnego. Jednak taka operacja powoduje wykonanie za każdym razem weryfikacji poprawności hash’a co skutkuje dodatkowymi zapytaniami do bazy danych oraz duża ilością zbędnych obliczeń i może wpłynąć negatywnie na czas reakcji systemu.

client_get(request, *args, **kwargs)

Pobranie danych o wyznaczonymi kliencie.

Parametry:

id (int) – identyfikator wybranego klienta

Zwraca:

Obiekt klienta posiadający wskazane id

Typ zwracany:

client

>>> api.client_get(request, 2) 
{'description': u'bardzo trudny', 'pin': ..., 'isp': u'...', 'active': False, 'crm_id': ..., 'id': ..., 'name': u'client2'}
client_add(request, crm_id, name, description, isp=None, firstname=None, lastname=None, city=None, street=None, house_nr=None, apartment_nr=None, id_type=None, id_value=None)

Metoda tworząca nowego klienta. W przypadku nie podania do którego isp nowo utworzony klient ma należeć, wybierany jest jeden z isp do którego przypisany jest użytkownik. Wybierany jest pierwszy isp z listy wg kolejności w bazie danych, jednak kolejność ta nie jest deterministyczna i może ulegać zmianie, dlatego dla użytkowników przypisanych do więcej niż jednego ISP zaleca się podawanie ISP za każdym razem.

Parametry:
  • crm_id (string(200)) – referencja obiektu do bazy ISP

  • name (string(200)) – przyjazna nazwa lub adres

  • description (string(255)) – opis zawierający dodatkowe informacje o kliencie

  • isp (isp) – isp do którego ma należeć klient (argument opcjonalny)

  • firstname (string(255)) – imie

  • lastname (string(255)) – nazwisko

  • city (string(7)) – kode terytu odpowiadający miejscowości np 0986283

  • street (string(12)) – kod terytu odpowiadający ulicy np 098694613722

  • house_nr (string(10)) – numer domu

  • apartment_nr (string(10)) – numer mieszkania

  • id_type ({3:PESEL, 2:Passport})) – Typ dokumenty poświadczającego tożsamość

  • id_value (string(200)) – Numer dokumentu poświadczającego tożsamość

Zwraca:

Nowo stworzony obiekt klienta

Typ zwracany:

client

>>> api.client_add(request, "2", "client2", "trudny", isp="isptestowy") 
{'description': 'trudny', 'pin': ..., 'isp': u'...', 'active': False, 'crm_id': '2', 'id': 2, 'name': 'client2'}
client_set(request, id, crm_id=None, name=None, description=None)

Zmiana danych już istniejącego klienta. Nie ma możliwość przenoszenia klienta między ISP.

Parametry:
  • id (int) – identyfikator istniejącego klienta

  • crm_id (string(200)) – referencja obiektu do bazy ISP

  • name (string(200)) – przyjazna nazwa lub adres

  • description (string(255)) – opis zawierający dodatkowe informację o kliencie

Zwraca:

Obiekt klienta ze zmienionymi danymi

Typ zwracany:

client

>>> api.client_set(request, 2, description="bardzo trudny") 
{'description': 'bardzo trudny', 'pin': ..., 'isp': u'...', 'active': False, 'crm_id': u'2', 'id': 2, 'name': u'client2'}
clientdata_get(request, id)

Pobranie personalnych danych już istniejącego klienta.

Parametry:

id – identyfikator klienta

clientdata_set(request, id, firstname=None, lastname=None, city=None, street=None, house_nr=None, apartment_nr=None, id_type=None, id_value=None)

Aktualizacja personalnych danych już istniejącego klienta.

Parametry:
  • id (int) – identyfikator klienta

  • firstname (string(255)) – imie

  • lastname (string(255)) – nazwisko

  • city (string(7)) – kode terytu odpowiadający miejscowości np 0986283

  • street (string(12)) – kod terytu odpowiadający ulicy np 098694613722

  • house_nr (string(10)) – numer domu

  • apartment_nr (string(10)) – numer mieszkania

  • id_type ({3:PESEL, 2:Passport})) – Typ dokumenty poświadczającego tożsamość

  • id_value (string(200)) – Numer dokumentu poświadczającego tożsamość

client_list(request, *args, **kwargs)

Pobranie listy klientów spełniających podane kryteria. Wszystkie kryteria które zostaną podane zostaną wzięte pod uwagę. Podanie pustego kryterium pozwoli pobrać informację o wszystkich obiektach.

Parametry:
  • active (bool) – wybierz obiekty z podaną flagą active

  • crm_id_in (array) – wartość pola crm_id znajduje się na podanej liście

  • name_like (string) – nazwa zawiera

  • description_like (string) – opis zawiera

  • isp (string) – należący do podanego isp

Zwraca:

Lista klientów spełniających kryterium

Typ zwracany:

[ client ]

>>> api.client_list(request, active=True)
[{'id': 1}]
>>> api.client_list(request, active=False)
[{'id': 2}]
>>> api.client_list(request, crm_id_in=[0,2])
[{'id': 2}]
>>> api.client_list(request, name_like="client")
[{'id': 2}, {'id': 1}]
>>> api.client_list(request, description_like="trudny")
[{'id': 2}]
>>> api.client_list(request)
[{'id': 2}, {'id': 1}]
client_count(request, *args, **kwargs)

Pobranie ilości klientów spełniających podane kryteria. Wszystkie kryteria które zostaną podane zostaną wzięte pod uwagę. Podanie pustego kryterium pozwoli pobrać informację o wszystkich obiektach.

Parametry:
  • active (bool) – wybierz obiekty z podaną flagą active

  • crm_id_in (array) – wartość pola crm_id znajduje się na podanej liście

  • name_like (string) – nazwa zawiera

  • description_like (string) – opis zawiera

  • isp (string) – należący do podanego isp

Zwraca:

Liczba klientów spełniających kryterium

Typ zwracany:

int

>>> api.client_count(request, active=True)
1
>>> api.client_count(request, active=False)
1
>>> api.client_count(request, crm_id_in=[0,2])
1
>>> api.client_count(request, name_like="client")
2
>>> api.client_count(request, description_like="trudny")
1
>>> api.client_count(request)
2
client_pin_set(request, id, pin)

Ustawienie pinu klienta o podanym id

Parametry:
  • id (int) – identyfikator klienta

  • pin (string(255)) – nowy pin

Zwraca:

Obiekt klienta ze zmienionym pinem

Typ zwracany:

client

>>> api.client_pin_set(request, 2, pin="000") 
{'description': u'bardzo trudny', 'pin': '000', 'isp': u'...', 'active': False, 'crm_id': u'2', 'id': 2, 'name': u'client2'}
stb_get(request, mac)

Pobierz dane o danym Set-top-Box’ie

Parametry:

mac (string(12)) – adres MAC urządzenia

Zwraca:

Obiekt stb o danym adresie MAC

Typ zwracany:

stb

>>> api.stb_get(request, "aabbccddeeff")
{'status': 'on', 'function_access_point': True, 'description': u'zepsuty', 'pin': u'aabbccddee', 'ip': '192.168.0.2', 'mac': u'aabbccddeeff', 'available_streamers': ['global', [{'id': 4, 'full_name': u'l3backup.boot'}]], 'function_standard_dhcp': False, 'firmware': {'tag': u'1.1.1'}, 'l3': False, 'application_list': ['global', [{'name': u'1'}, {'name': u'2'}]], 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'serial_number': u'aabbccddeeff', 'type': 'Korbox 2.0'}
stb_set(request, mac, l3=None, function_access_point=None, function_standard_dhcp=None, is_multicast=None, wifi_client=None)

Ustaw flagi dla STB.

Parametry:
  • mac (string(12)) – adres MAC urządzenia

  • l3 (bool) – czy urządzenie jest urządzeniem l3

  • function_access_point (bool) – czy może pełnić funkcję access point’a

  • function_standard_dhcp (bool) – czy ma pobierać standardowego dhcp

Zwraca:

Obiekt stb o danym adresie MAC

Typ zwracany:

stb

>>> api.stb_get(request, "aabbccddeeff", function_access_point=False)
{'status': 'on', 'function_access_point': False, 'description': u'zepsuty', 'pin': u'aabbccddee', 'ip': '192.168.0.2', 'mac': u'aabbccddeeff', 'available_streamers': ['global', [{'id': 4, 'full_name': u'l3backup.boot'}]], 'function_standard_dhcp': False, 'firmware': {'tag': u'1.1.1'}, 'l3': False, 'application_list': ['global', [{'name': u'1'}, {'name': u'2'}]], 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'serial_number': u'aabbccddeeff', 'type': 'Korbox 2.0'}
stb_count(request, mac_in=None, serial_number_in=None, description_like=None, l3=None, proxy_interface=None, firmware_in=None, ip_in=None, stb_type=None, is_multicast=None)

Pobierz ilość obiektów stb spełaniających dane kryterium. Wszystkie kryteria które zostaną podane zostaną wzięte pod uwagę. Podanie pustego kryterium pozwoli pobrać informację o wszystkich obiektach.

Parametry:
  • mac_in ([ string(12) ]) – adres MAC urządzenia znajduje się na podanej liście

  • serial_number_in ([ string(14) ]) – numer seryjny znajdue się na podaje liście

  • description_like (string) – opis zawiera dany ciąg znaków

  • l3 (bool) – flaga l3 ustawiona jest na podaną

  • is_multicast (bool) – flaga is_multicast ustawiona jest na podaną

  • proxy_interface (string) – stb należy do podanego interfejsu

  • firmware_in ([ string ]) – firmware znajduje się na liście

  • ip_in ([ ip ]) – ipv4 (tylko dla boxów l2) znajduje się na podanej liście

  • stb_type (string) – stb jest podanego typu

Zwraca:

liczba obiektów spełacjących dane kryterium

Typ zwracany:

int

>>> api.stb_count(request, mac_in=["aabbccddeeff",])
1
>>> api.stb_count(request, serial_number_in=["aabbccddeeff",])
1
>>> api.stb_count(request, description_like='zepsuty')
1
>>> api.stb_count(request, l3=False)
2
>>> api.stb_count(request, proxy_interface="isptestowy01.stblan")
3
>>> api.stb_count(request, firmware_in=["1.1.1",])
1
>>> api.stb_count(request, ip_in=["192.168.0.2",])
1
>>> api.stb_count(request, stb_type="Korbox 2.0")
2
>>> api.stb_count(request, is_multicast=False)
2
stb_list(request, mac_in=None, serial_number_in=None, description_like=None, l3=None, proxy_interface=None, firmware_in=None, ip_in=None, stb_type=None, is_multicast=None)

Pobierz listę obiektów stb spełaniających dane kryterium. Wszystkie kryteria które zostaną podane zostaną wzięte pod uwagę. Podanie pustego kryterium pozwoli pobrać informację o wszystkich obiektach.

Parametry:
  • mac_in ([ string(12) ]) – adres MAC urządzenia znajduje się na podanej liście

  • serial_number_in ([ string(14) ]) – numer seryjny znajdue się na podaje liście

  • description_like (string) – opis zawiera dany ciąg znaków

  • l3 (bool) – flaga l3 ustawiona jest na podaną

  • is_multicast (bool) – flaga multicast ustawiona jest na podaną

  • proxy_interface (string) – stb należy do podanego interfejsu

  • firmware_in ([ string ]) – firmware znajduje się na liście

  • ip_in ([ ip ]) – ipv4 (tylko dla boxów l2) znajduje się na podanej liście

  • stb_type (string) – stb jest podanego typu

Zwraca:

Lista obiektów spełacjących dane kryterium

Typ zwracany:

[ stb ]

>>> api.stb_list(request, mac_in=["aabbccddeeff",])
[{'mac': u'aabbccddeeff'}]
>>> api.stb_list(request, serial_number_in=["aabbccddeeff",])
[{'mac': u'aabbccddeeff'}]
>>> api.stb_list(request, description_like='zepsuty')
[{'mac': u'aabbccddeeff'}]
>>> api.stb_list(request, l3=False)
[{'mac': u'aabbccddeeff'}, {'mac': u'aabbccddeeee'}]
>>> api.stb_list(request, proxy_interface="isptestowy01.stblan")
[{'mac': u'aabbccddeeff'}, {'mac': u'aabbccddeeee'}, {'mac': u'aabbccddeecc'}]
>>> api.stb_list(request, firmware_in=["1.1.1",])
[{'mac': u'aabbccddeeff'}]
>>> api.stb_list(request, ip_in=["192.168.0.2",])
[{'mac': u'aabbccddeeff'}]
>>> api.stb_list(request, stb_type="Korbox 2.0")
[{'mac': u'aabbccddeedd'}, {'mac': u'aabbccddeeff'}]
>>> api.stb_list(request, is_multicast=True)
[{'mac': u'aabbccddeedd'}]
stb_pin_set(request, mac, pin)

Ustawienie pinu urządzenia (wymagane tylko na urządzeniach typu MAG)

Parametry:
  • mac (string) – Adres mac urządzenia

  • pin (string) – nowy pin

Zwraca:

Obiekt stb ze zmienionym pinem

Typ zwracany:

stb

>>> api.stb_pin_set(request, mac="aabbccddeeff", pin="xxx")
{'status': 'on', 'function_access_point': True, 'description': u'zepsuty', 'pin': 'xxx', 'ip': '192.168.0.2', 'mac': u'aabbccddeeff', 'available_streamers': ['global', [{'id': 4, 'full_name': u'l3backup.boot'}]], 'function_standard_dhcp': False, 'firmware': {'tag': u'1.1.1'}, 'l3': False, 'application_list': ['global', [{'name': u'1'}, {'name': u'2'}]], 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'serial_number': u'aabbccddeeff', 'type': 'Korbox 2.0'}
stb_voip_get(request, mac)

Pobierz ustawienia VOIP

Parametry:

mac (string) – adres MAC urządzeń

Zwraca:

ustawienia VOIP dla danego stb

Typ zwracany:

voip_settings

>>> api.stb_voip_get(request, mac="aabbccddeeff")
{'username': u'ccc', 'voip_server': u'127.0.0.1', 'dtmf_mode': u'rfc2833', 'mac': u'aabbccddeeff', 'password': u'cccc', 'port': 1111}
stb_voip_set(request, mac, voip_server, port, voip_username, voip_password, dtmf_mode)

Ustawienie danych dostępowych dla wbudowanych bramek VOIP.

Parametry:
  • mac (string) – adres MAC urządzenia

  • voip_server (string) – ip lub nazwa hosta serwera VOIP

  • port (string) – port na którym słucha serwer VOIP

  • voip_username (string) – nazwa użytkownika

  • voip_password (string) – hasło dla użytkownika

  • dtmf_mode (string) – tryb wybierania wielotonowego

Zwraca:

Obiekt ustawień voip

Typ zwracany:

voip_settings

Informacja

W przypadku problemów z rozwiązywaniem adresów DNS które w sieciach partnerów zdarzają się często podanie nazwy hosta zamiast adresu ip może powodować niedziałanie bramki VOIP. Podanie adresu ip może również zapobiec atakom DNS spoffing dla tego rekomendujemy podawanie właśnie adresu ip w polu voip_server

>>> api.stb_voip_set(request, mac="aabbccddeeff", voip_server="127.0.0.1", port="1111", voip_username="ccc", voip_password="cccc", dtmf_mode="rfc2833")
{'username': 'ccc', 'voip_server': '127.0.0.1', 'dtmf_mode': 'rfc2833', 'mac': u'aabbccddeeff', 'password': 'cccc', 'port': '1111'}
stb_wificonfig_get(request, mac)

Pobierz dane o wifi Set-top-Box’sa

Parametry:

mac (string(12)) – adres MAC urządzenia

Zwraca:

Obiekt Wifi config dla stb o danym adresie MAC

Typ zwracany:

wificonfig

>>> api.stb_wificonfig_get(request, "aabbccddeeff")
{u'sec_key': '', u'can_edit': True, u'ssid': '', u'mac': '', u'sec_type': '', u'channel': ''}
stb_wificonfig_set(request, mac, sec_type=None, ssid=None, sec_key=None, channel=None, can_edit=None)

Ustaw dane o wifi Set-top-Box’sa

Parametry:
  • mac (string(12)) – adres MAC urządzenia

  • sec_type (string(255)) – Typ zabezpieczeń

  • ssid (string(255)) – Nazwa sieci (SSID)

  • sec_key (string(255)) – Klucz zabezpieczeń (hasło do wifi)

  • channel (int(32767)) – Kanał wifi

  • can_edit (bool) – Czy użytkownik może edytować konfigurację wifi

Zwraca:

Obiekt Wifi config dla stb o danym adresie MAC

Typ zwracany:

wificonfig

>>> api.stb_wificonfig_set(request, "aabbccddeeff")
{u'sec_key': '', u'can_edit': True, u'ssid': '', u'mac': u'aabbccddeeff', u'sec_type': '', u'channel': ''}
stb_rpc_operation_list(request)

Pobierz liste dostępnych metod RPC.

Zwraca:

lista metod RPC

Typ zwracany:

[ string ]

>>> api.stb_rpc_operation_list(request)
['reboot']
stb_rpc(request, rpc_method_name, *args, **kwargs)

Zleć wykonanie polecenie RPC.

Parametry:
  • rpc_method_name (string) – nazwa polecenia

  • args – argumenty

  • kwargs – argumenty nazwane

Zwraca:

W zależności od metody

Typ zwracany:

{«task_id»: string ,»result»: string, «status»: string}

>>> api.stb_rpc(request, "reboot", mac="aabbccddeeff")
{'status': 'PENDING', 'result': '', 'task_id': '...'}
stb_rpc_check_state(request, task_id)

Sprawdź stan i pobierz wynik metody RPC.

Parametry:

task_id (string) – identyfikator zadania

Zwraca:

W zależności od metody

Typ zwracany:

{«task_id»: string ,»result»: string, «status»: string}

>>> api.stb_rpc_check_state(request, "e96c3a97-6608-4328-9768-9694fb2e9ddb")
{'status': 'PENDING', 'result': '', 'task_id': '...'}
stb_application_list_get(request, mac)

Pobierz listę aplikacji przypisanych do danego urządzenia.

Parametry:

mac (string) – adres MAC urządzenia

Zwraca:

krotka zawierająca typ listy oraz jej zawartość

Typ zwracany:

(list_type, [ application ])

>>> api.stb_application_list_get(request, mac="aabbccddeeff")
['global', [{'name': u'1'}, {'name': u'2'}]]
stb_application_list_set(request, mac, application_list)

Ustaw listę aplikacji dla danego stb.

Parametry:
  • mac (string) – adres MAC urządzenia

  • application_list ([ string ]) – lista aplikacji

Zwraca:

krotka zawierająca typ listy oraz jej zawartość

Typ zwracany:

(list_type, [ application ])

>>> api.stb_application_list_set(request, mac="aabbccddeeff", application_list=["1", "2"])
['stb', [{'name': u'1'}, {'name': u'2'}]]
stb_application_list_del(request, mac)

Usuń listę aplikacji dla danego STB.

Parametry:

mac (string) – adres MAC urządzenia

Zwraca:

krotka zawierająca typ listy oraz jej zawartość

Typ zwracany:

(list_type, [ application ])

>>> api.stb_application_list_del(request, mac="aabbccddeeff")
['global', [{'name': u'1'}, {'name': u'2'}]]
stb_available_proxy_get(request, mac)

Pobierz listę proxy dostępnych dla danego urządzenia.

Parametry:

mac (string) – adres MAC urządzenia

Zwraca:

krotka zawierająca typ listy oraz jej zawartość

Typ zwracany:

(list_type, [ proxy_interface ])

>>> api.stb_available_proxy_get(request, mac="aabbccddeeff")
['global', [{'id': 4, 'full_name': u'l3backup.boot'}]]
service_get(request, id)

Pobiera dane o danej usłudze.

Parametry:

id (int) – identyfikator usługi

Zwraca:

żądana usługa

Typ zwracany:

service

>>> api.service_get(request, id=1)
{'next_service': None, 'previous_service': None, 'stbs': [{'mac': u'aabbccddeeff'}], 'id': 1, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}], 'end': '', 'name': u'fff', 'multiroom': False, 'start': '2016-01-20', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_add(request, client, package_base, package_additional, state, proxy_interface, name, stbs, start, end=None)

Stwórz nową usługę.

Parametry:
  • client (int) – podmiot usługi

  • package_base (string) – pakiet podstawowy

  • package_additional ([ string ]) – lista pakietów dodatkowych

  • state (string) – stan usługi

  • proxy_interface (string) – interfejs na którym będzie świadczona usługa

  • name (string) – przyjazna nazwa usługi lub krótki opis

  • stbs ([ string ]) – lista urządzeń na których będzie świadczona usługa

  • start (date) – data rozpoczęcia usługi

  • end (date) – data zakończenia usługi lub null gdy usługa bezterminowa

Zwraca:

nowa usługa

Typ zwracany:

service

>>> api.service_add(request, client=2, package_base="test", package_additional=[], state="on", proxy_interface="isptestowy01.stblan", name="test", stbs=["aabbccddeeee"], start=datetime.now().date().isoformat())
{'next_service': None, 'previous_service': None, 'stbs': [{'mac': u'aabbccddeeee'}], 'id': 3, 'package_additional': [], 'end': '', 'name': 'test', 'multiroom': False, 'start': '...', 'state': 'on', 'client': {'id': 2}, 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_list(request, id_in=None, client=None, package_base=None, package_additional=None, state=None, proxy_interface=None, name_like=None, stb_in=None, start=None, end=None, active=None, chain_id=None)

Pobierz listę usług spełniających podane kryteria. Wszystkie kryteria które zostaną podane zostaną wzięte pod uwagę. Podanie pustego kryterium pozwoli pobrać informację o wszystkich obiektach.

Parametry:
  • id_in ([ int ]) – lista identyfikatorów usług

  • client (int) – tylko usługi danego klienta

  • package_base (string) – tylko usługi posiadające wskazany pakiet podstawowy

  • package_additional (string) – tylko usługi posiadające wskazany pakiet dodatkowy

  • state (string) – tylko usługi o określonym stanie

  • name_like (string) – tylko usługi zawietające podaną frazę w nazwie

  • proxy_interface (string) – tylko usługi świadczone na podanym interfejsie

  • stb_in ([ string ]) – tylko usługi świadczone na danych stb

  • start (string) – tylko usługi rozpoczynające się o wskazanej dacie

  • end (bool) – tylko usługi kończące się o wskazanej dacie

  • active – tylko usługi aktywne

  • chain_id (int) – tylko usługi o danym chain_id

Zwraca:

Lista usług spełniających kryterium

Typ zwracany:

[ service ]

>>> api.service_list(request, id_in=[0,1])
[{'start': '2016-01-20', 'end': '...', 'package_base': ..., 'id': 1}]
>>> api.service_list(request, client=1)
[{'start': '...', 'end': '', 'package_base': ..., 'id': 2}, {'start': '...', 'end': '...', 'package_base': ..., 'id': 1}]
>>> api.service_list(request, package_base="test")
[{'start': '...', 'end': '', 'package_base': ..., 'id': 2}, {'start': '...', 'end': '...', 'package_base': ..., 'id': 1}]
>>> api.service_list(request, package_additional="t2")
[{'start': '...', 'end': '', 'package_base': ..., 'id': 2}, {'start': '...', 'end': '...', 'package_base': ..., 'id': 1}]
>>> api.service_list(request, state="payment_notyfy")
[{'start': '...', 'end': '', 'package_base': ..., 'id': 2}, {'start': '...', 'end': '...', 'package_base': ..., 'id': 1}]
>>> api.service_list(request, proxy_interface="isptestowy01.stblan")
[{'start': '...', 'end': '', 'package_base': ..., 'id': 2}, {'start': '...', 'end': '...', 'package_base': ..., 'id': 1}]
>>> api.service_list(request, name_like="fff")
[{'start': '...', 'end': '...', 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}, 'id': 1}]
>>> api.service_list(request, stb_in=["aabbccddeeff",])
[{'start': '...', 'end': '...', 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}, 'id': 1}]
>>> api.service_list(request, start="2016-01-20T00:00:00")
[{'start': '...', 'end': '...', 'package_base': ..., 'id': 1}]
>>> api.service_list(request, end="")
[{'start': '...', 'end': '', 'package_base': ..., 'id': 2}, {'start': '...', 'end': '...', 'package_base': ..., 'id': 1}]
service_count(request, id_in=None, client=None, package_base=None, package_additional=None, state=None, proxy_interface=None, name_like=None, stb_in=None, start=None, end=None)

Pobierz ilość usług spełniających podane kryteria. Wszystkie kryteria które zostaną podane zostaną wzięte pod uwagę. Podanie pustego kryterium pozwoli pobrać informację o wszystkich obiektach.

Parametry:
  • id_in ([ int ]) – lista identyfikatorów usług

  • client (int) – tylko usługi danego klienta

  • package_base (string) – tylko usługi posiadające wskazany pakiet podstawowy

  • package_additional (string) – tylko usługi posiadające wskazany pakiet dodatkowy

  • state (string) – tylko usługi o określonym stanie

  • name_like (string) – tylko usługi zawietające podaną frazę w nazwie

  • proxy_interface (string) – tylko usługi świadczone na podanym interfejsie

  • stb_in ([ string ]) – tylko usułgi świadczone na danych stb

  • start (string) – tylko usługi rozpoczynające się o wskazanej dacie

  • end (string) – tylko usłgui kończące się o wskazanej dacie

Zwraca:

liczba usług spełniających kryterium

Typ zwracany:

int

>>> api.service_count(request, id_in=[0,1])
1
>>> api.service_count(request, client=1)
2
>>> api.service_count(request, package_base="test")
2
>>> api.service_count(request, package_additional="t2")
2
>>> api.service_count(request, state="payment_notyfy")
2
>>> api.service_count(request, proxy_interface="isptestowy01.stblan")
2
>>> api.service_count(request, name_like="fff")
1
>>> api.service_count(request, stb_in=["aabbccddeeff",])
1
>>> api.service_count(request, start="2016-01-20T00:00:00")
1
>>> api.service_count(request, end="")
2
service_status_set(request, id, state)

Ustawia status usługi o podanym identyfikatorze. Uaktualniane też są statusy przyszłych usług, które powstały w wyniku utworzenia lub modyfikacji podanej usługi.

Parametry:
  • id (int) – identyfikator usługi

  • state (string) – nowy stan usługi

Zwraca:

obiekt usługi z nowym stanem

Typ zwracany:

service

>>> api.service_status_set(request, id=1, state="payment_notyfy")
{'next_service': None, 'previous_service': None, 'stbs': [{'mac': u'aabbccddeeff'}], 'id': 1, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}], 'end': '', 'name': u'fff', 'multiroom': False, 'start': '2016-01-20', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_packages_set(request, id, package_base, package_additional, date)

Tworzy nową usługę ze wskazanymi pakietami kanałów. Stara usługa jest zakańczana a nowa rozpoczynana we wskazanej dacie. Nowa usługa jest kontynuacją starej usługi - będzie zawierać takie same urządzenia oraz daty zakończenia usługi.

Parametry:
  • id (int) – identyfikator usługi

  • package_base (string) – pakiet podstawowy

  • package_additional ([ string ]) – lista pakietów dodatkowych

  • date (string) – data zmiany

Zwraca:

nowa usługa

Typ zwracany:

service

>>> api.service_packages_set(request, package_base="test", id=1, package_additional=["t2", "t3"] ,date=datetime.now().date().isoformat())  
{'next_service': None, 'previous_service': 1, 'stbs': [{'mac': u'aabbccddeeff'}], 'id': 2, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}, {u'active': True, u'test': False, u'id': 3, u'name': u't3'}], 'end': '', 'name': u'', 'multiroom': False, 'start': '...', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_end_set(request, id, date)

Ustaw datę zakończenia usługi.

Parametry:
  • id (int) – identyfikator usługi

  • date (date) – data zakończenia

Zwraca:

zmodyfikowana usługa lub null

Typ zwracany:

service

>>> api.service_end_set(request, id=3, date=datetime.now().date().isoformat())
service_stb_get(request, id)

Pobierz informacje o wskazanej usłudze.

Parametry:

id (int) – identyfikator usługi

Zwraca:

żadana usługa

Typ zwracany:

service

>>> api.service_stb_get(request, id=1)
[{'mac': u'aabbccddeeff'}]
service_stb_add(request, id, mac, date)

Dodanie urządzenia do listy urządzeń na których jest świadczona usługa. Powoduje zakończenie starej usługi i rozpoczęcie nowej we wskazanej dacie. Nowa usługa jest kontynuacją starej usługi.

Parametry:
  • id (int) – identyfikator usługi

  • mac (string) – adres MAC urządzenia

  • date (date) – data zmiany

Zwraca:

nowa usługa

Typ zwracany:

service

>>> api.service_stb_add(request, id=2, mac='aabbccddeedd', date=datetime.now().date().isoformat())
{'next_service': None, 'previous_service': 1, 'stbs': [{'mac': u'aabbccddeeff'}, {'mac': u'aabbccddeedd'}], 'id': 2, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}, {u'active': True, u'test': False, u'id': 3, u'name': u't3'}], 'end': '...', 'name': u'', 'multiroom': True, 'start': '...', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_stb_set(request, id, stbs, date)

Ustawia listę urządzeń, na których jest świadczona usługa. Powoduje zakończenie starej usługi i rozpoczęcie nowej we wskazanej dacie. Ustawione urządzenia będą we wszystkich przyszłych usługach. Z tego powodu zaleca się stosowanie metod service_stb_add i service_stb_remove.

Parametry:
  • id (int) – identyfikator usługi

  • stbs ([ string ]) – lista adresów MAC urządzeń

  • date (date) – data zmiany

Zwraca:

nowa usługa

Typ zwracany:

service

>>> api.service_stb_set(request, id=2, stbs=['aabbccddeedd',"aabbccddeeee"], date=datetime.now().date().isoformat())
{'next_service': None, 'previous_service': 1, 'stbs': [{'mac': u'aabbccddeedd'}, {'mac': u'aabbccddeeee'}], 'id': 2, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}, {u'active': True, u'test': False, u'id': 3, u'name': u't3'}], 'end': '...', 'name': u'', 'multiroom': True, 'start': '...', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_stb_del(request, id, mac, date)

Usuwa urządzenie z listy boxów na których jest świadczona dana usługa. Powoduje zakończenie starej usługi i rozpoczęcie nowej we wskazanej dacie.

Parametry:
  • id (int) – identyfikator usługi

  • mac (string) – adres MAC urządzenia

  • date (date) – data zmiany

Zwraca:

nowa usługa

Typ zwracany:

service

>>> api.service_stb_del(request, id=2, mac="aabbccddeeee", date=datetime.now().date().isoformat())
{'next_service': None, 'previous_service': 1, 'stbs': [{'mac': u'aabbccddeedd'}], 'id': 2, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}, {u'active': True, u'test': False, u'id': 3, u'name': u't3'}], 'end': '', 'name': u'', 'multiroom': False, 'start': '...', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_nic_set(request, id, proxy_interface)

Zmiana interfejsu do którego przypisana jest usługa.

Parametry:
  • id (int) – identyfikator usługi

  • proxy_interface (string) – nowy interfejs proxy do którego będzie przypisana usługa

Zwraca:

żądana usługa

Typ zwracany:

service

>>> api.service_nic_set(request, id=1, proxy_interface="isptestowy01.stblanl3")
{'next_service': 2, 'previous_service': None, 'stbs': [{'mac': u'aabbccddeeff'}], 'id': 1, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}], 'end': '...', 'name': u'fff', 'multiroom': False, 'start': '...', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 3, 'full_name': u'isptestowy01.stblanl3'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
service_name_set(request, id, name)

Zmiana nazwy w usłudze. Zmienia nazwy w wszystkich powiązanych usługach.

Parametry:
  • id (int) – identyfikator usługi

  • name (string) – nowa nazwa usługi

Zwraca:

żadana usługa

Typ zwracany:

service

>>> api.service_name_set(request, id=1, name='namev2')
{'next_service': 2, 'previous_service': None, 'stbs': [{'mac': u'aabbccddeeff'}], 'id': 1, 'package_additional': [{u'active': True, u'test': False, u'id': 2, u'name': u't2'}], 'end': '...', 'name': 'namev2', 'multiroom': False, 'start': '...', 'state': 'payment_notyfy', 'client': {'id': 1}, 'proxy_interface': {'id': 3, 'full_name': u'isptestowy01.stblanl3'}, 'package_base': {u'active': True, u'test': False, u'id': 1, u'name': u'test'}}
proxy_get(request, hostname)

Pobierz informacje o wskazanym proxy.

Parametry:

hostname (string) – hostname danego proxy

Zwraca:

obiekt proxy o podanym hostname’ie

Typ zwracany:

proxy

>>> api.proxy_get(request, hostname="isptestowy01")
{'snmp_community': u'', 'description': u'', 'last_reload': '2016-01-19T09:43:08.088000+00:00', 'interfaces': [{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}], 'hostname': u'isptestowy01', 'enabled': True, 'boot_interface': {'id': 1, 'full_name': u'isptestowy01.boot'}}
proxy_list(request)

Pobierz listę wszystkich proxy.

Zwraca:

lista proxy

Typ zwracany:

[ proxy ]

>>> api.proxy_list(request)
[{'hostname': u'isptestowy02'}, {'hostname': u'isptestowy01'}]
proxy_set_boot_interface(request, hostname, proxy_interface)

Ustawia interfejs ładowania proxy na wskazany

Parametry:
  • hostname (string) – nazwa proxy

  • proxy_interface (string) – pełna nazwa interfejsu

Zwraca:

obiekt proxy

Typ zwracany:

proxy

>>> api.proxy_set_boot_interface(request, hostname="isptestowy01", proxy_interface="isptestowy01.stblan")
{'snmp_community': u'', 'description': u'', 'last_reload': '2016-01-19T09:43:08.088000+00:00', 'interfaces': [{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}], 'hostname': u'isptestowy01', 'enabled': True, 'boot_interface': {'id': 2, 'full_name': u'isptestowy01.stblan'}}
>>> api.proxy_set_boot_interface(request, hostname="isptestowy01", proxy_interface="isptestowy01.boot")
{'snmp_community': u'', 'description': u'', 'last_reload': '2016-01-19T09:43:08.088000+00:00', 'interfaces': [{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}], 'hostname': u'isptestowy01', 'enabled': True, 'boot_interface': {'id': 1, 'full_name': u'isptestowy01.boot'}}
proxy_enable_set(request, hostname, enabled)

Włącz lub wyłącz proxy.

Informacja

Wyłączenie nie poinformuje fizycznej maszyny że sama ma się wyłączyć. Oprócz zmiany tego parametru potrzebne jest fizyczne włączenie lub wyłączenie maszyny.

Parametry:
  • hostname (string) – nazwa proxy

  • enabled (bool) – flaga określająca czy proxy jest właczone czy nie

Zwraca:

Obiekt proxy

Typ zwracany:

proxy

>>> api.proxy_enable_set(request, hostname="isptestowy01", enabled=False)
{'snmp_community': u'', 'description': u'', 'last_reload': '2016-01-19T09:43:08.088000+00:00', 'interfaces': [{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}], 'hostname': u'isptestowy01', 'enabled': False, 'boot_interface': {'id': 1, 'full_name': u'isptestowy01.boot'}}
>>> api.proxy_enable_set(request, hostname="isptestowy01", enabled=True)
{'snmp_community': u'', 'description': u'', 'last_reload': '2016-01-19T09:43:08.088000+00:00', 'interfaces': [{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}], 'hostname': u'isptestowy01', 'enabled': True, 'boot_interface': {'id': 1, 'full_name': u'isptestowy01.boot'}}
proxy_interface_list(request, *args, **kwargs)

Pobierz listę interfejsów danego proxy lub danego isp.

Parametry:
  • hostname (str) – nazwa proxy

  • isp (str) – nazwa isp

  • stb_connectable (bool) – flaga oznaczająca możliwość podłaczania stb

  • l3flag (bool) – STB podpięte pod ten interfejs są typu L3

Zwraca:

lista intefejsów proxy

Typ zwracany:

[ proxy_interface ]

>>> api.proxy_interface_list(request, hostname="isptestowy01")
[{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}]
>>> api.proxy_interface_list(request)
[{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}]
>>> api.proxy_interface_list(request, l3flag=True, stb_connectable=False)
[]
>>> api.proxy_interface_list(request, stb_connectable=True)
[{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}]
>>> api.proxy_interface_list(request, l3flag=False)
[{'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}]
proxy_interface_add(request, hostname, name, type, enabled, stb_connectable, mac, device, vlan, cidr, default_gateway)

Dodaj interfejs do proxy

Parametry:
  • hostname – nazwa proxy

  • name – nazwa interfejsu

  • type – typ interfejsu

  • enabled – status włączenia

  • stb_connectable – flaga określająca możliwość podłaczania stb do tego interfejsu

  • mac – fizyczny adres interfejsu

  • device – urządzenia do którego jest przypisany dany interfejs

  • vlan – numer vlan lub null gdy brak vlan na tym interfejsie

  • cidr – cidr

  • default_gateway – brama domyślna dla danego interfejsu

Informacja

Pole cidr decyduje w przypadku interfejsu statycznego jaki ip zostaje ustawiony na danym interfejsie a w przypadku typu dhcp jakiego ip sie spodziewamy.

Informacja

Na podstawie pola cird wyliczana jest podsieć z jakiej będą przydzielane ip dla boxów w trybie l2. Ze względu na wydajność nie jest możliwe ustawianie maski podsieci większej niż /16.

Zwraca:

nowy interfejs

Typ zwracany:

proxy_interface

>>> api.proxy_interface_add(request, hostname="isptestowy01", name="stblan2", type="static", enabled=True, stb_connectable=True, mac="000000111111", device="eth2", vlan=None, cidr="192.168.2.1/24", default_gateway="")
{'l3flag': False, 'default_gateway': None, 'vlan': None, 'stb_connectable': True, 'mac': '000000111111', 'full_name': u'isptestowy01.stblan2', 'device': 'eth2', 'cidr': '192.168.2.1/24', 'id': 5, 'name': 'stblan2', 'enabled': True, 'type': 'static'}
proxy_interface_del(request, full_name)

Usunięcie interfejsu

Parametry:

full_name (string) – pełna nazwa interfejsu

Zwraca:

lista interfejsów danego proxy

Typ zwracany:

[ proxy_interface ]

>>> api.proxy_interface_del(request, full_name="isptestowy01.stblan2")
[{'id': 3, 'full_name': u'isptestowy01.stblanl3'}, {'id': 2, 'full_name': u'isptestowy01.stblan'}, {'id': 1, 'full_name': u'isptestowy01.boot'}]
proxy_interface_get(request, full_name)

Pobierz informacje o wskazanym interfesie proxy.

Parametry:

full_name (string) – nazwa danego interfejsu wraz z nazwą proxy

Zwraca:

obiekt interfejsu proxy

Typ zwracany:

proxy_interface

>>> api.proxy_interface_get(request, full_name="isptestowy01.stblan")
{'l3flag': False, 'default_gateway': u'', 'vlan': 31, 'stb_connectable': True, 'mac': u'aabbccddeeff', 'full_name': u'isptestowy01.stblan', 'device': u'eth0', 'cidr': u'192.168.0.1/24', 'id': 2, 'name': u'stblan', 'enabled': True, 'type': 'static'}
proxy_rpc_operation_list(request)

Pobierz liste dostępnych metod RPC.

Zwraca:

lista metod RPC

Typ zwracany:

[ string ]

>>> api.proxy_rpc_operation_list(request)
['reload']
proxy_rpc(request, rpc_method_name, *args, **kwargs)

Zleć wykonanie polecenie RPC.

Parametry:
  • rpc_method_name (string) – nazwa polecenia

  • args – argumenty

  • kwargs – argumenty nazwane

Zwraca:

W zależności od metody

Typ zwracany:

{«task_id»: string ,»result»: string, «status»: string}

>>> api.proxy_rpc(request,"reload", hostname="isptestowy01")
{'status': '...', 'result': '', 'task_id': u'...'}
proxy_rpc_check_state(request, task_id)

Sprawdź stan i pobierz wynik metody RPC.

Parametry:

task_id (string) – identyfikator zadania

Zwraca:

W zależności od metody

Typ zwracany:

{«task_id»: string ,»result»: string, «status»: string}

>>> api.stb_rpc_check_state(request, "e96c3a97-6608-4328-9768-9694fb2e9ddb")
{'status': 'PENDING', 'result': '', 'task_id': '...'}
streamersource_list(request, streamer=None)

Zwraca listę dostępnych źródeł dla kanałów lub panelu.

Zwraca:

lista źródeł

Typ zwracany:

[ streamer_source ]

>>> api.streamersource_list(request)
[{'weight': 1, 'streamer': {'hostname': u'isptestowy01'}, 'sourceip': {'id': 1, 'full_name': u'isptestowy01.boot'}, 'id': 1, 'dhcpboot': False, 'panelsource': True, 'enabled': True, 'streamtype': 'HTTP', 'tftpboot': False, 'upstreamnic': {'id': 1, 'full_name': u'isptestowy01.boot'}, 'streamsource': True, 'type': 'Load Balancing'}]
>>> api.streamersource_list(request, streamer="isptestowy01")
[{'weight': 1, 'streamer': {'hostname': u'isptestowy01'}, 'sourceip': {'id': 1, 'full_name': u'isptestowy01.boot'}, 'id': 1, 'dhcpboot': False, 'panelsource': True, 'enabled': True, 'streamtype': 'HTTP', 'tftpboot': False, 'upstreamnic': {'id': 1, 'full_name': u'isptestowy01.boot'}, 'streamsource': True, 'type': 'Load Balancing'}]
available_packages_list(request)

Zwraca listę dostępnych pakietów

Zwraca:

lista pakietów

Typ zwracany:

[ channel_package ]

>>> api.available_packages_list(request)
[{u'active': True, u'test': False, u'id': 3, u'name': u't3'}, {u'active': True, u'test': False, u'id': 1, u'name': u'test'}, {u'active': True, u'test': False, u'id': 2, u'name': u't2'}]
available_packages_base_list(request)

Zwraca listę dostępnych pakietów podstawowych.

Zwraca:

lista pakietów

Typ zwracany:

[ channel_package ]

>>> api.available_packages_base_list(request)
[{u'active': True, u'test': False, u'id': 1, u'name': u'test'}]
available_packages_additional_list(request)

Zwraca listę dostępnych pakietów dodatkowych

Zwraca:

lista pakietów

Typ zwracany:

[ channel_package ]

>>> api.available_packages_additional_list(request)
[{u'active': True, u'test': False, u'id': 3, u'name': u't3'}, {u'active': True, u'test': False, u'id': 2, u'name': u't2'}]
available_packages_get(request, name)

Zwraca szczegółowe dane o wskazanym pakiecie kanałów.

Parametry:

name (string) – nazwa pakietu

Zwraca:

lista pakietów

Typ zwracany:

[ channel_package ]

>>> api.available_packages_get(request, name="test")
{u'active': True, u'test': False, u'id': 1, u'channels': [], u'name': u'test'}
firmware(request)

Lista dostępnych firmwarów

Zwraca:

lista firmwerów

Typ zwracany:

[ firmware ]

>>> api.firmware(request)
[{'tag': u'1.1.1'}]
application_list(request)

Zwraca listę dostępnych aplikacji

Zwraca:

lista aplikacji

Typ zwracany:

[ application ]

>>> api.application_list(request)
[{'name': u'1'}, {'name': u'2'}]
isp_get(request, name)

Pobież informacie o danym isp.

Paramname:

nazwa isp lub jego id

Zwraca:

Obiekt Isp

Typ zwracany:

isp

>>> api.isp_get(request, name="isptestowy")
{'name': u'isptestowy'}
isp_add(request, name, email, user_password, first_name, last_name, user=True, headend=False)

Dodaje ISP o podanej nazwie, tworzy użytkownika oraz ew tworzy osobny Headend dla niego. Headend jest tworzony tylko i wyłącznie w przypadku isp posiadających własny headend oraz własne umowy z nadawcami.

Parametry:
  • name (string) – nazwa isp

  • user (bool) – czy ma zostać utworzony dla niego użytkownik

  • headend (bool) – czy ma zostać dla niego stworzony headend

  • email (string) – email dla użytkownika

  • user_password (string) – hasło dla użytkownika

  • first_name (string) – imie dla użytkownika

  • last_name (string) – nazwisko dla użytkownika

Zwraca:

Obiekt Isp

Typ zwracany:

isp

>>> api.isp_add(superrequest, name="nowyisp", email='example@example.pl', user_password="test123", first_name="Jan", last_name="Kowalski")
{'name': 'nowyisp'}
isp_list(request, name_like=None)

Pobierz listę isp, których nazwa zawiera podany parametr lub gdy parametr nie zostanie podany pobiera wszystkich do których użytkownik ma uprawnienia.

Parametry:

name_like (string) – nazwa isp

Zwraca:

Lista obiektów Isp

Typ zwracany:

[ isp ]

>>> api.isp_list(request, name_like="testowy")
[{'name': u'isptestowy'}]
>>> api.isp_list(request, name_like="brak")
[]
>>> api.isp_list(superrequest)
[{'name': u'__DEFAULT__'}, {'name': u'isptestowy'}, {'name': u'isptestowy2'}, {'name': u'nowyisp'}]
user_info(request)

Zwraca informacje na temat aktualnego użytkownika.

Zwraca:

słownika zawierający podstawowe informacje o użytkowniku

Typ zwracany:

dict

>>> api.user_info(request)
{'username': u'test', 'ISP': [u'isptestowy']}
auth(request, username, password=None, apikey=None)

Autoryzuje wskazanego użytkownika. Jeśli któraś z par (login i hasło lub login i apikey) danych logowania jest poprawną loguje podanego użytkownika. Zwraca informacje o zalogowanym użytkowniku oraz ciasteczko wraz z identyfikatorem sesji skojarzonej z użytkownikiem.

Zwraca:

słownika zawierający podstawowe informacje o użytkowniku

Typ zwracany:

dict

ping(request)

Zwraca pong (funkcja testująca)

Zwraca:

pong

Typ zwracany:

string

>>> api.ping(request)
'pong'
arg_test(request, *args, **kwargs)

Zwraca te takie same argumenty jakie zostały przesłane.

Zwraca:

listy argumentów

Typ zwracany:

{«args»: …, «kwargs»: …}

>>> api.arg_test(request, "a1", "a2", "a3", k1="1", k2="k2", k3="k3")
{'args': ('a1', 'a2', 'a3'), 'kwargs': {'k3': 'k3', 'k2': 'k2', 'k1': '1'}}
api_version(request)

Zwraca aktualną wersje api

Zwraca:

wersja api

Typ zwracany:

string

>>> api.api_version(request)
'...'
help(request)

Zwraca aktualny link do dokumentacji

Zwraca:

link do dokumentacji

Typ zwracany:

string

>>> api.help(request)
'http://nieczesto.avios.pl/api/v2/docs/'