[Fli4l_dev] iconv für fli4l oder Alternative gesucht
Stefan Puschek
stefan.puschek at t-online.de
So Mai 12 20:35:12 CEST 2019
Hallo Mitlesende,
> mein fli4l (4.0er Version) soll meine dahinter hängende Fritzbox 7270v2
> überwachen - genauer gesagt, er soll prüfen ob alle 4 eingetragenen
> VOIP-Acounts "laufen".
>
> Bevor jemand fragt: der Router muss die Aufgabe übernehmen, denn der
> eisfair läuft nicht 24/7...
>
> Die gesuchte Info sieht man in der Web-Oberfläche der FB unter
> Übersicht; auf meinem eisfair läuft mein Skript - am Router fehlt mir
> dafür iconv...
>
> das Skript (im Netz gefunden und von mir angepasst):
> #!/bin/bash
> _BOXURL="http://192.168.6.134" # die FB
> _USERNAME=""
> _PASSWORD="geheim"
> _REQUESTPAGE="/home/home.lua" # Seite Übersicht
> _OUTPUTFILE="OUTPUT.TXT"
> _CHALLENGE=$(curl -s ${_BOXURL}/login.lua | grep "^g_challenge" | awk -F
> '"' '{ print $2 }')
> _MD5=$(echo -n ${_CHALLENGE}"-"${_PASSWORD} | iconv -f ISO8859-1 -t
> UTF-16LE | md5sum -b | awk '{print substr($0,1,32)}')
> _RESPONSE="${_CHALLENGE}-${_MD5}"
> _SID=$(curl -i -s -k -d 'response='${_RESPONSE} -d 'page=' -d
> "username=${_USERNAME}" "${_BOXURL}/login.lua" | grep "Location:" | grep
> -Poi 'sid=[a-f\d]+' | cut -d '=' -f2)
> curl -s "${_BOXURL}${_REQUESTPAGE}" -d "sid=${_SID}" | grep -c
> "Rufnummern aktiv"
>
> was macht in diesem Fall iconv? es wandelt einen ascii-String um in
> utf-16le
>
> aus $68 $61 $6c $6c $6f
> wird $68 $00 $61 $00 $6C $00 $6C $00 $6F $00
> d.h. an jedes byte wird ein Nullbyte angehängt;
das Problem habe ich gelöst mit myiconv:
#!/bin/bash
while read -n1 BYTE
do
printf $BYTE
printf '\0'
done
vielleicht braucht es jemand...
Groetjes
Stefan
Mehr Informationen über die Mailingliste Fli4l_dev