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 ) 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?