--LUA_SD_EVENT=/writescript.lua local function ExecuteCmd(cmd,sid,param,result) local param_req = "" local msg = "" if (sid) then if (param) then param_req = '"sessionId": "'..sid..'",' else param_req = '"sessionId": "'..sid..'"' end end if (param) then param_req = param_req..param end msg = '{"name": "'..cmd..'","parameters": {'..param_req..'}}' local b = fa.request{ url = 'http://192.168.1.1/osc/commands/execute', method = "POST", body = msg } if (result and b) then local s,e,b2 = b:find('"'..result..'"%s*:%s*"([^"]+)"') b = b2 end return b end -- Main script local sessionId = ExecuteCmd("camera.startSession", nil, nil, "sessionId") local captureMode = ExecuteCmd("camera.getOptions", sessionId, '"optionNames": ["captureMode"]', "captureMode") if (captureMode=="image") then ExecuteCmd( "camera.takePicture", sessionId) elseif (captureMode=="_video") then ExecuteCmd( "camera._startCapture", sessionId) sleep(5000) ExecuteCmd( "camera._stopCapture", sessionId) end ExecuteCmd( "camera.closeSession", sessionId)