Någon som ser nåt fel? Har testat att skriva koden på flera olika sätt med samma resultat, så den ser kanske lite rörig ut nu.
Code: Select all
local tcpSocket = Net.FTcpSocket("192.168.1.119", 8080)
local requestBody = "";
local requestHeader = "";
requestBody = requestBody .."<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
requestBody = requestBody .."<s:Envelope s:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\">\n";
requestBody = requestBody .."<s:Body>\n";
requestBody = requestBody .."<u:GetVolume xmlns:u=\"urn:schemas-upnp-org:service:RenderingControl:1\">\n";
requestBody = requestBody .."<InstanceID>0</InstanceID>\n";
requestBody = requestBody .."<Channel>Master</Channel>\n";
requestBody = requestBody .."</u:GetVolume>\n";
requestBody = requestBody .."</s:Body>\n";
requestBody = requestBody .."</s:Envelope>\n";
requestHeader = requestHeader .."POST /RenderingControl/ctrl HTTP/1.1\n";
requestHeader = requestHeader .."SOAPACTION: \"urn:schemas-upnp-org:service:RenderingControl:1#GetVolume\"\n";
requestHeader = requestHeader .."CONTENT-TYPE: text/xml; charset=\"utf-8\"\n";
requestHeader = requestHeader .."Content-Length: " .. string.len(requestBody) .. "\n";
local request = requestHeader .. "\n" .. requestBody;
bytes, errorcode = tcpSocket:write(request);
if errorcode == 0 then
local result = tcpSocket:read();
fibaro:debug(result);
fibaro:debug(bytes);
end
tcpSocket:disconnect();
fibaro:sleep(1000*60);
Code: Select all
POST /RenderingControl/ctrl HTTP/1.1
HOST: 192.168.1.119:8080
SOAPACTION: "urn:schemas-upnp-org:service:RenderingControl:1#GetVolume"
CONTENT-TYPE: text/xml; charset="utf-8"
Content-Length: 380
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<u:GetVolume xmlns:u="urn:schemas-upnp-org:service:RenderingControl:1">
<InstanceID>0</InstanceID>
<Channel>Master</Channel>
</u:GetVolume>
</s:Body>
</s:Envelope>
HTTP/1.1 200 OK
CONTENT-LENGTH: 359
CONTENT-TYPE: text/xml; charset="utf-8"
X-AV-Server-Info: av="5.0"; cn="Sony Corporation"; mn="STR-DN1040"; mv="1.00"
X-AV-Physical-Unit-Info: pa="STR-DN1040"
EXT:
SERVER: KnOS/3.2 UPnP/1.0 DMP/3.5
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope
xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<s:Body>
<u:GetVolumeResponse xmlns:u="urn:schemas-upnp-org:service:RenderingControl:1">
<CurrentVolume>10</CurrentVolume>
</u:GetVolumeResponse>
</s:Body>
</s:Envelope>