[Eisfair] fritzbox-tools
Marcus Roeckrath
marcus.roeckrath at gmx.de
Do Jun 8 21:29:25 CEST 2017
Hallo Olaf,
Marcus Roeckrath wrote:
> Erstelle ein Datei mit folgendem Inhalt:
>
> type="https"
> descfile="igddesc.xml"
> controlURL="WANIPConn1"
> serviceType="WANIPConnection:1"
> action="GetStatusInfo"
> data=""
>
> Rufe dann
>
> avm-fritz.toolbox.sh mysoaprequest <deine datei>
>
> auf.
>
> Die erscheinende XML-Ausgabe wäre dann noch nachzubearbeiten/filtern.
>
> <?xml version="1.0" encoding="utf-8"?>
> <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
> s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> <s:Body>
> <u:GetStatusInfoResponse
> xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1">
> <NewConnectionStatus>Connected</NewConnectionStatus>
> <NewLastConnectionError>ERROR_NONE</NewLastConnectionError>
> <NewUptime>91660</NewUptime>
> </u:GetStatusInfoResponse>
> </s:Body>
> </s:Envelope>
Das ginge z. B. so:
response=$(avm-fritz-toolbox.sh mysoaprequest <deine datei>)
echo "${response}" | sed -ne "s#[ \t]*</*NewUptime>[ \t]*##gp"
Da wo im Beispiel jetzt in der zweiten Zeile NewUptime steht, kommt die
Variable rein, die Du gezielt auswerten willst.
Im obigen Funktionsaufruf wäre da noch
echo "${response}" | sed -ne "s#[ \t]*</*NewConnectionStatus>[ \t]*##gp"
echo "${response}" | sed -ne "s#[ \t]*</*NewLastConnectionError>[ \t]*##gp"
möglich.
--
Gruss Marcus
Mehr Informationen über die Mailingliste Eisfair