NEWS
Simple API Use SOLVED
- 
					
					
					
					
 @ap2017 What are you trying to do and what is your issue? The URL you are providing contains a lot of spaces (which is wrong). Also you say user.data.0(which doesn't exist) and then try to usejavascript.0. IDs must match exactly the IDs in ioBroker. Simply use the "copy" button next to the state ID to get the full ID in the correct format.
- 
					
					
					
					
 @UncleSam Thank you for quick response and good comments. My actual URL does not have extra spaces: 
 http://iobrokerIP:8087/set/javascript.0.Pi-detection?Value=trueI created PI-detection variable in javascript.0 folder and monitoring value of this variable in response to motion detection from MotionEye, but so far I am getting nothing. My MotionEye Web Hook URL is http://iobrokerIP:8087/set/javascript.0.Pi-detection?Value=true with HTTP method set as GET 
- 
					
					
					
					
 
- 
					
					
					
					
 @ap2017 Thanks for the clarifications. What happens if you open the URL in your browser? Do you get a JSON response similar to the following or an error message? {"id":"javascript.0.Pi-detection","value":true}How do you know that you are "getting nothing"? 
- 
					
					
					
					
 @UncleSam In browser I am getting error message 
 "error: datapoint "javascript.0.Pi-detection" not found"
 I monitor variable PI-detection as Boolean widget in VIS
- 
					
					
					
					
 @ap2017 Can you please share a screenshot of your object tree in ioBroker where we can see the mentioned state (and its parents)? 
- 
					
					
					
					
 @UncleSam Here the screenshot. Do I need to have subfolder variables in my URL?  
- 
					
					
					
					
 
- 
					
					
					
					
 @ap2017 So, did you copy the state ID the way I asked you to? Because it seems to me that the name should be javascript.0.variables.PI-detection
- 
					
					
					
					
 @UncleSam Thank you, with subfolder "variables" added I am getting browser response 
 {"id":"javascript.0.variables.PI-detection","value":true,"val":true}Now I need to figure out how MotionEye notification work, since I PI-detection does not change in response to motion 
- 
					
					
					
					
 @UncleSam Everything works now. I did not realized that I have to reset the web hook variable after motion is detected. 
- 
					
					
					
					
 Hey there, i got the same Error but little different problem. I have copyed the Object-Path with the little button. so i build this URL: 
 http://SERVER:8087/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=false&prettyPrintThe Url works fine in any browser but when i try to use it in my code i get: "error: no value found for "0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1". Use /set/id?value=1 or /set/id?value=1&wait=1000" I will use it in a Lua Script that runs on the "Fibaro Home center lite". When i rebuild the URL to "toggle" it works fine.. i have no clue whats the issue .. because it makes no sense for me. Lua Code: local value = fibaro.getValue(52, "value") local url -- Deside if value should be true or false if (fibaro.getValue(52, "value") == true) then url = 'http://SERVER:8087/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=true&prettyPrint' elseif (fibaro.getValue(52, "value") == false) then url = 'SERVER/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=false&prettyPrint' else print ("No Match") end print(url) local selfhttp = net.HTTPClient() local headers = { ["Accept"] = "application/json", ["Content-Type"] = 'application/json', ["Cache-Control"] = "no-cache" } selfhttp:request(url, { options={ method = 'GET', headers = headers, timeout = 5000 }, success = function(response) print(response.status) print(response.data) end, error = function(message) print("error:", message) end })anyone knows something? i think i had the same issue by try to use something like this in Android App - Tasker, but then give out and used toggle. 
- 
					
					
					
					
 @tehmilcho sagte in Simple API Use SOLVED: http://SERVER:8087/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=true&prettyPrint Try to encode the URL let encodedUrl = encodeURIComponent(url);
- 
					
					
					
					
 @mcu said in Simple API Use SOLVED: let encodedUrl = encodeURIComponent(url); the Lua Script in Fibaro seems not happy about it: [24.11.2023] [22:43:48] [ERROR] [SCENE29]: (load):15: syntax error near 'encodedUrl 
- 
					
					
					
					
 @tehmilcho In LUA seems to be local encodedUrl = url.escape(url)
- 
					
					
					
					
 @mcu said in Simple API Use SOLVED: local encodedUrl = url.escape(url) mhh seems like fibaro specail lua? [24.11.2023] [22:54:25] [ERROR] [SCENE29]: (load):23: attempt to call a nil value (field 'escape') 
- 
					
					
					
					
 @tehmilcho Do you use it so? url = url.escape(url) selfhttp:request(url, { options={ method = 'GET', headers = headers, timeout = 5000 }, success = function(response) print(response.status) print(response.data) end, error = function(message) print("error:", message) end })
- 
					
					
					
					
 @mcu yep this leads to "[24.11.2023] [22:54:25] [ERROR] [SCENE29]: (load):23: attempt to call a nil value (field 'escape')" 
- 
					
					
					
					
 @tehmilcho sagte in Simple API Use SOLVED: :23: attempt to call a nil value (field 'escape') Try this url = url:gsub("([^A-Za-z0-9_])", function(c) return string.format("%%%02X", string.byte(c)) end)
- 
					
					
					
					
 @mcu said in Simple API Use SOLVED: url = url:gsub("([^A-Za-z0-9_])", function(c) return string.format("%%%02X", string.byte(c)) end) then it seems to get stuck, no error but will not finsh and also the state in iobroker is not changed, when you Output the new string you will get: http%3A%2F%2F192%2E168%2E178%2E37%3A8087%2Fset%2F0_userdata%2E0%2EVirtualDevices%2Ehc3lite%2EFlurPIR%2D1%3Fvalue%3Dtrue%26prettyPrint 
 
		
	 
		
	 
			
		