Huawei B890 (3 Webgate 2) Router automatisch neu starten / automatically restart

12 Responses

  1. Marco sagt:

    Vielen Dank, nach genau so einer Lösung hab ich schon Monate gesucht!

  2. geri sagt:

    Freut mich nichts zu danken 😉

  3. hollari sagt:

    Gbits sowas auch für den Webgate 3 ?
    (ist vermutlich ein ZTE MF283+)

    • geri sagt:

      Hi, damit kannst du in der Regel alle Webinterfaces automatisch ansteuern, macht natürlich nur Sinn wenn das Webinterface die Neustart Option überhaupt beinhaltet.
      Du musst lediglich die router_neustart.js an das Router Webinterface vom ZTE MF283 anpassen.
      Ich hab den leider noch nicht sonst könnt ichs schnell umschreiben.

      • Martin sagt:

        Hi Hollari,

        bitte sehr, viel Spaß damit! 🙂

        https://dl.dropboxusercontent.com/u/14822948/webgate3_restart.js

        lg
        Martin

        /*
        Script zum Neustarten des Webgate 3 ohne manuelles Einloggen und Auslösen im Browser.
        Auf Basis des Scripts für Webgate 2 von http://domainx.at/huawei-b890-3-webgate-2-automatisch-resetten-automatically-reset/
        */

        var casper = require(„casper“).create({ verbose: true });
        var x = require(„casper“).selectXPath;
        casper.userAgent(„Safari“);
        casper.start(„http://192.168.0.1/“); // IP des Webgates

        casper.wait(1500, function () {
        casper.then(function () {
        this.sendKeys(„#txtPwd“, „deinPasswort123“); // Passwort, statt „deinPasswort123″ hier das eigene Webgate-Portal-Password eingeben
        });
        });

        casper.thenClick(x(‚//*[@id=“btnLogin“]‘), function() {
        console.log(„login“);
        });

        casper.wait(4000, function () {
        casper.thenClick(x(‚(((//*[@id=“list-nav“]/*)[5])/*)[1]‘), function() {
        console.log(„klicke auf Einstellungen“);
        });
        });

        casper.wait(2000, function () {
        casper.thenClick(x(‚(//*[@id=“leftmenu“]/*)[8]‘), function() {
        console.log(„klicke auf Geräteeinstellungen“);
        });
        });

        casper.wait(2000, function () {
        casper.thenClick(x(‚(((((((//*[@id=“leftmenu“]/*)[9])/*[@class=“third“])[1])/*)[4])/*)[1]‘), function() {
        console.log(„klicke auf Neustart“);
        });
        });

        casper.wait(2000, function () {
        casper.thenClick(x(‚((((((//*[@id=“frmRestart“]/*)[1])/*)[3])/*)[1])‘), function() {
        console.log(„löse Neustart aus“);
        });
        });

        casper.wait(1500, function () {
        casper.thenClick(x(‚//*[@id=“yesbtn“]‘), function() {
        console.log(„bestätige Neustart“);
        });
        });

        casper.wait(3000, function () {
        casper.capture(„check.png“); // es wird ein screenshot erstellt
        });

        casper.run();

    • Martin sagt:

      Hi Hollari,
      ich werd das Script die Tage umschreiben und dann hier posten.

      Danke an Geri für die Vorarbeit!! 🙂

      • Martin sagt:

        Nachtrag von mir: Hab mir das gerade angesehen, die haben die GUI deutlich ungünstiger gescriptet im neuen Webinterface: es gibt keine IDs oder Klassen auf den Links im Menü mehr, das wird alles über Data-Binding geladen. Da muss ich mich erst etwas in Phantom/Casper einlesen, um rauszufinden, ob ich da ne Selektion gemäß href-Content erstellen kann oder das Data-Binding direkt ansteuer …

  4. geri sagt:

    Hallo Martin,

    casper unterstützt auch xpath (http://docs.casperjs.org/en/latest/selectors.html) damit sollte es kein Problem sein den Link ohne Klasse/ID auszulesen. Solltest du Hilfe benötigen gib bescheid.

    l.g.
    geri

  5. geri sagt:

    Gute Arbeit, Gratuliere!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.