public void AddRoutes(WebServer webserver, Wrapper.Dotnet.Drone drone) { webserver.AddAction("GET", BaseRoute, (context) => { var throttles = drone.GetMotorThrottles(); return(new { frontLeft = throttles.Item1, frontRight = throttles.Item2, rearLeft = throttles.Item3, rearRight = throttles.Item4 }); }); webserver.AddAction("POST", BaseRoute, (context) => { drone.EnableMotors(); return(new { message = "Motors enabled" }); }); webserver.AddAction("DELETE", BaseRoute, (context) => { drone.DisableMotors(); return(new { message = "Motors disabled" }); }); webserver.AddAction("POST", BaseRoute + "/test", (context) => { string input; using (StreamReader reader = new StreamReader(context.Request.InputStream)) { input = reader.ReadToEnd(); } float value = JsonConvert.DeserializeObject <RunTestStruct>(input).Value; _ = Task.Run(() => { drone.RunTest(value); }); return(new { message = "Motor test started" }); }); }
public void AddRoutes(WebServer webserver, Wrapper.Dotnet.Drone drone) { webserver.AddAction("POST", BaseRoute, (context) => { drone.StartGps(); return("Gps started"); }); webserver.AddAction("DELETE", BaseRoute, (context) => { drone.StopGps(); return("Gps stopped"); }); webserver.AddAction("GET", $"{BaseRoute}/position", (context) => { var position = drone.Position; return(new { longitude = position.Longitude, latitude = position.Latitude }); }); }
public void AddRoutes(WebServer webserver, Wrapper.Dotnet.Drone drone) { webserver.AddAction("GET", "/orientation", (context) => { Orientation orientation = drone.Orientation; return(new { yaw = orientation.Yaw, pitch = orientation.Pitch, roll = orientation.Roll, }); }); webserver.AddAction("POST", "/orientation", (context) => { drone.StartOrientationThread(); return(new { message = "Orientation sensor enabled" }); }); webserver.AddAction("DELETE", "/orientation", (context) => { drone.StartOrientationThread(); return(new { message = "Orientation sensor disabled" }); }); webserver.AddAction("POST", "/orientationAssist", (context) => { drone.StartOrientationAssist(); return(new { message = "Orientation assist enabled" }); }); webserver.AddAction("DELETE", "/orientationAssist", (context) => { drone.StopOrientationAssist(); return(new { message = "Orientation assist disabled" }); }); webserver.AddAction("POST", "/orientationAssistAgression", (context) => { string input; using (StreamReader reader = new StreamReader(context.Request.InputStream)) { input = reader.ReadToEnd(); } float value = JsonConvert.DeserializeObject <RunTestStruct>(input).Value; drone.OrientationAssistAgression = value; return(new { message = "Orientation assist aggression set" }); }); }