Spis Treści
- Ogólne instrukcje
- Strony API - żądania i odpowiedzi
- Moduł cradle
- Moduł DDNS
- Moduł device
- Moduł DHCP
- Moduł diagnosis
- Moduł dialup
- Moduł filemanager
- Moduł global
- Moduł host
- Moduł language
- Moduł monitoring
- Moduł net
- Moduł online-update
- Moduł OTA
- Moduł pb
- Moduł PIN
- Moduł redirection
- Moduł sdcard
- Moduł security
- Moduł SMS
- Moduł sntp
- Moduł STK
- Moduł user
- Moduł USSD
- Moduł voice
- Moduł webserver
- Moduł WLAN
- Używanie API
- Numery błędów
- Inne
- Modyfikacja plików WebUI na przykładzie odblokowania języka polskiego w pliku konfiguracyjnym[/b]
- Spis stron konfiguracyjnych w urządzeniu HiLink
- Spis plików JavaScript
- Źródła wiedzy
API HiLinka można podzielić na dwa warianty:
- Wariant informacyjny:
Wariant ten wymaga najczęściej pobrania (GET) odpowiedniej strony z modemu (http://hi.link lub http://192.168.8.1 ). Czyli uzyskania od razu odpowiedzi response. - Wariant sterujący/konfiguracyjny:
Wymaga wysłania (POST) żądania (request) wraz z adresem odpowiedniej strony do modemu. W odpowiedzi response pozytywnie wykonanego polecenia zwykle otrzymamy - OK.
Niektóre wersje oprogramowania mogą wymagać podania aktualnego tokena do weryfikacji sesji (nie znalazłem żadnych informacji kiedy się token zmienia, token można wyłączyć, edytując pliki konfiguracyjne)
Na tyle na ile udało mi się określić to oprogramowanie HiLink jest zunifikowane. Znaczy to tyle, że np. modem HiLink zawiera te same pliki WebUI co router HiLink i na odwrót. Oczywiście nie oznacza to, że włączymy na modemie np. WiFi. Część stron API jest zablokowana sprzętowo lub plikami konfiguracyjnymi.
Poniższy spis adresów API bazuje na plikach JavaScript zawartych w zmodyfikowanym WebUI dla modemu E3372s-153. Z tych samych plików określone są żądania (request) i odpowiedzi (response). Odpowiedzi niżej podane są w kilku przypadkach uzupełnione bazując na odpowiedzi modemu E3372s-153.
Spis został posortowany alfabetycznie wg nazwy modułu do którego się odwołuje dane API.
2. Strony API - żądania i odpowiedzi
- Moduł cradle
Pobranie podstawowych informacji o cradle(?)- url: http://192.168.8.1/api/cradle/basic-info
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <connectionmode></connectionmode> <pppoeuser></pppoeuser> <pppoepwd></pppoepwd> <dialmode></dialmode> <maxidletime></maxidletime> <pppoemtu></pppoemtu> <dynamicipmtu></dynamicipmtu> <ipaddress></ipaddress> <netmask></netmask> <gateway></gateway> <primarydns></primarydns> <secondarydns></secondarydns> <staticipmtu></staticipmtu> <dynamicsetdnsmanual></dynamicsetdnsmanual> <dynamicprimarydns></dynamicprimarydns> <dynamicsecondarydns></dynamicsecondarydns> </response>
- Uwagi:
- pppoeuser, pppoepwd nie moga zawierać niektórych znaków, trzeba je więc zamienić wg wzoru:
- '&' - '&',
- "'" - ''',
- '"' - '"',
- '<' - '<',
- '>' - '>'
- connectionmode:
- 0 - automatyczny
- 1 - PPPoE + Dynamiczny adres IP
- 2 - PPPoE
- 3 - Dynamiczny adres IP
- 4 - Statyczny adres IP
- 5 - Tylko sieć LAN
- dialmode:
- 0 - automatyczny
- 1 - Na żądanie
- pppoeuser, pppoepwd nie moga zawierać niektórych znaków, trzeba je więc zamienić wg wzoru:
- url: http://192.168.8.1/api/cradle/basic-info
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <connectionmode></connectionmode> <pppoeuser></pppoeuser> <pppoepwd></pppoepwd> <dialmode></dialmode> <maxidletime></maxidletime> <pppoemtu></pppoemtu> <dynamicipmtu></dynamicipmtu> <ipaddress></ipaddress> <netmask></netmask> <gateway></gateway> <primarydns></primarydns> <secondarydns></secondarydns> <staticipmtu></staticipmtu> <dynamicsetdnsmanual></dynamicsetdnsmanual> <dynamicprimarydns></dynamicprimarydns> <dynamicsecondarydns></dynamicsecondarydns> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi:
- pppoeuser, pppoepwd nie moga zawierać niektórych znaków, trzeba je więc zamienić wg wzoru:
- '&' - '&',
- "'" - ''',
- '"' - '"',
- '<' - '<',
- '>' - '>'
- connectionmode:
- 0 - automatyczny
- 1 - PPPoE + Dynamiczny adres IP
- 2 - PPPoE
- 3 - Dynamiczny adres IP
- 4 - Statyczny adres IP
- 5 - Tylko sieć LAN
- dialmode:
- 0 - automatyczny
- 1 - Na żądanie
- pppoeuser, pppoepwd nie moga zawierać niektórych znaków, trzeba je więc zamienić wg wzoru:
- url: http://192.168.8.1/api/cradle/current-mac
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <currentmac>00:00:00:00:00:00</currentmac> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/cradle/factory-mac
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <factorymac></factorymac> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/cradle/mac-info
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <currentmac></currentmac> <hostmac></hostmac> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/cradle/status-info
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <cradlestatus></cradlestatus> <connectstatus></connectstatus> <connectionmode></connectionmode> <currenttime></currenttime> <ipaddress></ipaddress> <netmask></netmask> <gateway></gateway> <primarydns></primarydns> <secondarydns></secondarydns> </response>
- Uwagi:
- connectstatus:
- 900 - łączenie
- 901 - połączony
- 902 - rozłączony
- 903 - rozłączanie
- 904 - błąd połączenia
- 905 - brak konta PPPoE
- 906 - błędne konto PPPoE
- connectionmode:
- 0 - automatyczny
- 1 - PPPoE + Dynamiczny adres IP
- 2 - PPPoE
- 3 - Dynamiczny adres IP
- 4 - Statyczny adres IP
- 5 - Tylko sieć LAN
- connectstatus:
- Moduł DDNS
Pobranie pobranie listy DNS- url: http://192.168.8.1/api/ddns/ddns-list
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <ddnss> <ddns> <index></index> <provider></provider> <status></status> <domainname></domainname> <username></username> <password></password> </ddns> <ddns> ... </ddns> ... </ddnss> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/ddns/ddns-list
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <ddnss> <ddns> <index></index> <provider></provider> <status></status> <domainname></domainname> <username></username> <password></password> </ddns> <ddns> ... </ddns> ... </ddnss> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- Moduł device
Sprawdzenie dostępności nowej wersji?- url: http://192.168.8.1/api/device/autorun-version
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <Version>22.001.25.00.03</Version> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/basic_information
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <productfamily>LTE</productfamily> <classify>hilink</classify> <multimode>0</multimode> </response>
- Uwagi:
- productfamily:
- 1 lub CDMA - tryb CDMA
- 2 lub WCDMA lub LTE - tryb WCDMA/LTE
- multimode:
- 1 - single mode?
- 2 - multi mode?
- productfamily:
- url: http://192.168.8.1/api/device/compresslogfile
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <LogPath>http://192.168.8.1/FS:/app/webroot/data/userdata/device/WebApp.zip</LogPath> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/control
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <Control></Control> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi:
- Control:
- 1 - restart urządzenia
- 2 - przywrócenie konfiguracji (brak informacji jak podać plik z zapisaną konfiguracją. Być może korzysta z pliku http://192.168.8.1/nvram.bak)
- 3 - kopia zapasowa konfiguracji (konfiguracja jest dostępna pod adresem http://192.168.8.1/nvram.bak. Plik jest z kodowaniem base64)
- 4 - wyłączenie urządzenia
- Control:
- url: http://192.168.8.1/api/device/fastbootswitch
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <fastbootswitch></fastbootswitch> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/fastbootswitch
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <fastbootswitch></fastbootswitch> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/information
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <DeviceName>E3372</DeviceName> <SerialNumber>L8FBY14926014416</SerialNumber> <Imei>866133021233764</Imei> <Imsi>260060064970338</Imsi> <Iccid>89480610500149703380</Iccid> <Msisdn></Msisdn> <HardwareVersion>CL1E3372SM Ver.A</HardwareVersion> <SoftwareVersion>22.286.53.01.161</SoftwareVersion> <WebUIVersion>16.100.05.00.03</WebUIVersion> <MacAddress1>00:0D:87:8E:4B:AC</MacAddress1> <MacAddress2></MacAddress2> <ProductFamily>LTE</ProductFamily> <Classify>hilink</Classify> <supportmode>LTE|WCDMA|GSM</supportmode> <workmode>LTE</workmode> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/mode
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <mode>1</mode> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: Mając modem wpięty do routera zniknie połączenie z internetem gdy zostanie włączony tryb debug.
- mode:
- 0 - tryb project (normalna praca?)
- 1 - tryb debug/NDIS (dostęp do portów szeregowych)
- mode:
- url: http://192.168.8.1/api/device/logsetting
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <Where>2</Where> <Size>1000</Size> <Modules> <Module> <name>ats</name> <desc>AT Server</desc> <mask>0</mask> <file></file> </Module> <Module> ... </Module> ... </Modules> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/logsetting
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <Where>2</Where> <Size>1000</Size> <Modules> <Module> <name>ats</name> <desc>AT Server</desc> <mask>0</mask> <file></file> </Module> <Module> ... </Module> ... </Modules> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/powersaveswitch
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <powersaveswitch></powersaveswitch> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/powersaveswitch
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <powersaveswitch></powersaveswitch> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/signal
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <pci>40</pci> <sc></sc> <cell_id>2123610</cell_id> <rsrq>-6dB</rsrq> <rsrp>-91dBm</rsrp> <rssi>-71dBm</rssi> <sinr>14dB</sinr> <rscp></rscp> <ecio></ecio> <mode>7</mode> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/usb-tethering-switch
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <tetheringswitch></tetheringswitch> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/usb-tethering
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <tethering></tethering> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/device/usb-tethering
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <tethering></tethering> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- Moduł DHCP
Pobranie ustawień DHCP- url: http://192.168.8.1/api/dhcp/settings
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <DhcpIPAddress>192.168.8.1</DhcpIPAddress> <DhcpLanNetmask>255.255.255.0</DhcpLanNetmask> <DhcpStatus>1</DhcpStatus> <DhcpStartIPAddress>192.168.8.100</DhcpStartIPAddress> <DhcpEndIPAddress>192.168.8.200</DhcpEndIPAddress> <DhcpLeaseTime>86400</DhcpLeaseTime> <DnsStatus>1</DnsStatus> <PrimaryDns>192.168.8.1</PrimaryDns> <SecondaryDns>192.168.8.1</SecondaryDns> </response>
- Uwagi:
- DhcpStatus:
- 0 - serwer DHCP wyłączony
- 1 - serwer DHCP włączony
- DhcpLeaseTime: czas zwolnienia musi zawierać się w przedziale od 86400 do 604800. Domyślnie jest 86400.
- DhcpStatus:
- url: http://192.168.8.1/api/dhcp/settings
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <DhcpIPAddress></DhcpIPAddress> <DhcpLanNetmask></DhcpLanNetmask> <DhcpStatus></DhcpStatus> <DhcpStartIPAddress></DhcpStartIPAddress> <DhcpEndIPAddress></DhcpEndIPAddress> <DhcpLeaseTime></DhcpLeaseTime> <PrimaryDns></PrimaryDns> <SecondaryDns></SecondaryDns> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi:
- DhcpStatus:
- 0 - serwer DHCP wyłączony
- 1 - serwer DHCP włączony
- DhcpLeaseTime: czas zwolnienia musi zawierać się w przedziale od 86400 do 604800. Domyślnie jest 86400.
- DhcpStatus:
- Moduł diagnosis
Polecenie PING- url: http://192.168.8.1/api/diagnosis/ping
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <target></target> <packetsize></packetsize> <timeout></timeout> <fragment></fragment> </request>
- odpowiedź:
Kod: Zaznacz cały
<response> <result></result> <resultdetail></resultdetail> </response>
- Uwagi:
- packetsize: musi zawierać się od powyżej 0 do 9000.
- timeout: czas pingowania musi zawierać się w przedziale od 1 do 10. Domyślnie jest 86400.
- url: http://192.168.8.1/api/diagnosis/traceroute
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <target></target> <maxhops></maxhops> <timeout></timeout> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>?</response>
- Uwagi:
- maxhops: maksymalna ilość skoków musi zawierać się od 1 do 100.
- timeout: czas śledzenia musi zawierać się w przedziale od 2 do 10. Domyślnie jest 86400.
- W następnej kolejności należy pobrać wynik śledzenia api/diagnosis/tracerouteresult.
- url: http://192.168.8.1/api/diagnosis/tracerouteresult
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <result></result> <resultdetail></resultdetail> </response>
- Uwagi:
- result:
- 2 - trwa wyznaczanie ścieżki
- result:
- Moduł dialup
Pobranie informacji o statusie automatycznego doboru APN?- url: http://192.168.8.1/api/dialup/auto-apn
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <AutoAPN></AutoAPN> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/dialup/auto-apn
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <AutoAPN></AutoAPN> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/dialup/connection
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <RoamAutoConnectEnable>0</RoamAutoConnectEnable> <MaxIdelTime>300</MaxIdelTime> <ConnectMode>0</ConnectMode> <MTU>1450</MTU> <auto_dial_switch>1</auto_dial_switch> </response>
- Uwagi:
- ConnectMode:
- 0 - łączenie automatyczne
- 1 - łączenie ręczne
- 2 - łączenie na żądanie
- ConnectMode:
- url: http://192.168.8.1/api/dialup/connection
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <RoamAutoConnectEnable>0</RoamAutoConnectEnable> <AutoReconnect>1</AutoReconnect> <RoamAutoReconnctEnable>1</RoamAutoReconnctEnable> <ReconnectInterval>3</ReconnectInterval> <MaxIdelTime>0</MaxIdelTime> <ConnectMode>0</ConnectMode> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi:
- ConnectMode:
- 0 - łączenie automatyczne
- 1 - łączenie ręczne
- 2 - łączenie na żądanie
- ConnectMode:
- url: http://192.168.8.1/api/dialup/dial
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <Action></Action> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi:
- Action:
- 0 - rozłączenie
- 1 - nawiązanie połączenia
- Action:
- url: http://192.168.8.1/api/dialup/dialup-feature-switch
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <iptype_enabled>0</iptype_enabled> <auto_dial_enabled>0</auto_dial_enabled> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/dialup/mobile-dataswitch
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <dataswitch></dataswitch> </response>
- Uwagi:
- dataswitch:
- 0 - dane mobile wyłączone
- 1 - dane mobile włączone
- dataswitch:
- url: http://192.168.8.1/api/dialup/mobile-dataswitch
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <dataswitch></dataswitch> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi:
- dataswitch:
- 0 - dane mobile wyłączone
- 1 - dane mobile włączone
- dataswitch:
- url: http://192.168.8.1/api/dialup/profiles
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <Delete></Delete> <SetDefault></SetDefault> <Modify>0</Modify> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: Delete - indeks usuwanego profilu, SetDefault - indeks profilu ustawianego jako domyślny
- url: http://192.168.8.1/api/dialup/profiles
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <CurrentProfile>1</CurrentProfile> <Profiles> <Profile> <Index>1</Index> <IsValid>1</IsValid> <Name>PLAY</Name> <ApnIsStatic>1</ApnIsStatic> <ApnName>internet</ApnName> <DialupNum>*99#</DialupNum> <Username/> <Password/> <AuthMode>2</AuthMode> <IpIsStatic>0</IpIsStatic> <IpAddress/> <Ipv6Address/> <DnsIsStatic>0</DnsIsStatic> <PrimaryDns/> <SecondaryDns/> <PrimaryIpv6Dns/> <SecondaryIpv6Dns/> <ReadOnly>2</ReadOnly> <iptype>2</iptype> </Profile> <Profile> ... </Profile> ... </Profiles> </response>
- Uwagi:
- AuthMode:
- 0 - autoryzacja automatyczna,
- 1 - autoryzacja PAP (Password Authentication Protocol),
- 2 - autoryzacja CHAP (Challenge-Handshake Authentication Protocol),
- AuthMode:
- url: http://192.168.8.1/api/dialup/profiles
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <Delete></Delete> <SetDefault></SetDefault> <Modify>0</Modify> <CurrentProfile>1</CurrentProfile> <Profile> <Index></Index> <IsValid>1</IsValid> <Name></Name> <ApnIsStatic></ApnIsStatic> <ApnName></ApnName> <DialupNum></DialupNum> <Username></Username> <Password></Password> <AuthMode>2</AuthMode> <IpIsStatic></IpIsStatic> <IpAddress></IpAddress> <Ipv6Address></Ipv6Address> <DnsIsStatic></DnsIsStatic> <PrimaryDns></PrimaryDns> <SecondaryDns></SecondaryDns> <PrimaryIpv6Dns></PrimaryIpv6Dns> <SecondaryIpv6Dns></SecondaryIpv6Dns> <ReadOnly>0</ReadOnly> <iptype></iptype> </Profile> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi:
- aby utworzyć nowy profil ustawić następujące wartości dla parametrów: Delete - 0, Modify - 1, ReadOnly - 0;
- aby zmodyfikować profil ustawić następujące wartości dla parametrów: Delete - 0, Modify - 2, ReadOnly - 0;
- Moduł filemanager
Przesłanie pliku do urządzenia- url: http://192.168.8.1/api/filemanager/upload
- metoda: POST
- żądanie: ?
- odpowiedź: ?
- Uwagi: Najbardziej chyba tajemnicze API. Poza adresem nic nie wiadomo. Zapewne podobnie działa jak równie tajemnicze API api/sdcard/fileupload tyle, że chyba przesyła plik do głównego katalogu urządzenia.
- Moduł global
Informacje o stanie modułów- url: http://192.168.8.1/api/global/module-switch
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <ussd_enabled>1</ussd_enabled> <bbou_enabled>0</bbou_enabled> <sms_enabled>1</sms_enabled> <sdcard_enabled>0</sdcard_enabled> <wifi_enabled>0</wifi_enabled> <statistic_enabled>1</statistic_enabled> <help_enabled>0</help_enabled> <stk_enabled>1</stk_enabled> <pb_enabled>1</pb_enabled> <dlna_enabled></dlna_enabled> <ota_enabled>0</ota_enabled> <wifioffload_enabled>0</wifioffload_enabled> <cradle_enabled>0</cradle_enabled> <multssid_enable>0</multssid_enable> <ipv6_enabled>0</ipv6_enabled> <monthly_volume_enabled>1</monthly_volume_enabled> <powersave_enabled>0</powersave_enabled> <sntp_enabled>0</sntp_enabled> <dataswitch_enabled>1</dataswitch_enabled> <poweroff_enabled>0</poweroff_enabled> <ecomode_enabled>1</ecomode_enabled> <zonetime_enabled>0</zonetime_enabled> <localupdate_enabled>0</localupdate_enabled> <cbs_enabled>0</cbs_enabled> <qrcode_enabled>0</qrcode_enabled> <charger_enbaled>0</charger_enbaled> </response>
- Uwagi: brak
- Moduł host
Ustawienia regionalne- url: http://192.168.8.1/api/host/info
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <Time></Time> <Timezone></Timezone> <Platform></Platform> <PlatformVer></PlatformVer> <Navigator></Navigator> <NavigatorVer></NavigatorVer> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>?</response>
- Uwagi: brak
- Timezone: w postaci "GMT+HH:MM" lub "GMT-HH:MM"
- Moduł language
Pobranie informacji o języku WebUI- url: http://192.168.8.1/api/language/current-language
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <CurrentLanguage>pl-pl</CurrentLanguage> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/language/current-language
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <CurrentLanguage>pl_pl</CurrentLanguage> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: język wprowadzany w standardowej postaci tyle, że zamiast pauzy '-' ma być podkreślnik '_' np. 'pl_pl' lub 'en_us'. Wymaga żeby dany język był na liście językowej w pliku konfiguracyjnym
- Moduł monitoring
Powiadomienia- url: http://192.168.8.1/api/monitoring/check-notifications
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <UnreadMessage>5</UnreadMessage> <SmsStorageFull>0</SmsStorageFull> <OnlineUpdateStatus>10</OnlineUpdateStatus> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/clear-traffic
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <ClearTraffic>1</ClearTraffic> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/converged-status
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <SimState>257</SimState> <SimLockEnable>0</SimLockEnable> <CurrentLanguage>en-us</CurrentLanguage> </response>
- Uwagi: api/monitoring/converged-status ma być oficjalnie optymalizacją i połączeniem stron api/pin/status + api/pin/simlock + api/language/current-language
- SimState:
- 255 - brak karty SIM,
- 256 - błąd CPIN,
- 257 - gotowa,
- 258 - PIN wyłączony,
- 259 - sprawdzanie PIN,
- 260 - wymagany PIN,
- 261 - wymagany PUK
- SimState:
- url: http://192.168.8.1/api/monitoring/month_statistics
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <CurrentMonthDownload>26943751933</CurrentMonthDownload> <CurrentMonthUpload>2839508254</CurrentMonthUpload> <MonthDuration>2366237</MonthDuration> <MonthLastClearTime>2015-1-1</MonthLastClearTime> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/month_statistics_wlan
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <CurrentMonthDownload></CurrentMonthDownload> <CurrentMonthUpload></CurrentMonthUpload> <MonthDuration></MonthDuration> <MonthLastClearTime></MonthLastClearTime> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/start_date
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <StartDay>1</StartDay> <DataLimit>0MB</DataLimit> <DataLimitAwoke>0</DataLimitAwoke> <MonthThreshold>90</MonthThreshold> <SetMonthData>0</SetMonthData> <trafficmaxlimit>0</trafficmaxlimit> <turnoffdataenable>0</turnoffdataenable> <turnoffdataswitch>0</turnoffdataswitch> <turnoffdataflag>0</turnoffdataflag> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/start_date
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <StartDay>1</StartDay> <DataLimit>0MB</DataLimit> <DataLimitAwoke>0</DataLimitAwoke> <MonthThreshold>90</MonthThreshold> <SetMonthData>0</SetMonthData> <trafficmaxlimit>0</trafficmaxlimit> <turnoffdataenable>0</turnoffdataenable> <turnoffdataswitch>0</turnoffdataswitch> <turnoffdataflag>0</turnoffdataflag> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/start_date_wlan
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <DataLimit></DataLimit> <StartDay></StartDay> <MonthThreshold></MonthThreshold> <SetMonthData></SetMonthData> </response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/start_date_wlan
- metoda: POST
- żądanie:
Kod: Zaznacz cały
<request> <SettingEnbale></SettingEnbale> <StartDay></StartDay> <DataLimit></DataLimit> <MonthThreshold></MonthThreshold> </request>
- odpowiedź:
Kod: Zaznacz cały
<response>OK</response>
- Uwagi: brak
- url: http://192.168.8.1/api/monitoring/status
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <ConnectionStatus>901</ConnectionStatus> <WifiConnectionStatus></WifiConnectionStatus> <SignalStrength></SignalStrength> <SignalIcon>4</SignalIcon> <CurrentNetworkType>101</CurrentNetworkType> <CurrentServiceDomain>3</CurrentServiceDomain> <RoamingStatus>0</RoamingStatus> <BatteryStatus></BatteryStatus> <BatteryLevel></BatteryLevel> <BatteryPercent></BatteryPercent> <simlockStatus>0</simlockStatus> <WanIPAddress>31.175.29.71</WanIPAddress> <WanIPv6Address></WanIPv6Address> <PrimaryDns>89.108.195.20</PrimaryDns> <SecondaryDns>89.108.202.20</SecondaryDns> <PrimaryIPv6Dns></PrimaryIPv6Dns> <SecondaryIPv6Dns></SecondaryIPv6Dns> <CurrentWifiUser></CurrentWifiUser> <TotalWifiUser></TotalWifiUser> <currenttotalwifiuser>0</currenttotalwifiuser> <ServiceStatus>2</ServiceStatus> <SimStatus>1</SimStatus> <WifiStatus></WifiStatus> <CurrentNetworkTypeEx>101</CurrentNetworkTypeEx> <maxsignal>5</maxsignal> <wifiindooronly>-1</wifiindooronly> <wififrequence>0</wififrequence> <msisdn></msisdn> <classify>hilink</classify> <flymode>0</flymode> </response>
- Uwagi:
- ConnectionStatus, WifiConnectionStatus:
- 2, 3, 5, 8, 20, 21, 23, 27, 28, 29, 30, 31, 32, 33, 65538, 65539, 65567, 65568, 131073, 131074, 131076, 131078 - błąd połączenia (błędny profil).
- 7, 11, 14, 37, 131079, 131080, 131081, 131082, 131083, 131084, 131085, 131086, 131087, 131088, 131089 - błąd połączenia (zabroniony dostęp do sieci)
- 12, 13 - brak połączenia (brak roamingu)
- 112 - brak automatycznego nawiązywania połączenia
- 113 - brak automatycznego nawiązywania połączenia w roamingu
- 114 - brak ponownego połączenia
- 115 - brak ponownego połączenia w roamingu
- 201 - połączenie przerwane, przekroczony limit transmisji danych
- 900 - łączenie
- 901 - połączony
- 902 - rozłączony
- 903 - rozłączanie
- 904 - połączenie się nie powiodło
- 905 - brak połączenia (słaby sygnał)
- 906 - błąd połączenia
- CurrentNetworkType, CurrentNetworkTypeEx:
- 0 - brak usługi
- 1 - GSM
- 2 - GPRS
- 3 - EDGE
- 4 - WCDMA
- 5 - HSDPA
- 6 - HSUPA
- 7 - HSPA
- 8 - TDSCDMA
- 9 - HSPA+
- 10 - EVDO rev. 0
- 11 - EVDO rev. A
- 12 - EVDO rev. B
- 13 - 1xRTT
- 14 - UMB
- 15 - 1xEVDV
- 16 - 3xRTT
- 17 - HSPA+64QAM
- 18 - HSPA+MIMO
- 19 - LTE
- 21 - IS95A
- 22 - IS95B
- 23 - CDMA1x
- 24 - EVDO rev. 0
- 25 - EVDO rev. A
- 26 - EVDO rev. B
- 27 - Hybrydowa CDMA1x
- 28 - Hybrydowa EVDO rev. 0
- 29 - Hybrydowa EVDO rev. A
- 30 - Hybrydowa EVDO rev. B
- 31 - EHRPD rev. 0
- 32 - EHRPD rev. A
- 33 - EHRPD rev. B
- 34 - Hybrydowa EHRPD rev. 0
- 35 - Hybrydowa EHRPD rev. A
- 36 - Hybrydowa EHRPD rev. B
- 41 - WCDMA
- 42 - HSDPA
- 43 - HSUPA
- 44 - HSPA
- 45 - HSPA+
- 46 - DC HSPA+
- 61 - TD SCDMA
- 62 - TD HSDPA
- 63 - TD HSUPA
- 64 - TD HSPA
- 65 - TD HSPA+
- 81 - 802.16E
- 101 - LTE
- SimStatus:
- 0 - brak karty SIM lub jest ona niepoprawna
- 1 - poprawna karta SIM
- 2 - niepoprawna karta SIM dla przypadku komutacji łącza (CS)
- 3 - niepoprawna karta SIM dla przypadku komutacji pakietu (PS)
- 4 - niepoprawna karta SIM dla przypadku komutacji łącza i pakietu (PS+CS)
- 240 - ROMSIM
- 255 - brak karty SIM
- BatteryStatus:
- 0 - normalny stan pracy baterii
- 1 - ładowanie baterii
- -1 - niski poziom naładowania baterii
- 2 - brak baterii
- ServiceStatus:
- 2 - usługa jest dostępna
- WifiStatus:
- 0 - WiFi wyłączone
- 1 - WiFi włączone
- 5G - WiFi 5GHz włączone
- RoamingStatus:
- 0 - roaming wyłączony
- 1 - roaming włączony
- 2 - bez zmian
- ConnectionStatus, WifiConnectionStatus:
- url: http://192.168.8.1/api/monitoring/traffic-statistics
- metoda: GET
- żądanie: brak
- odpowiedź:
Kod: Zaznacz cały
<response> <CurrentConnectTime>41226</CurrentConnectTime> <CurrentUpload>6320878</CurrentUpload> <CurrentDownload>44699227</CurrentDownload> <CurrentDownloadRate>0</CurrentDownloadRate> <CurrentUploadRate>0</CurrentUploadRate> <TotalUpload>3623189297</TotalUpload> <TotalDownload>28873100218</TotalDownload> <TotalConnectTime>2653408</TotalConnectTime> <showtraffic>1</showtraffic> </response>
- Uwagi: brak