oneliners/almost_oneliners/huawei_restart.sh

18 lines
821 B
Bash

#!/bin/bash
# huawei surfsticks (E3372H and others) tend not to be able to recognize,
# if their connection has dropped. this one simply reboots the stick via api.
# Api Documentation: https://blog.hqcodeshop.fi/archives/259-Huawei-E5186-AJAX-API.html
# edit as needed
AUTH_URL="http://192.168.8.1/api/webserver/SesTokInfo"
# get respone and token from device
curl -s $AUTH_URL > /tmp/huawei_token
RESPONSE=`grep -oP "<SesInfo>(.*)</SesInfo>" temp.txt | cut -d ">" -f 2 | cut -d "<" -f 1`
TOKEN=`grep -oP "<TokInfo>(.*)</TokInfo>" temp.txt | cut -d ">" -f 2 | cut -d "<" -f 1`
#echo $RESPONSE
# trigger reboot
curl -X POST http://192.168.8.1/api/device/control -H "Cookie: $RESPONSE" -H "__RequestVerificationToken: $TOKEN" --data "<?xml version=\"1.0\" encoding=\"UTF-8\"?><request><Control>1</Control></request>"