Fritzbox 7270/Wlan Repeater Scripts

Hallo Fritzbox-Experten,

gibt es ein Script bzw. kann wer einer machen, mit dem man einen Rechner mit „Wake Up on Lan“ aufwecken kann?
Oder hat wer eine andere einfache Idee, wie man einen bestimten Computer von extern aufwecken kann.

gruß garfi

gib mal wakeonlan in der suche ein, dann findest du zb dashier

@axel:

Danke, das ist genau das was ich gesucht habe.
Da brauch ich ja keinen Umweg über die Fritzbox gehen.

Hat noch jemand eine Idee, wie man die Rufumleiltungem auslesen kann?

Hallo,

ich versuche gerade intern einen Anruf anzusetzen und wollte dafür das Script „Anrufen über die Wählhilfe ab V2.5“ verwenden. Habe die Einträge soweit alle versucht zu berücksichtigen, bekomme es aber nicht hin.

IPS ist 3.0
Fritzbox 7390 / Firmware: 6.01

Ich habe PHP_CURL und auch die andere Erweiterung hinzugefügt.

Fehler ist:

PHP-Error-Warning: simplexml_load_string(): Entity: line 1: parser error : AttValue: " or ’ expected
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): Entity: line 1: parser error : AttValue: " or ’ expected in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): ^
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): ^ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): Entity: line 1: parser error : attributes construct error
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): Entity: line 1: parser error : attributes construct error in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): ^
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): ^ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): Entity: line 1: parser error : Couldn’t find end of Start Tag META line 1
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): Entity: line 1: parser error : Couldn’t find end of Start Tag META line 1 in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): ^
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): ^ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): Entity: line 1: parser error : Extra content at the end of the document
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): Entity: line 1: parser error : Extra content at the end of the document in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): <META HTTP-EQUIV=Refresh CONTENT="0; URL=/login.lua?requestedpage=…/html/login_ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Warning: simplexml_load_string(): ^
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 11
Warning: simplexml_load_string(): ^ in D:\IP-Symcon\scripts\19068.ips.php on line 11
PHP-Error-Notice: Trying to get property of non-object
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 13
Notice: Trying to get property of non-object in D:\IP-Symcon\scripts\19068.ips.php on line 13
PHP-Error-Notice: Trying to get property of non-object
Error in Script D:\IP-Symcon\scripts\19068.ips.php on Line 19
Notice: Trying to get property of non-object in D:\IP-Symcon\scripts\19068.ips.php on line 19
Fehler: Login fehlgeschlagen

<?

if($_IPS['SENDER'] == "Execute")
{
    $fritzbox_ip = 'fritz.box';
    $password    = 'password';

    $ch = curl_init('http://' . $fritzbox_ip . '/cgi-bin/webcm?getpage=../html/login_sid.xml');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $login = curl_exec($ch);
    $session_status_simplexml = simplexml_load_string($login);

    if ($session_status_simplexml->iswriteaccess == 1)
    {
       $SID = $session_status_simplexml->SID;
    }
    else
    {
       $challenge = $session_status_simplexml->Challenge;
       $response = $challenge . '-' . md5(mb_convert_encoding($challenge . '-' . $password, "UCS-2LE", "UTF-8"));
        curl_setopt($ch, CURLOPT_POSTFIELDS, "login:command/response={$response}&getpage=../html/de/menus/menu2.html");
        preg_match('/name="sid" value="([0-9a-f]*)"/', curl_exec($ch), $matches);
       if(isset($matches[1]) && $matches[1] != '0000000000000000')
       {
          $SID = $matches[1];
       }
       else
       {
          echo "Fehler: Login fehlgeschlagen";
          return;
        }
        curl_setopt($ch, CURLOPT_POSTFIELDS, "sid={$SID}&telcfg:settings/DialPort=60"); // Nebenstellennummer eintragen!
        curl_exec($ch);
        curl_setopt($ch, CURLOPT_POSTFIELDS, "sid={$SID}&telcfg:command/Dial=**611"); // Rufnummer eintragen!
        curl_exec($ch);
        curl_close($ch);
    }
}

?>

Danke für eine Idee was ich falsch mache.

Moin,

da benutzt da falsche Login. Aber das hast du ja mittlerweile hier herausbekommen.

Ansonsten mache ich da so (wie viele andere auch;)). Diese Zeilen sind in einem extra Script. Dieses binde ich in alle Scripte, die etwas mit der Fritzbox zu tun haben, per include zu Beginn ein.

<?

//$fritzbox 		= GetValue(15851 /*[EDV\Fritzbox\Basisdaten\Fritzbox 7390\Netzwerk\Fritzbox - Hostname]*/);
$fritzbox 		= GetValue(49286 /*[EDV\Fritzbox\Basisdaten\Fritzbox 7390\Netzwerk\Fritzbox - IP]*/);
$fritzpasswort	= GetValue(48902 /*[EDV\Fritzbox\Basisdaten\Fritzbox 7390\Netzwerk\Fritzbox - Passwort]*/);

// -----------------------------------------------------------------------------
// Beginn - Login in die Fritzbox

$ch = curl_init('http://' . $fritzbox . '/login_sid.lua');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$login = curl_exec($ch);

$session_status_simplexml = simplexml_load_string($login);


if ($session_status_simplexml->SID != '0000000000000000')
{
   $SID = $session_status_simplexml->SID;
}
else
{
   $challenge = $session_status_simplexml->Challenge;
   $response = $challenge . '-' . md5(mb_convert_encoding($challenge . '-' . $fritzpasswort, "UCS-2LE", "UTF-8"));

   curl_setopt($ch, CURLOPT_POSTFIELDS, "response={$response}&page=/login_sid.lua");
   $sendlogin = curl_exec($ch);
   curl_close($ch);
   $session_status_simplexml = simplexml_load_string($sendlogin);

   if ($session_status_simplexml->SID != '0000000000000000')
   {
   $SID = $session_status_simplexml->SID;
   }
   else
   {
      echo "Fehler: Login fehlgeschlagen";
      return;
    }
}
// Ende - Login in die Fritzbox
// -----------------------------------------------------------------------------

?>

Den Beitrag mal wieder hergeholt, der schon über 10 Jahre alt ist. Trotzdem würde ich den AVM Repeater N/G für eine Laufschrift heute noch einsetzen wollen. Bevor ich den mir zulege die Frage, ob das Skript mit IPS 5.3 und einem Raspi 3 auch heute noch funktioniert oder was angepasst werden müsste?

Hallo,

bei mir läuft?s seit über 10 Jahren auf einem Pi3B mit der 5.3 ohne Probleme

Andreas

Beim Starten des Skripts erscheint folgende Fehlermeldung:
Fatal error: Uncaught Error: Call to undefined function http_post_fields() in /var/lib/symcon/scripts/18934.ips.php:11
Stack trace:
#0 {main}
thrown in /var/lib/symcon/scripts/18934.ips.php on line 11

Ich habe die 3 dll-Dateien wie beschrieben kopiert und IPS neu gestartet. Was ist jetzt noch mit der Funktion http_post-fields()?

Moin,

ich habe für dich einmal mein Warn-Skript für den Holzvergaser was einwandfrei funktioniert:

Ausgabe auf dem Repeater ist die Kesseltemperatur + Warnmeldung
Gleichzeitig Sprachausgabe auf dem Webfront

<?$fritzrepeatergui    = 'http://192.168.115.xxx/cgi-bin/webcm'; // IP Repeater$fritzseite  = '../html/de/menus/menu2.html';$password = "xxxxxxx"; // X durch Passwort ersetzen$text = (GetValueFloat(16646 /*[Service\Funktionstrakt\Heizung (Raum 30a)\Pokeys\ModBus Device 003 [ Kesseltemperatur HV]\Temperatur Kesseltemperatur HV]*/) . " Grad - Achtung Temperaturüberschreitung!!"); // Beispiel Temperaturanzeige - anzuzeigende Variablen und Texte (bis max. 240 Zeichen) einfügen//$text = ("test ");$ch   = curl_init($fritzrepeatergui . '?getpage=../html/index_inhalt.html');curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_exec($ch);curl_setopt($ch, CURLOPT_POSTFIELDS, "login:command/password={$password}");curl_exec($ch);curl_setopt($ch, CURLOPT_POSTFIELDS, "getpage={$fritzrepeatergui}&var:pagename=infoled&nlr:settings/TDS_ScrollText={$text}");curl_exec($ch);curl_close($ch);
WFC_SendNotification(49034 /*[WebFront Home]*/,'Warnung!','Holzvergaser - Achtung Temperaturüberschreitung!', 'Speaker', 0);WFC_AudioNotification(49034 /*[WebFront Home]*/, 'Holzvergaser - Achtung Temperaturüberschreitung!', 12198 /*[Uebertemperatur.wav]*/); //12198 /*[Uebertemperatur.wav]*/ ist die ID des Media Objekts in IP-Symcon?>

Andreas

Hallo Lukky,

danke für das Skript. Mit dem Hinweis auf CURLOPT_POSTFIELDS habe ich das Skript umgestellt und jetzt läuft es.