Problem | Lösung |
---|---|
Verbindung wird ohne Datenübertragung nach kurzer Zeit getrennt | Der Stick hat ein Timeout nach dem er sich (wenn keine Daten übertragen werden) vom Mobilfunknetz trennt. Bei einigen Versionen? lässt sich dieser unter Settings → Mobile Connection erhöhen, bei anderen Versionen? gibt es diese Schaltfläche nicht. Grundsätzlich lässt er sich aber bis auf 24 Stunden erhöhen, in dem man das über die Web-API des Sticks macht, mit folgendem Script:
#!/bin/bash DATA=`curl http://192.168.8.1/api/webserver/SesTokInfo` SESSION_ID=`echo "$DATA" | grep "SessionID=" | cut -b 10-147` TOKEN=`echo "$DATA" | grep "TokInfo" | cut -b 10-41` curl http://192.168.8.1/api/dialup/connection -H "Cookie: $SESSION_ID" -H "__RequestVerificationToken: $TOKEN" --data '<?xml version="2.0" encoding="UTF-8"?><request><RoamAutoConnectEnable>0</RoamAutoConnectEnable><MaxIdelTime>86400</MaxIdelTime><ConnectMode>0</ConnectMode><MTU>1500</MTU><auto_dial_switch>1</auto_dial_switch><pdp_always_on>0</pdp_always_on></request>'Das Script ist von hier geklaut: https://blog.idorobots.org/entries/hacking-huawei-e3372-hilink..html |
Über diesen Call + folgende Befehle bekommt man die notwendige Session-ID und das Token:
DATA=`curl http://192.168.8.1/api/webserver/SesTokInfo` SESSION_ID=`echo "$DATA" | grep "SessionID=" | cut -b 10-147` TOKEN=`echo "$DATA" | grep "TokInfo" | cut -b 10-41`
Hier ein Beispiel für einen Call:
curl http://192.168.8.1/api/dialup/connection -H "Cookie: $SESSION_ID" -H "__RequestVerificationToken: $TOKEN" --data '<?xml version="2.0" encoding="UTF-8"?><request><RoamAutoConnectEnable>0</RoamAutoConnectEnable><MaxIdelTime>86400</MaxIdelTime><ConnectMode>0</ConnectMode><MTU>1500</MTU><auto_dial_switch>1</auto_dial_switch><pdp_always_on>0</pdp_always_on></request>'