![]() |
|
http post/request - Printable Version +- LogicMachine Forum (https://forum.logicmachine.net) +-- Forum: LogicMachine eco-system (https://forum.logicmachine.net/forumdisplay.php?fid=1) +--- Forum: Scripting (https://forum.logicmachine.net/forumdisplay.php?fid=8) +--- Thread: http post/request (/showthread.php?tid=4913) |
http post/request - Dré - 08.08.2023 I'm trying to sent a command to a homewizzard socket, to put him on and off, but really don't know how to sent the command. I can read the value's but don;t know to sent it on and off. hope someone can help me? this is what i use to read Code: require('socket.http')
ip = '192.168.99.73' --Ip adres of the socket
socket.http.TIMEOUT = 5
data = socket.http.request('http://'..ip..'/api/v1/state')
--{"power_on":true,"switch_lock":true,"brightness":0}
if data then
log('HW socket: Televisie: State'..data)
endthis is what the site said about the command. Code: Turn on socket
<Request>
PUT http://{IP address}/api/v1/state HTTP/1.1
Content-Type: application/json
Content-Length: <length>
{
"power_on": true
}
<Response>
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: <length>
{[url=https://homewizard-energy-api.readthedocs.io/endpoints.html]page of HomeWizzard[/url]
"power_on": true
}what i get when read the url: P1 HomeWizzard TEST 08.08.2023 12:57:02 * string: HW socket: Televisie: State{"power_on":true,"switch_lock":false,"brightness":0} RE: http post/request - admin - 08.08.2023 Try this: Code: json = require('json')
http = require('socket.http')
body = json.encode({
power_on = true
})
resp, code, hdrs, stat = http.request({
url = 'http://{IP address}/api/v1/state',
method = 'PUT',
headers = {
['Content-Type'] = 'application/json',
['Content-Length'] = #body,
},
body = body
})
log(resp, code, hdrs, stat)RE: http post/request - Dré - 08.08.2023 Thanks a lot, this is working. |