Szybkie szukanie |
HiLink API dla urządzeń Huawei
|
29-01-2015, 17:37
(Ten post był ostatnio modyfikowany: 17-02-2015 12:20 przez VipeRsan.)
Post: #1
|
|||
|
|||
HiLink API dla urządzeń Huawei
HiLinków zwykle nie da się programować za pomocą komend AT, czy bibliotek przygotowanych do sterowania modemami. Mają one WebUI oparte o JavaScript, które steruje modemem. Można to wykorzystać do napisania odpowiednich skryptów, czy też bibliotek sterujących modemem HiLink.
Spis Treści
1. Ogólne instrukcje API HiLinka można podzielić na dwa warianty:
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. |
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
29-01-2015, 17:48
(Ten post był ostatnio modyfikowany: 31-01-2015 23:47 przez VipeRsan.)
Post: #2
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
29-01-2015, 17:53
(Ten post był ostatnio modyfikowany: 31-01-2015 23:49 przez VipeRsan.)
Post: #3
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
29-01-2015, 18:29
(Ten post był ostatnio modyfikowany: 31-01-2015 23:50 przez VipeRsan.)
Post: #4
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
30-01-2015, 13:57
(Ten post był ostatnio modyfikowany: 31-01-2015 23:56 przez VipeRsan.)
Post: #5
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
30-01-2015, 15:37
(Ten post był ostatnio modyfikowany: 01-02-2015 00:05 przez VipeRsan.)
Post: #6
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 02:38
(Ten post był ostatnio modyfikowany: 31-01-2015 23:57 przez VipeRsan.)
Post: #7
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:05
(Ten post był ostatnio modyfikowany: 15-02-2015 15:04 przez VipeRsan.)
Post: #8
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:12
(Ten post był ostatnio modyfikowany: 31-01-2015 23:58 przez VipeRsan.)
Post: #9
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:24
(Ten post był ostatnio modyfikowany: 31-01-2015 23:58 przez VipeRsan.)
Post: #10
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:25
(Ten post był ostatnio modyfikowany: 31-01-2015 23:59 przez VipeRsan.)
Post: #11
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:26
(Ten post był ostatnio modyfikowany: 31-01-2015 23:59 przez VipeRsan.)
Post: #12
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:27
(Ten post był ostatnio modyfikowany: 31-01-2015 23:59 przez VipeRsan.)
Post: #13
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:27
(Ten post był ostatnio modyfikowany: 01-02-2015 00:00 przez VipeRsan.)
Post: #14
|
|||
|
|||
HiLink API dla urządzeń Huawei
2. Strony API - żądania i odpowiedzi - cd.
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:28
(Ten post był ostatnio modyfikowany: 01-02-2015 00:00 przez VipeRsan.)
Post: #15
|
|||
|
|||
HiLink API dla urządzeń Huawei
3. Używanie API
API HiLinka bez problemu można użyć w Linuxie. Zarówno w postaci komendy wpisanej w wierszu poleceń jak i skryptu. W Windowsie zaczyna być odrobinę trudniej. Można sobie sprawę uprościć ściągając binarki curl (patrz strona projektu cURL) oraz pakiet narzędzi linii poleceń Linuxa dla Windowsa (np. UnxUtils) z którego warto zaopatrzyć się w grep i cut. Poniżej kilka przykładów przetestowanych na OpenWRT Barrier Breaker (r43618) by Cezary (obsy) Jackiewicz (http://eko.one.pl) za pomocą polecenia curl (bez problemu myślę, że można zaadaptować do polecenia wget), a także przykłady plików wsadowych dla Windows.
4. Numery błędów API potrafi odpowiedzieć błędem na nasze żądanie. Błąd wygląda następująco: Kod: <?xml version="1.0" encoding="UTF-8"?> gdzie NR_BŁĘDU:
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
31-01-2015, 17:29
(Ten post był ostatnio modyfikowany: 17-02-2015 12:19 przez VipeRsan.)
Post: #16
|
|||
|
|||
HiLink API dla urządzeń Huawei
5. Inne
6. Źródła wiedzy
|
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
15-02-2015, 15:07
Post: #17
|
|||
|
|||
HiLink API dla urządzeń Huawei
Gdzieś wcześniej umknęło a więc uzupełniłem wpis przy http://192.168.8.1/api/pin/operate o OperateType = 0 - weryfikacja PIN (czyli, gdy potrzebujemy wpisać PIN).
|
|||
17-02-2015, 12:22
Post: #18
|
|||
|
|||
HiLink API dla urządzeń Huawei
Dodałem sposób dla zaawansowanych na niedziałającą funkcję automatycznego podawania nr PIN dla modemów z odblokowanym ADB i/lub telnetem.
|
|||
17-06-2015, 09:41
Post: #19
|
|||
|
|||
HiLink API dla urządzeń Huawei
Drobny update zanim kiedyś poprawię i uzupełnię wcześniejsze posty, trochę się poświęciłem i wgrałem nowszy soft do swojego modemu dzięki czemu mogłem zgłębić trochę tajniki HilinkAPI dla nowszych fw (jak się zdaje dotyczy oprogramowania powyżej wersji 22.29x.xx.xxx). Postaram się całość zamieścić w powyżej przy okazji wprowadzić parę poprawek i dopisać parę nowych API wprowadzonych jak się zdaje wraz z WebUI 17, ale poniżej zamieszczę wzmiankę o głównej zmianie, która blokowała korzystanie z API HiLinka.
W nowym fw zmienia się kompletnie sposób weryfikacji komend API. Przedtem był to token pobierany z adresu /api/webserver/token. Obecnie jest to weryfikacja sesji. Cezary z eko.one.pl, dla potrzeb 3ginfo, odpytując HiLinki z nowym fw robi myk w postaci pobrania ciasteczka ze strony głównej 192.168.8.1/html/home.html i następnie z komendami API przekazuje ciasteczko. Ciasteczko zawiera zmienną SessionID. Teoretycznie jest ok komendy działają i wszyscy sa szczęśliwi. A może jednak nie do końca, bo po pierwsze wymaga pobrania ciasteczka ze strony html, a po drugie jak spróbujemy pobrać listę sms'ów dostaniemy błąd sesji 125002 (powinien co prawda wystąpić błąd 125003, ale mniejsza o to) :/ Podgląd jak to robi stronka sms modemu HiLink wskaże, że przekazywany jest token, który pobierany jest z... nagłówka meta generowanego dynamicznie tej strony html (w zasadzie występują 2 nagłówki meta o nazwie csrf_token, ale uprzedzając pytania nie wiem czemu są dwa) No dobra pytanie skąd bierze się SessionID i token sesji? Wygląda na to, że jest to zaszyte gdzieś w fw, bo przypadek sprawił, że znalazłem adres /api/webserver/SesTokInfo (próbowałem hexedytorem podejrzeć plik update'u ). Wywołując to API na nowym fw dostajemy 2 zmienne.
Teraz trochę praktyki.
I jeszcze jedna uwaga... Token sesji i identyfikator sesji jest często zmieniany. Nie pamiętam w tej chwili konkretnych liczb, ale trzeba mieć to na uwadze. Stare API tokena /api/webserver/token zwykle podawało ten sam numer przez dość długi czas. Nowe API /api/webserver/SesTokInfo za każdym razem podaje inny wynik. Pewnie wynika to z szyfrowania, ale zbyt długo zastanawiając się nad komendami API dość szybko można odkryć, że dostaniemy w wyniku komendy błąd sesji 125002 (przeterminowany SessionID). Dlatego automatyzując działanie skryptów trzeba uwzględnić powyższe uwagi. Np plik wsadowy dla Windowsa można rozwiązać w ten sposób (wymaga narzędzi: curl, grep, cut): Kod: @ECHO OFF |
|||
1 użytkownik podziękował użytkownikowi VipeRsan za tę wiadomość: wojtek1122 (2021-04-28) |
17-06-2015, 12:47
(Ten post był ostatnio modyfikowany: 18-06-2015 16:33 przez penknife.)
Post: #20
|
|||
|
|||
HiLink API dla urządzeń Huawei
Moja wariacja na temat (wymaga tylko curl):
Kod: @echo off &:: HHL_token_test.bat |
|||
1 użytkownik podziękował użytkownikowi penknife za tę wiadomość: wojtek1122 (2021-04-28) |
« Starszy wątek | Nowszy wątek »
|
Podobne wątki | |||||
Wątek: | Autor | Odpowiedzi: | Wyświetleń: | Ostatni post | |
Huawei E3276 brak modemu RAS jest tylko karta sieciowa NDIS | Krystyna z gazowni | 11 | 31 631 |
19-01-2018 13:37 Ostatni post: Krystyna z gazowni |
|
Huawei E3276 nie rozpoznaje Sieci Aero2- uszkodzona Antena ? | AdamK | 10 | 39 462 |
19-01-2018 10:36 Ostatni post: jakubd |
|
huawei e3531 s2 nie przełancza automatycznie sieci po zmianie karty? | Lorek | 14 | 38 451 |
11-11-2017 10:46 Ostatni post: Lorek |
|
huawei e372 vs Huawei E3531 | Lorek | 13 | 43 305 |
08-03-2017 07:19 Ostatni post: jakubd |
|
Wymuszanie UMTS 900 MHz w modemach Huawei | jakubd | 185 | 600 879 |
04-02-2017 18:11 Ostatni post: jakubd |