From 6b42ac19d1c7a85b0855cebedd0943073df93142 Mon Sep 17 00:00:00 2001 From: Andy Killorin <37423245+Speedy6451@users.noreply.github.com> Date: Wed, 20 Dec 2023 17:39:40 -0600 Subject: [PATCH] manual mode --- server/src/main.rs | 12 ++++++++++++ server/src/turtle.rs | 1 + 2 files changed, 13 insertions(+) diff --git a/server/src/main.rs b/server/src/main.rs index 9044369..3bf1fe8 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -102,6 +102,7 @@ async fn main() -> Result<(), Error> { .route("/turtle/:id/setGoal", post(set_goal)) .route("/turtle/:id/dig", post(dig)) .route("/turtle/:id/cancelTask", post(cancel)) + .route("/turtle/:id/manual", post(run_command)) .route("/turtle/:id/info", get(turtle_info)) //.route("/turtle/:id/placeUp", get(place_up)) .route("/turtle/updateAll", get(update_turtles)) @@ -163,6 +164,17 @@ async fn place_up( Json(response) } +async fn run_command( + Path(id): Path, + State(state): State, + Json(req): Json, +) -> Json { + let state = state.read().await; + let commander = state.get_turtle(id).await.unwrap().clone(); + drop(state); + Json(commander.execute(req).await.ret) +} + async fn dig( Path(id): Path, State(state): State, diff --git a/server/src/turtle.rs b/server/src/turtle.rs index 3f9bea5..4486827 100644 --- a/server/src/turtle.rs +++ b/server/src/turtle.rs @@ -355,6 +355,7 @@ pub(crate) async fn process_turtle_update( } } + println!("{} idle, connected", turtle.name.to_str()); Ok(TurtleCommand::Wait(IDLE_TIME)) }