+ Antworten
Seite 1 von 12 1 2 3 11 ... LetzteLetzte
Ergebnis 1 bis 10 von 118
  1. #1
    Registriert seit
    Feb 2005
    Ort
    Lübeck
    Beiträge
    23,819

    Smile Downstream/Upstream Geschwindigkeit der FritzBox auslesen

    Da mein Dorf-DSL ein wenig langsam ist, und ich manchmal einfach das Gefühl habe, dass irgendwas meine Leitung belegt, wollte ich schon immer Wissen wie viel gerade auf der Leitung los ist. Die FritzBox kann das... aber mein IP-Symcon wollte es auch schon immer können...

    Jetzt ist es schön im WebFront drin - Wer malt noch passende Icons?

    paresy

    Installation: Copy&Paste, IP-Adresse angeben, Ausführen, Fertig!

    PHP-Code:
    <?

    $address 
    "192.168.1.1";

    //Ab hier nichts mehr ändern
    $object IPS_GetObject($IPS_SELF);
    $parentID $object['ParentID'];

    $contentRecv 'POST /upnp/control/WANCommonIFC1 HTTP/1.1
    Cache-Control: no-cache
    Connection: Close
    Pragma: no-cache
    Content-Type: text/xml; charset="utf-8"
    User-Agent: Microsoft-Windows/6.1 UPnP/1.0
    SOAPAction: "urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1#GetTotalBytesReceived"
    Content-Length: '
    .(302+strlen($address)).'
    Host: '
    .$address.':49000

    <?xml version="1.0"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><m:GetTotalBytesReceived xmlns:m="urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1"/></SOAP-ENV:Body></SOAP-ENV:Envelope>
    '
    ;

    $contentSent 'POST /upnp/control/WANCommonIFC1 HTTP/1.1
    Cache-Control: no-cache
    Connection: Close
    Pragma: no-cache
    Content-Type: text/xml; charset="utf-8"
    User-Agent: Microsoft-Windows/6.1 UPnP/1.0
    SOAPAction: "urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1#GetTotalBytesSent"
    Content-Length: '
    .(298+strlen($address)).'
    Host: '
    .$address.':49000

    <?xml version="1.0"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><m:GetTotalBytesSent xmlns:m="urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1"/></SOAP-ENV:Body></SOAP-ENV:Envelope>
    '
    ;

    //Installer
    if ($IPS_SENDER == "Execute")
    {
        
    IPS_SetHidden($IPS_SELFtrue);
        
    IPS_SetName($IPS_SELF"Auslese-Skript");
        
    $parentObject IPS_GetObject($parentID);
        if (
    $parentObject['ObjectType'] !== 1)
        {
            
    $instanceID IPS_CreateInstance("{485D0419-BE97-4548-AA9C-C083EB82E61E}");
            
    IPS_SetParent($instanceID$parentID);
            
    $parentID $instanceID;
            
    IPS_SetParent($IPS_SELF$parentID);
            
    IPS_SetName($instanceID"FritzBox-Auslastung");
            
    IPS_SetIcon($instanceID"Gauge");
        }
        
    IPS_SetScriptTimer($IPS_SELF10);
        
        if(!
    IPS_VariableProfileExists("InternetSpeed_kbs")) {
           
    IPS_CreateVariableProfile("InternetSpeed_kbs"2);
           
    IPS_SetVariableProfileText("InternetSpeed_kbs"""" kb/s");
           
    IPS_SetVariableProfileDigits("InternetSpeed_kbs"2);
        }
    }

    $totalRecv GetTextBetween(SendPacket($contentRecv), "<NewTotalBytesReceived>""<\/NewTotalBytesReceived>");
    $totalSent GetTextBetween(SendPacket($contentSent), "<NewTotalBytesSent>""<\/NewTotalBytesSent>");
    $vidRecv CreateVariableByName($parentID"TotalRecv"21""true);
    $vidSent CreateVariableByName($parentID"TotalSent"22""true);

    $varRecv IPS_GetVariable($vidRecv);
    $varSent IPS_GetVariable($vidSent);

    SetValue($vidRecv$totalRecv);
    SetValue($vidSent$totalSent);

    $time microtime(true);

    $vidDn CreateVariableByName($parentID"Downstream"23"InternetSpeed_kbs");
    $vidUp CreateVariableByName($parentID"Upstream"24"InternetSpeed_kbs");

    SetValue($vidDnmax(0, ($totalRecv $varRecv['VariableValue']['ValueFloat']) / (($time $varRecv['VariableUpdated'])) / 1024));
    SetValue($vidUpmax(0, ($totalSent $varSent['VariableValue']['ValueFloat']) / (($time $varSent['VariableUpdated'])) / 1024));

    function 
    SendPacket($content) {
        global 
    $address;
        
    $port 49000;

        
    $fp fsockopen ($address$port$errno$errstr10);
        if (!
    $fp) {
            echo 
    "$errstr ($errno)<br />\n";
        } else {
            
    fputs ($fp$content);
            
    $ret "";
            while (!
    feof($fp)) {
                
    $ret.= fgets($fp,128);
            }
            
    fclose($fp);
        }
        if(!(
    strpos($ret"200 OK") === false)) {
           return 
    $ret;
        } else {
           die(
    "Invalid Response: ".$ret);
        }
    }

    function 
    GetTextBetween($string$start$end){
        
    preg_match_all"/$start(.*)$end/U"$string$match );
        return 
    $match[1][0];
    }

    function 
    CreateVariableByName($id$name$type$position$profile=""$hidden=false)
    {
        global 
    $IPS_SELF;
        
    $vid = @IPS_GetVariableIDByName($name$id);
        if(
    $vid === false)
        {
            
    $vid IPS_CreateVariable($type);
            
    IPS_SetParent($vid$id);
            
    IPS_SetName($vid$name);
            
    IPS_SetPosition($vid$position);
            
    IPS_SetHidden($vid$hidden);
            
    IPS_SetVariableCustomProfile($vid$profile);
            
    IPS_SetInfo($vid"this variable was created by script #$IPS_SELF");
        }
        return 
    $vid;
    }

    ?>
    Angehängte Grafiken Angehängte Grafiken  
    Geändert von paresy (25.04.11 um 20:30 Uhr) Grund: Screenshot...

  2. #2
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    292

    Hallo paresy,

    erhalte leider eine Fehlermeldung!

    "Invalid Response"

    Was mach ich falsch bzw. muß ich noch beachten?

    Gruß Tommy

  3. #3
    Registriert seit
    Jul 2006
    Ort
    Butzbach, die schöne Wetterau
    Beiträge
    1,477

    Bei mir läufts. Danke
    Gruß Uwe
    (bmwm3)


  4. #4
    Registriert seit
    Feb 2005
    Ort
    Lübeck
    Beiträge
    23,819

    Ist UPNP in deiner Box aktiviert?

    Einstellungen -> System -> Netzwerk -> UPNP -> Statusinformationen über UPnP übertragen (empfohlen)
    Geändert von paresy (06.10.10 um 20:57 Uhr)

  5. #5
    Registriert seit
    Aug 2009
    Ort
    Meißen
    Beiträge
    292

    Ja ist es!

    Den Gedanken hatte ich auch gleich.
    Leider liegt es daran wohl nicht.

    Meine Box 7270 mit 54.04.86 (neueste Firmware)

    Gruß Tommy

  6. #6
    Registriert seit
    Mar 2008
    Ort
    Ruesselsheim
    Beiträge
    3,941

    Hallo
    Bei mir die selbe Fehlermeldung

    FRITZ!Box Fon WLAN, Firmware-Version 08.04.34

  7. #7
    Registriert seit
    Jan 2007
    Ort
    Nidda(Hessen)
    Beiträge
    7,337

    Setzt mal anstatt der IP-Adresse, Fritz.box ein. Dann sollte es gehen.
    Gruß Rainer


    Unmögliches wird sofort erledigt, Wunder dauern etwas länger.


  8. #8
    Registriert seit
    May 2005
    Beiträge
    255

    Hab auch die Fehlermeldung. Mit fritz.box geht es garnicht.
    Gruß
    Jürgen

  9. #9
    Registriert seit
    Mar 2008
    Ort
    Ruesselsheim
    Beiträge
    3,941

    Zitat Zitat von RWN Beitrag anzeigen
    Setzt mal anstatt der IP-Adresse, Fritz.box ein. Dann sollte es gehen.
    Damit geht es bei mir.
    Warum ist mir noch nicht richtig klar.
    Muss an der Zeile :
    PHP-Code:
     $fp fsockopen ($address$port$errno$errstr10); 
    liegen.
    Warum geht eine Ip-Adresse nicht ?
    Script wird als fehlerhaft angezeigt.

  10. #10
    Registriert seit
    Mar 2006
    Ort
    Oberfranken, Germany
    Beiträge
    865

    Hallo,


    danke es läuft. Aber nur mit "fritz.box" sonst not response.


    Lukky
    Softw: IPS V5.3 unl. 3945 Variablen Hardw:. Pi3 mit 120GB SSD Fritz!Box7590 Fritz!OS7.12 + Fritz!Box 7390 Fritz!OS6.83 | Fritz!Repeater Sainlogic: 10 in 1 Fw1.4.0 | Pokeys57E | CCU3a 3.51.6(auf Pi3+HM-MOD-RPI-PCB PiVCCU 120GB SSD)+HMW-LGW-O-DR-GS-EUHM Conf.Tool LAN und CCU3b 3.51.6 (auf Pi3 mit HM-MOD-RPI-PCB PiVCCU 120GB SSD) 2 x HM Conf.Tool LANs l RFID-Zug.kontrollen | Shelly MQTT

Ähnliche Themen

  1. Anruferliste aus FritzBox auslesen
    Von paresy im Forum Anleitungen / Nützliche PHP Skripte
    Antworten: 353
    Letzter Beitrag: 05.07.20, 17:08
  2. FritzBox 7170 Auslesen Wert Signal/Rauschabstand
    Von audi2010 im Forum Audio & Video, TK-Anlagen, ISDN
    Antworten: 2
    Letzter Beitrag: 07.05.10, 09:30
  3. Fritzbox 7270 Traffic auslesen
    Von Tom_ im Forum Skripte, PHP, SQL
    Antworten: 3
    Letzter Beitrag: 21.04.10, 09:01
  4. Fritzbox auslesen und auswerten
    Von RWN im Forum Anleitungen / Nützliche PHP Skripte
    Antworten: 9
    Letzter Beitrag: 24.07.08, 19:23
  5. Daten von der FritzBox auslesen.
    Von Marcel77 im Forum Allgemeine Diskussion
    Antworten: 14
    Letzter Beitrag: 22.02.07, 16:32