DryTek Vigor AP710

Hallo Community. Wer kann helfen…

Ich habe seit kurzem einen neuen W-LAN AccessPoint VigorAP710 der Firma DryTek im Netz.
Und nun (drei mal dürft Ihr raten :wink: ) möchte ich das Teil ins Symcon integrieren → W-LAN ein/aus/Status hauptsächlich.
Bisher hatte ich ne ältere FritzBox als AP im Einsatz, da hab ich das über die TR064 → PHP-SOAP-Client Funktion realisiert.
Da der Vigor auch TR069 kann, dachte ich das funktioniert Ähnlich. Tut es bestimmt auch, wenn man die ganzen Feinheiten „richtig“ macht.
Bis jetzt bin ich aber gescheitert und hab auch im ganzen WeltWeitenNetz nichts hilfreiches finden können… vielleicht ja hier.
Mir fehlt detailliertes Wissen in der ganzen SOAP Geschichte, und ich bin mir unsicher was der SOAP-Client für genaue Angaben bezüglich ‚location‘ und ‚uri‘ benötigt bzw. wie dann der Request richtig aus zu sehen hat.
Die Einstellungen im Vigor sehen so aus :


Über telnet kann man sich die möglichen Parameter Ausgeben lassen. Da kommt so etwas herraus :

<?xml version="1.0" encoding="UTF-8"?> <deviceType xmlns="urn:dslforum-org:hdm-0-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:dslforum-org:hdm-0-0 deviceType.xsd"> <protocol>DEVICE_PROTOCOL_DSLFTR069v1</protocol> <manufacturer>DrayTek</manufacturer> <manufacturerOUI>00507F</manufacturerOUI> <productClass>VigorAP 710</productClass> <modelName>VigorAP 710</modelName> <dataModel> <attributes> <attribute> <attributeName>notification</attributeName> <attributeType>int</attributeType> <minValue>0</minValue> <maxValue>2</maxValue> </attribute> <attribute> <attributeName>accessList</attributeName> <attributeType>string</attributeType> <array>true</array> <attributeLength>64</attributeLength> </attribute> <attribute> <attributeName>visibility</attributeName> <attributeType>string</attributeType> <attributeLength>64</attributeLength> </attribute> </attributes> <parameters> <parameter> <parameterName>InternetGatewayDevice</parameterName> <parameterType>object</parameterType> <array>false</array> <parameters> <parameter> <parameterName>LANDeviceNumberOfEntries</parameterName> <parameterType>unsignedInt</parameterType> </parameter> <parameter> <parameterName>WANDeviceNumberOfEntries</parameterName> <parameterType>unsignedInt</parameterType> </parameter> <parameter> <parameterName>DeviceInfo</parameterName> <parameterType>object</parameterType> <array>false</array> <parameters> <parameter> <parameterName>Manufacturer</parameterName> <parameterType>string</parameterType> <parameterLength>64</parameterLength> </parameter> <parameter> <parameterName>ManufacturerOUI</parameterName> <parameterType>string</parameterType> <parameterLength>64</parameterLength> </parameter> <parameter> <parameterName>ModelName</parameterName> <parameterType>string</parameterType> <parameterLength>64</parameterLength> </parameter> ...

Daraus hab ich dann in PHP das gemacht:

$client = new SoapClient ( null, array(
‚location‘ => ‚http://192.168.0.61:8069/cwm/CRN.html‘,
‚uri‘ => ‚urn:dslforum-org:hdm-0-0‘,
‚style‘ => SOAP_RPC,
‚use‘ => SOAP_ENCODED,
//‚noroot‘ => True,
‚login‘ => ‚user‘,
‚password‘ => ‚secret‘,
‚soap_version‘ => SOAP_1_1,
‚trace‘ => true)
);
$status = $client->GetParameterNames(‚InternetGatewayDevice‘);
print_r($status);

=> Fatal error: Uncaught SoapFault exception: [HTTP] Error Fetching http headers in D:\IP-Symcon\scripts…

Ein HTTP-Request auf die URL „http://192.168.0.61:8069/cwm/CRN.html“ ergibt ein leere „“ Antwort, deshalb bin ich mir unsicher, ob das die Richtige ‚location‘ für den SOAP-Client ist.

Kann jemand Helfen?

Niemand??

Hab ich wieder sooo anspruchsvolle Vorstellungen ? :wink:
selbst das DrayTek Support -Team schreibt: „Wir empfehlen die DrayTek Software VigorACS. Dafür ist keine Scriptsprache notwendig. :o)
Mit Ihrem Script können wir leider nicht behilflich sein. Dazu müsste man sich mit den Entwicklern in TW auseinandersetzen um eine Lösung zu erarbeiten.“

  • na Danke.
    Kann wenigsten mir jemand etwas (ganz Allgemein) Nachhilfe mit der Namespace Geschichte bei SOAP geben? Ich Versteh nicht genau, was ich damit genau Angebe und wofür.

Das Thema würde mich auch interessieren. Irgendwie erinnert mich deine PHP Abfrage an CURL. Vielleicht hilft Dir das hier weiter : curl-to-PHP: Convert Curl commands to PHP code

Ich nutze auch Draytek und werde mal probieren

Na ja, mit CURL kann ich das ganze in „Rohdaten“ auf die Leitung schicken.
Wenn ich wüsste, wie genau meine „Rohdaten“ aus zu sehen haben, wäre ich schon ein Schritt weiter…
Die PHP SOAP-Client Klasse soll das ja eben für einen erleichtern.
Aber vielleicht hast Recht und ich versuch es erst mal über den Weg an die Richtigen Daten zu kommen.
Dein Link ist auf jeden Fall mal super, auch für andere Zwecke.