public Responseo BeginProcess(Commando command) { switch (command.Action) { case CommandAction.MouseMove: var(deltaX, deltaY) = command.GetInts(); MoveMouse(deltaX, deltaY); return(Responseo.CreateResponse(command, CommandDispatchResult.Ack)); case CommandAction.MouseSet: var(xPosition, yPosition) = command.GetInts(); SetMouse(xPosition, yPosition); return(Responseo.CreateResponse(command, CommandDispatchResult.Ack)); case CommandAction.MouseClick: var clickButton = command.GetEnum <MouseButton>(); ClickMouse(clickButton); return(Responseo.CreateResponse(command, CommandDispatchResult.Ack)); case CommandAction.MouseWheel: var(wheelDirection, wheelAmount) = command.GetEnumInt <MouseWheelDirection>(); WheelMouse(wheelDirection, wheelAmount); return(Responseo.CreateResponse(command, CommandDispatchResult.Ack)); default: return(Responseo.CreateResponse(command, CommandDispatchResult.Nack)); } }