Search the Community
Showing results for tags 'webservice'.
-
Hello, I am using Loxone as the central "technology" for controlling my SmartHome. Now, I'm curious whether it is possible to use the webservice to get/set information in the Loxone miniserver. Anyone tried that already, or anyone who has got an idea what code to use? Thanks! Describtion of the webservice can be found here: https://www.loxone.com/enen/kb/web-services/ Getting the mac address is working. The result looks the way it is described on the website. <?xml version="1.0" encoding="utf-8"?> <LL control="dev/cfg/mac" value="59:9F:99:90:89:C9" Code="200"/> All other stuff like getting the version - is not working. ;https://www.loxone.com/enen/kb/web-services/ #include <Crypt.au3> _Crypt_Startup() ; To optimize performance start the crypt library. Global Const $HTTP_STATUS_OK = 200 Global $user = 'xxx' Global $password = 'xxx' Global $ip = '192.168.178.77' Global $port = '50666' ;~ Global $MD5 = HttpGet('http://' & $user & ':' & $password & '@' & $ip & ':' & $port & '/dev/cfg/mac', "password=" & _Crypt_HashData($password, $CALG_MD5)) Global $MD5 = HttpGet('http://' & $user & ':' & $password & '@' & $ip & ':' & $port & '/dev/cfg/version', "password=" & _Crypt_HashData($password, $CALG_MD5)) ;~ Global $MD5 = HttpGet('http://' & $user & ':' & $password & '@' & $ip & ':' & $port & '/dev/cfg/version') ;, "password=WeWantThisAsMd5") ;~ Global $MD5 = HttpGet('/dev/cfg/gateway') ;, "password=WeWantThisAsMd5") ConsoleWrite($MD5 & @CRLF) Func HttpPost($sURL, $sData = "") Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1") $oHTTP.Open("POST", $sURL, False) If (@error) Then Return SetError(1, 0, 0) $oHTTP.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded") $oHTTP.Send($sData) If (@error) Then Return SetError(2, 0, 0) If ($oHTTP.Status <> $HTTP_STATUS_OK) Then Return SetError(3, 0, 0) Return SetError(0, 0, $oHTTP.ResponseText) EndFunc ;==>HttpPost Func HttpGet($sURL, $sData = "") Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1") ;~ $oHTTP.Open("GET", $sURL & "?" & $sData, False) $oHTTP.Open("GET", $sURL & "?" & $sData, False) If (@error) Then Return SetError(1, 0, 0) $oHTTP.Send() If (@error) Then Return SetError(2, 0, 0) If ($oHTTP.Status <> $HTTP_STATUS_OK) Then Return SetError(3, 0, 0) Return SetError(0, 0, $oHTTP.ResponseText) EndFunc ;==>HttpGet So long, Mega
- 1 reply
-
- httprequest
- webservice
-
(and 1 more)
Tagged with: