Tomato 1.28 130 USB-VPN Wysyłanie kodów USSD
|
piolug93 |
Dodano 08-07-2015 19:38
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
Witam posiadam Netgear wnr3500l v1 z Tomato 1.28.0000 MIPSR2-130 K26 USB VPN
i chciałem się zapytać czy jest możliwość w jakiś sposób wysyłać kody ussd do modemu. Moim założeniem i celem jest aktywowanie pakietu internetu cyklicznie przez crona. |
|
|
|
shibby |
Dodano 08-07-2015 21:12
|
SysOp
Posty: 17110
Dołączył: 15/01/2009 20:30
|
zobacz narzędzie gcom w moim tomato.
Przykład użycia:
MODE="AT+CGCONTRDP" gcom -d /dev/ttyUSB1 -e -s /etc/gcom/setverbose.gcom
Router: Unifi Cloud Gateway Max
Switch: Netgear MS510TXPP
Switch: Unifi USW-Flex-Mini - szt. 2
Wi-Fi: Unifi U6-Lite - szt. 2
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM #1: Synology SA6400
VM #2: Debian, WWW
VM #3: Home Assistant OS
|
|
|
|
piolug93 |
Dodano 08-07-2015 22:07
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
w sensie twoim czyli wersji 1.08 ?czy w sensie żeby doinstalować optware i gcom. Czy to rozwiązanie będzie działać przy modemie HiLink ? Czy na tomato jest komenda "at" do wykonywania czynności o określonym czasie ? |
|
|
|
hermes-80 |
Dodano 08-07-2015 22:23
|
VIP
Posty: 3676
Dołączył: 21/04/2009 11:24
|
HiLink właśnie polega na tym, że komendy są zaszyte (możenie zaszyte ale zasłonięte przez wirtualny interfejs sieciowy) w FW modemu i nie ma dostępu spod routera do interfejsów diagnostycznych modemu więc nie powinieneś się dostać do komend AT z pod routera do żadnej wersji HiLink.
Edytowany przez hermes-80 dnia 08-07-2015 22:29
===============================================================
Netgear WNR3500L v1
Podziękowania dla administracji Openlinksys.info!
|
|
|
|
piolug93 |
Dodano 08-07-2015 22:26
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
To ewentualnie wgrał bym FW bez Hilinka mój modem to E3372s-153
Połączony z 08 July 2015 23:39:46:
Już wiem że komenda at jest dostępna po dograniu
Połączony z 09 July 2015 21:21:13:
Przerobiłem już na nie Hilinka ale nie potrafię się teraz z nim połączyć próbowałem różnych tutoriali
Edytowany przez piolug93 dnia 09-07-2015 21:21
|
|
|
|
shibby |
Dodano 09-07-2015 22:10
|
SysOp
Posty: 17110
Dołączył: 15/01/2009 20:30
|
a kto ci kazał go przerabiać?
E3372 działa w trybie 3G na tomato. Może w najnowszej wersji uda się go obsłużyć w trybie NDIS.
Router: Unifi Cloud Gateway Max
Switch: Netgear MS510TXPP
Switch: Unifi USW-Flex-Mini - szt. 2
Wi-Fi: Unifi U6-Lite - szt. 2
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM #1: Synology SA6400
VM #2: Debian, WWW
VM #3: Home Assistant OS
|
|
|
|
piolug93 |
Dodano 10-07-2015 19:36
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
Juz z powrotem mam Hilinka przerabialem bo myslalem ze uda mi sie jakos polaczyc. Kiedy mozna spodziewac sie nastepnej wersji? |
|
|
|
shibby |
Dodano 10-07-2015 20:00
|
SysOp
Posty: 17110
Dołączył: 15/01/2009 20:30
|
prace trwają. Obsługę E3372 non-Hilink z nowym sterownikiem trzeba w całości dopisać a dopiero dziś udało mi się go ręcznie odpalić.
Połączony z 10 July 2015 20:03:53:
dla ciebie widzę jednak inne, ciekawe rozwiązanie - API hilinka
http://www.bez-kabli.pl/viewtopic.php?p=498725#498725
możesz wysyłać i czytywać wiele informacji przez wget lub curl (jest w obrazach AIO). Poczytaj
Edytowany przez shibby dnia 10-07-2015 20:03
Router: Unifi Cloud Gateway Max
Switch: Netgear MS510TXPP
Switch: Unifi USW-Flex-Mini - szt. 2
Wi-Fi: Unifi U6-Lite - szt. 2
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM #1: Synology SA6400
VM #2: Debian, WWW
VM #3: Home Assistant OS
|
|
|
|
piolug93 |
Dodano 11-07-2015 11:08
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
Znałazłem to co mnie interesuję, wywnioskowałem że potrzebuję metodą post poprzez curla wysłać żądanie, lecz nigdy nie bawiłem się curlem i totalnie nie wiem jak się za to zabrać. |
|
|
|
hermes-80 |
Dodano 11-07-2015 12:03
|
VIP
Posty: 3676
Dołączył: 21/04/2009 11:24
|
manual - wget - http://www.gnu.org/software/wget/manu...TP-Options , curl - http://man.cx/curl
Edytowany przez hermes-80 dnia 11-07-2015 12:08
===============================================================
Netgear WNR3500L v1
Podziękowania dla administracji Openlinksys.info!
|
|
|
|
piolug93 |
Dodano 11-07-2015 15:40
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
Tylko przy tym API jakiś token trzeba i nie wiem jak go dodać.
Połączony z 11 July 2015 20:07:42:
Udało mi się wysłać kod, lecz chciał bym odczytać co przychodzi zwrotnie. Nie wiem czego powinienem użyć.
# pobranie tokena
TOKEN=$(wget -qO- http://192.168.8.1/api/webserver/token | grep token | cut -d '>' -f2 | cut -d '<' -f1)
curl -d "
*111*480*3#
" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" http://192.168.8.1/api/ussd/send
Połączony z 11 July 2015 20:12:28:
Mam problem z modemem bo nawet w normalny sposób nie zwraca żadnej wartości po wysłaniu kodu ussd. Fiddlerem jak sprawdzam to wyskakuje błąd 111019
Połączony z 11 July 2015 20:38:56:
Problem z odbiernaiem kodów USSD wystepuje tylko kiedy modem jest pod routerem bo pod laptopa nie ma tego problemu zwraca odrazu wartosc.
Połączony z 11 July 2015 21:01:30:
Przepraszam za zbyt pochopną informacje problem jest z tym że jeśli mam włączone 4G only to podczas wysyłania kodu USSD nie przełącza się na 3G, w webui cyfrowegopolsatu przełączał się czy znajdę gdzieś do ściągniecia webui cyfrowegopolsatu ?
Edytowany przez piolug93 dnia 11-07-2015 21:01
|
|
|
|
hermes-80 |
Dodano 11-07-2015 21:34
|
VIP
Posty: 3676
Dołączył: 21/04/2009 11:24
|
Cytat Uwagi
Nie wszystkie API były testowane. Część jest nie obsługiwana przez modem E3372 który posiadam, a część po prostu nie była testowana i już
Cytat Uwagi: Wysyłanie i odbieranie wymaga sieci co najwyżej 3G. Tak więc chcąc wysłać USSD z LTE potrzeba albo mieć wybraną sieć Preferowana LTE (wtedy z automatu modem przełączy się na niższą sieć 3G lub 2G w celu wysłania i odebrania wiadomości USSD) albo ręcznie przełączyć na sieć typu niższego (2G lub 3G)
Tryb pracy sieci (1) - ustawienia a nie dasz rady zmienić trybu sieci tez za pomocą API.
Edytowany przez hermes-80 dnia 11-07-2015 21:42
===============================================================
Netgear WNR3500L v1
Podziękowania dla administracji Openlinksys.info!
|
|
|
|
piolug93 |
Dodano 11-07-2015 22:33
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
Nie bardzo rozumiem to co napisałeś w trybie 3G wszystko jest okej czy tez w trybie automatycznym ale niestety mi zalezy na tym aby wtrakcie normalnego korzystania było wymuszone lte. |
|
|
|
hermes-80 |
Dodano 11-07-2015 22:38
|
VIP
Posty: 3676
Dołączył: 21/04/2009 11:24
|
Ale na czas wysyłania kodu i odbierania odpowiedzi modem musi być przełączony na niższy tryb niż LTE.
===============================================================
Netgear WNR3500L v1
Podziękowania dla administracji Openlinksys.info!
|
|
|
|
piolug93 |
Dodano 11-07-2015 22:45
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
Rozumiem że API samo nie zmieni, musiał bym jeszcze mieć skrypt na zmianę trybu sieci ? |
|
|
|
hermes-80 |
Dodano 11-07-2015 22:52
|
VIP
Posty: 3676
Dołączył: 21/04/2009 11:24
|
Na to wygląda.
===============================================================
Netgear WNR3500L v1
Podziękowania dla administracji Openlinksys.info!
|
|
|
|
piolug93 |
Dodano 13-07-2015 22:47
|
User
Posty: 33
Dołączył: 12/06/2013 13:26
|
Napisałem skrypt do wysyłania kodów USSD na aktywacje pakietu internetu ale występuje problem że czasami przycina się internet i nie wszystkie strony się wczytują wyskakuje błąd "ERR_TUNNEL_CONNECTION_FAILED" nie wiem z czym związany. O to kod dla potomnych
#!/system/bin/busybox sh
# pobranie tokena
TOKEN=$(wget -qO- http://192.168.8.1/api/webserver/token | grep token | cut -d '>' -f2 | cut -d '<' -f1)
# przejście w tryb LTE->3G
curl -d "
0302
3FFFFFFF
800C5
" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" http://192.168.8.1/api/net/net-mode
# rozłączenie data
curl -d "
0
" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" http://192.168.8.1/api/dialup/mobile-dataswitch
##################
# Wysyłanie USSD
curl -d "
*111*480*1#
" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" http://192.168.8.1/api/ussd/send
sleep 10
# Wysyłanie USSD
curl -d "
*111*480*3#
" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" http://192.168.8.1/api/ussd/send
sleep 15
# Odczyt USSD
t=1
while [ $t -le 10 && $usluga!="Usluga wlaczona"] do usluga=$(wget -qO- http://192.168.8.1/api/ussd/get | grep content | cut -d '>' -f2 | cut -d '<' -f1)
t=$[t + 1]
sleep 5 done
if $usluga="Usluga wlaczona"
then
# przejście w tryb LTE
curl -d "
03
3FFFFFFF
800C5
" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" http://192.168.8.1/api/net/net-mode
# połączenie data
curl -d "
1
" -H "__RequestVerificationToken: $TOKEN" -H "Content-Type: text/xml" http://192.168.8.1/api/dialup/mobile-dataswitch
##################
fi
Połączony z 07 sierpień 2015 20:51:45:
Mam już przerobiony na non-hilink ale nie wiem jak wysyłać teraz komendy ussd przez at
Edytowany przez piolug93 dnia 07-08-2015 20:51
|
|
|