Troubleshooting

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

Web-API

Ü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>'