From a19ff371e4877b1247782447f1af192f7927c828 Mon Sep 17 00:00:00 2001 From: Julian Oes Date: Sun, 7 Apr 2024 16:42:55 +1200 Subject: [PATCH] Update to mavsdk_server v2.7.0 Signed-off-by: Julian Oes --- MAVSDK_SERVER_VERSION | 2 +- mavsdk/action.py | 10 + mavsdk/action_pb2.py | 14 +- mavsdk/action_pb2_grpc.py | 2 + mavsdk/arm_authorizer_server.py | 313 ++++++++++++++ mavsdk/arm_authorizer_server_pb2.py | 119 ++++++ mavsdk/arm_authorizer_server_pb2_grpc.py | 135 ++++++ mavsdk/camera_server.py | 390 +++++++++++++++++- mavsdk/camera_server_pb2.py | 230 ++++++++++- mavsdk/camera_server_pb2_grpc.py | 278 ++++++++++++- .../source/plugins/arm_authorizer_server.rst | 8 + mavsdk/source/plugins/index.rst | 1 + proto | 2 +- 13 files changed, 1484 insertions(+), 20 deletions(-) create mode 100644 mavsdk/arm_authorizer_server.py create mode 100644 mavsdk/arm_authorizer_server_pb2.py create mode 100644 mavsdk/arm_authorizer_server_pb2_grpc.py create mode 100644 mavsdk/source/plugins/arm_authorizer_server.rst diff --git a/MAVSDK_SERVER_VERSION b/MAVSDK_SERVER_VERSION index 8a965c11..873ca0fa 100644 --- a/MAVSDK_SERVER_VERSION +++ b/MAVSDK_SERVER_VERSION @@ -1 +1 @@ -v2.6.0 +v2.7.0 diff --git a/mavsdk/action.py b/mavsdk/action.py index 5dfe5562..dbbdfe49 100644 --- a/mavsdk/action.py +++ b/mavsdk/action.py @@ -130,6 +130,9 @@ class Result(Enum): FAILED Action failed + INVALID_ARGUMENT + Invalid argument + """ @@ -147,6 +150,7 @@ class Result(Enum): PARAMETER_ERROR = 11 UNSUPPORTED = 12 FAILED = 13 + INVALID_ARGUMENT = 14 def translate_to_rpc(self): if self == ActionResult.Result.UNKNOWN: @@ -177,6 +181,8 @@ def translate_to_rpc(self): return action_pb2.ActionResult.RESULT_UNSUPPORTED if self == ActionResult.Result.FAILED: return action_pb2.ActionResult.RESULT_FAILED + if self == ActionResult.Result.INVALID_ARGUMENT: + return action_pb2.ActionResult.RESULT_INVALID_ARGUMENT @staticmethod def translate_from_rpc(rpc_enum_value): @@ -209,6 +215,8 @@ def translate_from_rpc(rpc_enum_value): return ActionResult.Result.UNSUPPORTED if rpc_enum_value == action_pb2.ActionResult.RESULT_FAILED: return ActionResult.Result.FAILED + if rpc_enum_value == action_pb2.ActionResult.RESULT_INVALID_ARGUMENT: + return ActionResult.Result.INVALID_ARGUMENT def __str__(self): return self.name @@ -637,6 +645,8 @@ async def set_actuator(self, index, value): """ Send command to set the value of an actuator. + Note that the index of the actuator starts at 1 and that the value goes from -1 to 1. + Parameters ---------- index : int32_t diff --git a/mavsdk/action_pb2.py b/mavsdk/action_pb2.py index fde9a77e..ace5bb2d 100644 --- a/mavsdk/action_pb2.py +++ b/mavsdk/action_pb2.py @@ -16,7 +16,7 @@ from . import mavsdk_options_pb2 as mavsdk__options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x61\x63tion/action.proto\x12\x11mavsdk.rpc.action\x1a\x14mavsdk_options.proto\"\x0c\n\nArmRequest\"E\n\x0b\x41rmResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x0f\n\rDisarmRequest\"H\n\x0e\x44isarmResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x10\n\x0eTakeoffRequest\"I\n\x0fTakeoffResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\r\n\x0bLandRequest\"F\n\x0cLandResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x0f\n\rRebootRequest\"H\n\x0eRebootResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x11\n\x0fShutdownRequest\"J\n\x10ShutdownResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x12\n\x10TerminateRequest\"K\n\x11TerminateResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\r\n\x0bKillRequest\"F\n\x0cKillResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x17\n\x15ReturnToLaunchRequest\"P\n\x16ReturnToLaunchResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"p\n\x13GotoLocationRequest\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x04 \x01(\x02\"N\n\x14GotoLocationResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\xd7\x01\n\x0e\x44oOrbitRequest\x12\x10\n\x08radius_m\x18\x01 \x01(\x02\x12\x13\n\x0bvelocity_ms\x18\x02 \x01(\x02\x12\x39\n\x0cyaw_behavior\x18\x03 \x01(\x0e\x32#.mavsdk.rpc.action.OrbitYawBehavior\x12\x1d\n\x0clatitude_deg\x18\x05 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x06 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x07 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\"I\n\x0f\x44oOrbitResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\r\n\x0bHoldRequest\"F\n\x0cHoldResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"2\n\x12SetActuatorRequest\x12\r\n\x05index\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x02\"M\n\x13SetActuatorResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x1e\n\x1cTransitionToFixedwingRequest\"W\n\x1dTransitionToFixedwingResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\" \n\x1eTransitionToMulticopterRequest\"Y\n\x1fTransitionToMulticopterResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x1b\n\x19GetTakeoffAltitudeRequest\"f\n\x1aGetTakeoffAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\x12\x10\n\x08\x61ltitude\x18\x02 \x01(\x02\"-\n\x19SetTakeoffAltitudeRequest\x12\x10\n\x08\x61ltitude\x18\x01 \x01(\x02\"T\n\x1aSetTakeoffAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x18\n\x16GetMaximumSpeedRequest\"`\n\x17GetMaximumSpeedResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\x12\r\n\x05speed\x18\x02 \x01(\x02\"\'\n\x16SetMaximumSpeedRequest\x12\r\n\x05speed\x18\x01 \x01(\x02\"Q\n\x17SetMaximumSpeedResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\"\n GetReturnToLaunchAltitudeRequest\"x\n!GetReturnToLaunchAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\x12\x1b\n\x13relative_altitude_m\x18\x02 \x01(\x02\"?\n SetReturnToLaunchAltitudeRequest\x12\x1b\n\x13relative_altitude_m\x18\x01 \x01(\x02\"[\n!SetReturnToLaunchAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"+\n\x16SetCurrentSpeedRequest\x12\x11\n\tspeed_m_s\x18\x01 \x01(\x02\"Q\n\x17SetCurrentSpeedResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\xf0\x03\n\x0c\x41\x63tionResult\x12\x36\n\x06result\x18\x01 \x01(\x0e\x32&.mavsdk.rpc.action.ActionResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\x93\x03\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x02\x12\x1b\n\x17RESULT_CONNECTION_ERROR\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x19\n\x15RESULT_COMMAND_DENIED\x10\x05\x12.\n*RESULT_COMMAND_DENIED_LANDED_STATE_UNKNOWN\x10\x06\x12$\n RESULT_COMMAND_DENIED_NOT_LANDED\x10\x07\x12\x12\n\x0eRESULT_TIMEOUT\x10\x08\x12*\n&RESULT_VTOL_TRANSITION_SUPPORT_UNKNOWN\x10\t\x12%\n!RESULT_NO_VTOL_TRANSITION_SUPPORT\x10\n\x12\x1a\n\x16RESULT_PARAMETER_ERROR\x10\x0b\x12\x16\n\x12RESULT_UNSUPPORTED\x10\x0c\x12\x11\n\rRESULT_FAILED\x10\r*\xf3\x01\n\x10OrbitYawBehavior\x12\x32\n.ORBIT_YAW_BEHAVIOR_HOLD_FRONT_TO_CIRCLE_CENTER\x10\x00\x12+\n\'ORBIT_YAW_BEHAVIOR_HOLD_INITIAL_HEADING\x10\x01\x12#\n\x1fORBIT_YAW_BEHAVIOR_UNCONTROLLED\x10\x02\x12\x33\n/ORBIT_YAW_BEHAVIOR_HOLD_FRONT_TANGENT_TO_CIRCLE\x10\x03\x12$\n ORBIT_YAW_BEHAVIOR_RC_CONTROLLED\x10\x04\x32\xa6\x11\n\rActionService\x12\x46\n\x03\x41rm\x12\x1d.mavsdk.rpc.action.ArmRequest\x1a\x1e.mavsdk.rpc.action.ArmResponse\"\x00\x12O\n\x06\x44isarm\x12 .mavsdk.rpc.action.DisarmRequest\x1a!.mavsdk.rpc.action.DisarmResponse\"\x00\x12R\n\x07Takeoff\x12!.mavsdk.rpc.action.TakeoffRequest\x1a\".mavsdk.rpc.action.TakeoffResponse\"\x00\x12I\n\x04Land\x12\x1e.mavsdk.rpc.action.LandRequest\x1a\x1f.mavsdk.rpc.action.LandResponse\"\x00\x12O\n\x06Reboot\x12 .mavsdk.rpc.action.RebootRequest\x1a!.mavsdk.rpc.action.RebootResponse\"\x00\x12U\n\x08Shutdown\x12\".mavsdk.rpc.action.ShutdownRequest\x1a#.mavsdk.rpc.action.ShutdownResponse\"\x00\x12X\n\tTerminate\x12#.mavsdk.rpc.action.TerminateRequest\x1a$.mavsdk.rpc.action.TerminateResponse\"\x00\x12I\n\x04Kill\x12\x1e.mavsdk.rpc.action.KillRequest\x1a\x1f.mavsdk.rpc.action.KillResponse\"\x00\x12g\n\x0eReturnToLaunch\x12(.mavsdk.rpc.action.ReturnToLaunchRequest\x1a).mavsdk.rpc.action.ReturnToLaunchResponse\"\x00\x12\x61\n\x0cGotoLocation\x12&.mavsdk.rpc.action.GotoLocationRequest\x1a\'.mavsdk.rpc.action.GotoLocationResponse\"\x00\x12R\n\x07\x44oOrbit\x12!.mavsdk.rpc.action.DoOrbitRequest\x1a\".mavsdk.rpc.action.DoOrbitResponse\"\x00\x12I\n\x04Hold\x12\x1e.mavsdk.rpc.action.HoldRequest\x1a\x1f.mavsdk.rpc.action.HoldResponse\"\x00\x12^\n\x0bSetActuator\x12%.mavsdk.rpc.action.SetActuatorRequest\x1a&.mavsdk.rpc.action.SetActuatorResponse\"\x00\x12|\n\x15TransitionToFixedwing\x12/.mavsdk.rpc.action.TransitionToFixedwingRequest\x1a\x30.mavsdk.rpc.action.TransitionToFixedwingResponse\"\x00\x12\x82\x01\n\x17TransitionToMulticopter\x12\x31.mavsdk.rpc.action.TransitionToMulticopterRequest\x1a\x32.mavsdk.rpc.action.TransitionToMulticopterResponse\"\x00\x12s\n\x12GetTakeoffAltitude\x12,.mavsdk.rpc.action.GetTakeoffAltitudeRequest\x1a-.mavsdk.rpc.action.GetTakeoffAltitudeResponse\"\x00\x12s\n\x12SetTakeoffAltitude\x12,.mavsdk.rpc.action.SetTakeoffAltitudeRequest\x1a-.mavsdk.rpc.action.SetTakeoffAltitudeResponse\"\x00\x12j\n\x0fGetMaximumSpeed\x12).mavsdk.rpc.action.GetMaximumSpeedRequest\x1a*.mavsdk.rpc.action.GetMaximumSpeedResponse\"\x00\x12j\n\x0fSetMaximumSpeed\x12).mavsdk.rpc.action.SetMaximumSpeedRequest\x1a*.mavsdk.rpc.action.SetMaximumSpeedResponse\"\x00\x12\x88\x01\n\x19GetReturnToLaunchAltitude\x12\x33.mavsdk.rpc.action.GetReturnToLaunchAltitudeRequest\x1a\x34.mavsdk.rpc.action.GetReturnToLaunchAltitudeResponse\"\x00\x12\x88\x01\n\x19SetReturnToLaunchAltitude\x12\x33.mavsdk.rpc.action.SetReturnToLaunchAltitudeRequest\x1a\x34.mavsdk.rpc.action.SetReturnToLaunchAltitudeResponse\"\x00\x12j\n\x0fSetCurrentSpeed\x12).mavsdk.rpc.action.SetCurrentSpeedRequest\x1a*.mavsdk.rpc.action.SetCurrentSpeedResponse\"\x00\x42\x1f\n\x10io.mavsdk.actionB\x0b\x41\x63tionProtob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x13\x61\x63tion/action.proto\x12\x11mavsdk.rpc.action\x1a\x14mavsdk_options.proto\"\x0c\n\nArmRequest\"E\n\x0b\x41rmResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x0f\n\rDisarmRequest\"H\n\x0e\x44isarmResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x10\n\x0eTakeoffRequest\"I\n\x0fTakeoffResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\r\n\x0bLandRequest\"F\n\x0cLandResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x0f\n\rRebootRequest\"H\n\x0eRebootResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x11\n\x0fShutdownRequest\"J\n\x10ShutdownResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x12\n\x10TerminateRequest\"K\n\x11TerminateResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\r\n\x0bKillRequest\"F\n\x0cKillResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x17\n\x15ReturnToLaunchRequest\"P\n\x16ReturnToLaunchResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"p\n\x13GotoLocationRequest\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x04 \x01(\x02\"N\n\x14GotoLocationResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\xd7\x01\n\x0e\x44oOrbitRequest\x12\x10\n\x08radius_m\x18\x01 \x01(\x02\x12\x13\n\x0bvelocity_ms\x18\x02 \x01(\x02\x12\x39\n\x0cyaw_behavior\x18\x03 \x01(\x0e\x32#.mavsdk.rpc.action.OrbitYawBehavior\x12\x1d\n\x0clatitude_deg\x18\x05 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x06 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x07 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\"I\n\x0f\x44oOrbitResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\r\n\x0bHoldRequest\"F\n\x0cHoldResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"2\n\x12SetActuatorRequest\x12\r\n\x05index\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x02\"M\n\x13SetActuatorResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x1e\n\x1cTransitionToFixedwingRequest\"W\n\x1dTransitionToFixedwingResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\" \n\x1eTransitionToMulticopterRequest\"Y\n\x1fTransitionToMulticopterResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x1b\n\x19GetTakeoffAltitudeRequest\"f\n\x1aGetTakeoffAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\x12\x10\n\x08\x61ltitude\x18\x02 \x01(\x02\"-\n\x19SetTakeoffAltitudeRequest\x12\x10\n\x08\x61ltitude\x18\x01 \x01(\x02\"T\n\x1aSetTakeoffAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x18\n\x16GetMaximumSpeedRequest\"`\n\x17GetMaximumSpeedResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\x12\r\n\x05speed\x18\x02 \x01(\x02\"\'\n\x16SetMaximumSpeedRequest\x12\r\n\x05speed\x18\x01 \x01(\x02\"Q\n\x17SetMaximumSpeedResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\"\n GetReturnToLaunchAltitudeRequest\"x\n!GetReturnToLaunchAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\x12\x1b\n\x13relative_altitude_m\x18\x02 \x01(\x02\"?\n SetReturnToLaunchAltitudeRequest\x12\x1b\n\x13relative_altitude_m\x18\x01 \x01(\x02\"[\n!SetReturnToLaunchAltitudeResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"+\n\x16SetCurrentSpeedRequest\x12\x11\n\tspeed_m_s\x18\x01 \x01(\x02\"Q\n\x17SetCurrentSpeedResponse\x12\x36\n\raction_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.action.ActionResult\"\x8d\x04\n\x0c\x41\x63tionResult\x12\x36\n\x06result\x18\x01 \x01(\x0e\x32&.mavsdk.rpc.action.ActionResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xb0\x03\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x02\x12\x1b\n\x17RESULT_CONNECTION_ERROR\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x19\n\x15RESULT_COMMAND_DENIED\x10\x05\x12.\n*RESULT_COMMAND_DENIED_LANDED_STATE_UNKNOWN\x10\x06\x12$\n RESULT_COMMAND_DENIED_NOT_LANDED\x10\x07\x12\x12\n\x0eRESULT_TIMEOUT\x10\x08\x12*\n&RESULT_VTOL_TRANSITION_SUPPORT_UNKNOWN\x10\t\x12%\n!RESULT_NO_VTOL_TRANSITION_SUPPORT\x10\n\x12\x1a\n\x16RESULT_PARAMETER_ERROR\x10\x0b\x12\x16\n\x12RESULT_UNSUPPORTED\x10\x0c\x12\x11\n\rRESULT_FAILED\x10\r\x12\x1b\n\x17RESULT_INVALID_ARGUMENT\x10\x0e*\xf3\x01\n\x10OrbitYawBehavior\x12\x32\n.ORBIT_YAW_BEHAVIOR_HOLD_FRONT_TO_CIRCLE_CENTER\x10\x00\x12+\n\'ORBIT_YAW_BEHAVIOR_HOLD_INITIAL_HEADING\x10\x01\x12#\n\x1fORBIT_YAW_BEHAVIOR_UNCONTROLLED\x10\x02\x12\x33\n/ORBIT_YAW_BEHAVIOR_HOLD_FRONT_TANGENT_TO_CIRCLE\x10\x03\x12$\n ORBIT_YAW_BEHAVIOR_RC_CONTROLLED\x10\x04\x32\xa6\x11\n\rActionService\x12\x46\n\x03\x41rm\x12\x1d.mavsdk.rpc.action.ArmRequest\x1a\x1e.mavsdk.rpc.action.ArmResponse\"\x00\x12O\n\x06\x44isarm\x12 .mavsdk.rpc.action.DisarmRequest\x1a!.mavsdk.rpc.action.DisarmResponse\"\x00\x12R\n\x07Takeoff\x12!.mavsdk.rpc.action.TakeoffRequest\x1a\".mavsdk.rpc.action.TakeoffResponse\"\x00\x12I\n\x04Land\x12\x1e.mavsdk.rpc.action.LandRequest\x1a\x1f.mavsdk.rpc.action.LandResponse\"\x00\x12O\n\x06Reboot\x12 .mavsdk.rpc.action.RebootRequest\x1a!.mavsdk.rpc.action.RebootResponse\"\x00\x12U\n\x08Shutdown\x12\".mavsdk.rpc.action.ShutdownRequest\x1a#.mavsdk.rpc.action.ShutdownResponse\"\x00\x12X\n\tTerminate\x12#.mavsdk.rpc.action.TerminateRequest\x1a$.mavsdk.rpc.action.TerminateResponse\"\x00\x12I\n\x04Kill\x12\x1e.mavsdk.rpc.action.KillRequest\x1a\x1f.mavsdk.rpc.action.KillResponse\"\x00\x12g\n\x0eReturnToLaunch\x12(.mavsdk.rpc.action.ReturnToLaunchRequest\x1a).mavsdk.rpc.action.ReturnToLaunchResponse\"\x00\x12\x61\n\x0cGotoLocation\x12&.mavsdk.rpc.action.GotoLocationRequest\x1a\'.mavsdk.rpc.action.GotoLocationResponse\"\x00\x12R\n\x07\x44oOrbit\x12!.mavsdk.rpc.action.DoOrbitRequest\x1a\".mavsdk.rpc.action.DoOrbitResponse\"\x00\x12I\n\x04Hold\x12\x1e.mavsdk.rpc.action.HoldRequest\x1a\x1f.mavsdk.rpc.action.HoldResponse\"\x00\x12^\n\x0bSetActuator\x12%.mavsdk.rpc.action.SetActuatorRequest\x1a&.mavsdk.rpc.action.SetActuatorResponse\"\x00\x12|\n\x15TransitionToFixedwing\x12/.mavsdk.rpc.action.TransitionToFixedwingRequest\x1a\x30.mavsdk.rpc.action.TransitionToFixedwingResponse\"\x00\x12\x82\x01\n\x17TransitionToMulticopter\x12\x31.mavsdk.rpc.action.TransitionToMulticopterRequest\x1a\x32.mavsdk.rpc.action.TransitionToMulticopterResponse\"\x00\x12s\n\x12GetTakeoffAltitude\x12,.mavsdk.rpc.action.GetTakeoffAltitudeRequest\x1a-.mavsdk.rpc.action.GetTakeoffAltitudeResponse\"\x00\x12s\n\x12SetTakeoffAltitude\x12,.mavsdk.rpc.action.SetTakeoffAltitudeRequest\x1a-.mavsdk.rpc.action.SetTakeoffAltitudeResponse\"\x00\x12j\n\x0fGetMaximumSpeed\x12).mavsdk.rpc.action.GetMaximumSpeedRequest\x1a*.mavsdk.rpc.action.GetMaximumSpeedResponse\"\x00\x12j\n\x0fSetMaximumSpeed\x12).mavsdk.rpc.action.SetMaximumSpeedRequest\x1a*.mavsdk.rpc.action.SetMaximumSpeedResponse\"\x00\x12\x88\x01\n\x19GetReturnToLaunchAltitude\x12\x33.mavsdk.rpc.action.GetReturnToLaunchAltitudeRequest\x1a\x34.mavsdk.rpc.action.GetReturnToLaunchAltitudeResponse\"\x00\x12\x88\x01\n\x19SetReturnToLaunchAltitude\x12\x33.mavsdk.rpc.action.SetReturnToLaunchAltitudeRequest\x1a\x34.mavsdk.rpc.action.SetReturnToLaunchAltitudeResponse\"\x00\x12j\n\x0fSetCurrentSpeed\x12).mavsdk.rpc.action.SetCurrentSpeedRequest\x1a*.mavsdk.rpc.action.SetCurrentSpeedResponse\"\x00\x42\x1f\n\x10io.mavsdk.actionB\x0b\x41\x63tionProtob\x06proto3') _ORBITYAWBEHAVIOR = DESCRIPTOR.enum_types_by_name['OrbitYawBehavior'] OrbitYawBehavior = enum_type_wrapper.EnumTypeWrapper(_ORBITYAWBEHAVIOR) @@ -399,8 +399,8 @@ _DOORBITREQUEST.fields_by_name['longitude_deg']._serialized_options = b'\202\265\030\003NaN' _DOORBITREQUEST.fields_by_name['absolute_altitude_m']._options = None _DOORBITREQUEST.fields_by_name['absolute_altitude_m']._serialized_options = b'\202\265\030\003NaN' - _ORBITYAWBEHAVIOR._serialized_start=3306 - _ORBITYAWBEHAVIOR._serialized_end=3549 + _ORBITYAWBEHAVIOR._serialized_start=3335 + _ORBITYAWBEHAVIOR._serialized_end=3578 _ARMREQUEST._serialized_start=64 _ARMREQUEST._serialized_end=76 _ARMRESPONSE._serialized_start=78 @@ -490,9 +490,9 @@ _SETCURRENTSPEEDRESPONSE._serialized_start=2723 _SETCURRENTSPEEDRESPONSE._serialized_end=2804 _ACTIONRESULT._serialized_start=2807 - _ACTIONRESULT._serialized_end=3303 + _ACTIONRESULT._serialized_end=3332 _ACTIONRESULT_RESULT._serialized_start=2900 - _ACTIONRESULT_RESULT._serialized_end=3303 - _ACTIONSERVICE._serialized_start=3552 - _ACTIONSERVICE._serialized_end=5766 + _ACTIONRESULT_RESULT._serialized_end=3332 + _ACTIONSERVICE._serialized_start=3581 + _ACTIONSERVICE._serialized_end=5795 # @@protoc_insertion_point(module_scope) diff --git a/mavsdk/action_pb2_grpc.py b/mavsdk/action_pb2_grpc.py index cbcd61ce..29364582 100644 --- a/mavsdk/action_pb2_grpc.py +++ b/mavsdk/action_pb2_grpc.py @@ -271,6 +271,8 @@ def Hold(self, request, context): def SetActuator(self, request, context): """ Send command to set the value of an actuator. + + Note that the index of the actuator starts at 1 and that the value goes from -1 to 1. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details('Method not implemented!') diff --git a/mavsdk/arm_authorizer_server.py b/mavsdk/arm_authorizer_server.py new file mode 100644 index 00000000..739dc73f --- /dev/null +++ b/mavsdk/arm_authorizer_server.py @@ -0,0 +1,313 @@ +# -*- coding: utf-8 -*- +# DO NOT EDIT! This file is auto-generated from +# https://github.com/mavlink/MAVSDK-Python/tree/main/other/templates/py +from ._base import AsyncBase +from . import arm_authorizer_server_pb2, arm_authorizer_server_pb2_grpc +from enum import Enum + + +class RejectionReason(Enum): + """ + + + Values + ------ + GENERIC + Not a specific reason + + NONE + Authorizer will send the error as string to GCS + + INVALID_WAYPOINT + At least one waypoint have a invalid value + + TIMEOUT + Timeout in the authorizer process(in case it depends on network) + + AIRSPACE_IN_USE + Airspace of the mission in use by another vehicle, second result parameter can have the waypoint id that caused it to be denied. + + BAD_WEATHER + Weather is not good to fly + + """ + + + GENERIC = 0 + NONE = 1 + INVALID_WAYPOINT = 2 + TIMEOUT = 3 + AIRSPACE_IN_USE = 4 + BAD_WEATHER = 5 + + def translate_to_rpc(self): + if self == RejectionReason.GENERIC: + return arm_authorizer_server_pb2.REJECTION_REASON_GENERIC + if self == RejectionReason.NONE: + return arm_authorizer_server_pb2.REJECTION_REASON_NONE + if self == RejectionReason.INVALID_WAYPOINT: + return arm_authorizer_server_pb2.REJECTION_REASON_INVALID_WAYPOINT + if self == RejectionReason.TIMEOUT: + return arm_authorizer_server_pb2.REJECTION_REASON_TIMEOUT + if self == RejectionReason.AIRSPACE_IN_USE: + return arm_authorizer_server_pb2.REJECTION_REASON_AIRSPACE_IN_USE + if self == RejectionReason.BAD_WEATHER: + return arm_authorizer_server_pb2.REJECTION_REASON_BAD_WEATHER + + @staticmethod + def translate_from_rpc(rpc_enum_value): + """ Parses a gRPC response """ + if rpc_enum_value == arm_authorizer_server_pb2.REJECTION_REASON_GENERIC: + return RejectionReason.GENERIC + if rpc_enum_value == arm_authorizer_server_pb2.REJECTION_REASON_NONE: + return RejectionReason.NONE + if rpc_enum_value == arm_authorizer_server_pb2.REJECTION_REASON_INVALID_WAYPOINT: + return RejectionReason.INVALID_WAYPOINT + if rpc_enum_value == arm_authorizer_server_pb2.REJECTION_REASON_TIMEOUT: + return RejectionReason.TIMEOUT + if rpc_enum_value == arm_authorizer_server_pb2.REJECTION_REASON_AIRSPACE_IN_USE: + return RejectionReason.AIRSPACE_IN_USE + if rpc_enum_value == arm_authorizer_server_pb2.REJECTION_REASON_BAD_WEATHER: + return RejectionReason.BAD_WEATHER + + def __str__(self): + return self.name + + +class ArmAuthorizerServerResult: + """ + + + Parameters + ---------- + result : Result + Result enum value + + result_str : std::string + Human-readable English string describing the result + + """ + + + + class Result(Enum): + """ + + + Values + ------ + UNKNOWN + Unknown result + + SUCCESS + Command accepted + + FAILED + Command failed + + """ + + + UNKNOWN = 0 + SUCCESS = 1 + FAILED = 2 + + def translate_to_rpc(self): + if self == ArmAuthorizerServerResult.Result.UNKNOWN: + return arm_authorizer_server_pb2.ArmAuthorizerServerResult.RESULT_UNKNOWN + if self == ArmAuthorizerServerResult.Result.SUCCESS: + return arm_authorizer_server_pb2.ArmAuthorizerServerResult.RESULT_SUCCESS + if self == ArmAuthorizerServerResult.Result.FAILED: + return arm_authorizer_server_pb2.ArmAuthorizerServerResult.RESULT_FAILED + + @staticmethod + def translate_from_rpc(rpc_enum_value): + """ Parses a gRPC response """ + if rpc_enum_value == arm_authorizer_server_pb2.ArmAuthorizerServerResult.RESULT_UNKNOWN: + return ArmAuthorizerServerResult.Result.UNKNOWN + if rpc_enum_value == arm_authorizer_server_pb2.ArmAuthorizerServerResult.RESULT_SUCCESS: + return ArmAuthorizerServerResult.Result.SUCCESS + if rpc_enum_value == arm_authorizer_server_pb2.ArmAuthorizerServerResult.RESULT_FAILED: + return ArmAuthorizerServerResult.Result.FAILED + + def __str__(self): + return self.name + + + def __init__( + self, + result, + result_str): + """ Initializes the ArmAuthorizerServerResult object """ + self.result = result + self.result_str = result_str + + def __eq__(self, to_compare): + """ Checks if two ArmAuthorizerServerResult are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # ArmAuthorizerServerResult object + return \ + (self.result == to_compare.result) and \ + (self.result_str == to_compare.result_str) + + except AttributeError: + return False + + def __str__(self): + """ ArmAuthorizerServerResult in string representation """ + struct_repr = ", ".join([ + "result: " + str(self.result), + "result_str: " + str(self.result_str) + ]) + + return f"ArmAuthorizerServerResult: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcArmAuthorizerServerResult): + """ Translates a gRPC struct to the SDK equivalent """ + return ArmAuthorizerServerResult( + + ArmAuthorizerServerResult.Result.translate_from_rpc(rpcArmAuthorizerServerResult.result), + + + rpcArmAuthorizerServerResult.result_str + ) + + def translate_to_rpc(self, rpcArmAuthorizerServerResult): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcArmAuthorizerServerResult.result = self.result.translate_to_rpc() + + + + + + rpcArmAuthorizerServerResult.result_str = self.result_str + + + + + + +class ArmAuthorizerServerError(Exception): + """ Raised when a ArmAuthorizerServerResult is a fail code """ + + def __init__(self, result, origin, *params): + self._result = result + self._origin = origin + self._params = params + + def __str__(self): + return f"{self._result.result}: '{self._result.result_str}'; origin: {self._origin}; params: {self._params}" + + +class ArmAuthorizerServer(AsyncBase): + """ + + + Generated by dcsdkgen - MAVSDK ArmAuthorizerServer API + """ + + # Plugin name + name = "ArmAuthorizerServer" + + def _setup_stub(self, channel): + """ Setups the api stub """ + self._stub = arm_authorizer_server_pb2_grpc.ArmAuthorizerServerServiceStub(channel) + + + def _extract_result(self, response): + """ Returns the response status and description """ + return ArmAuthorizerServerResult.translate_from_rpc(response.arm_authorizer_server_result) + + + async def arm_authorization(self): + """ + Subscribe to arm authorization request messages. Each request received should respond to using RespondArmAuthorization + + Yields + ------- + system_id : uint32_t + vehicle system id + + + """ + + request = arm_authorizer_server_pb2.SubscribeArmAuthorizationRequest() + arm_authorization_stream = self._stub.SubscribeArmAuthorization(request) + + try: + async for response in arm_authorization_stream: + + + + yield response.system_id + finally: + arm_authorization_stream.cancel() + + async def accept_arm_authorization(self, valid_time_s): + """ + Authorize arm for the specific time + + Parameters + ---------- + valid_time_s : int32_t + Time in seconds for which this authorization is valid + + Raises + ------ + ArmAuthorizerServerError + If the request fails. The error contains the reason for the failure. + """ + + request = arm_authorizer_server_pb2.AcceptArmAuthorizationRequest() + request.valid_time_s = valid_time_s + response = await self._stub.AcceptArmAuthorization(request) + + + result = self._extract_result(response) + + if result.result != ArmAuthorizerServerResult.Result.SUCCESS: + raise ArmAuthorizerServerError(result, "accept_arm_authorization()", valid_time_s) + + + async def reject_arm_authorization(self, temporarily, reason, extra_info): + """ + Reject arm authorization request + + Parameters + ---------- + temporarily : bool + True if the answer should be TEMPORARILY_REJECTED, false for DENIED + + reason : RejectionReason + Reason for the arm to be rejected + + extra_info : int32_t + Extra information specific to the rejection reason (see https://mavlink.io/en/services/arm_authorization.html) + + Raises + ------ + ArmAuthorizerServerError + If the request fails. The error contains the reason for the failure. + """ + + request = arm_authorizer_server_pb2.RejectArmAuthorizationRequest() + request.temporarily = temporarily + + request.reason = reason.translate_to_rpc() + + + request.extra_info = extra_info + response = await self._stub.RejectArmAuthorization(request) + + + result = self._extract_result(response) + + if result.result != ArmAuthorizerServerResult.Result.SUCCESS: + raise ArmAuthorizerServerError(result, "reject_arm_authorization()", temporarily, reason, extra_info) + \ No newline at end of file diff --git a/mavsdk/arm_authorizer_server_pb2.py b/mavsdk/arm_authorizer_server_pb2.py new file mode 100644 index 00000000..db9f9799 --- /dev/null +++ b/mavsdk/arm_authorizer_server_pb2.py @@ -0,0 +1,119 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: arm_authorizer_server/arm_authorizer_server.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import mavsdk_options_pb2 as mavsdk__options__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n1arm_authorizer_server/arm_authorizer_server.proto\x12 mavsdk.rpc.arm_authorizer_server\x1a\x14mavsdk_options.proto\"\"\n SubscribeArmAuthorizationRequest\"-\n\x18\x41rmAuthorizationResponse\x12\x11\n\tsystem_id\x18\x01 \x01(\r\"5\n\x1d\x41\x63\x63\x65ptArmAuthorizationRequest\x12\x14\n\x0cvalid_time_s\x18\x01 \x01(\x05\"\x83\x01\n\x1e\x41\x63\x63\x65ptArmAuthorizationResponse\x12\x61\n\x1c\x61rm_authorizer_server_result\x18\x01 \x01(\x0b\x32;.mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerResult\"\x8b\x01\n\x1dRejectArmAuthorizationRequest\x12\x13\n\x0btemporarily\x18\x01 \x01(\x08\x12\x41\n\x06reason\x18\x02 \x01(\x0e\x32\x31.mavsdk.rpc.arm_authorizer_server.RejectionReason\x12\x12\n\nextra_info\x18\x03 \x01(\x05\"\x83\x01\n\x1eRejectArmAuthorizationResponse\x12\x61\n\x1c\x61rm_authorizer_server_result\x18\x01 \x01(\x0b\x32;.mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerResult\"\xc8\x01\n\x19\x41rmAuthorizerServerResult\x12R\n\x06result\x18\x01 \x01(\x0e\x32\x42.mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"C\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x11\n\rRESULT_FAILED\x10\x02*\xd7\x01\n\x0fRejectionReason\x12\x1c\n\x18REJECTION_REASON_GENERIC\x10\x00\x12\x19\n\x15REJECTION_REASON_NONE\x10\x01\x12%\n!REJECTION_REASON_INVALID_WAYPOINT\x10\x02\x12\x1c\n\x18REJECTION_REASON_TIMEOUT\x10\x03\x12$\n REJECTION_REASON_AIRSPACE_IN_USE\x10\x04\x12 \n\x1cREJECTION_REASON_BAD_WEATHER\x10\x05\x32\x8a\x04\n\x1a\x41rmAuthorizerServerService\x12\xa3\x01\n\x19SubscribeArmAuthorization\x12\x42.mavsdk.rpc.arm_authorizer_server.SubscribeArmAuthorizationRequest\x1a:.mavsdk.rpc.arm_authorizer_server.ArmAuthorizationResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\xa1\x01\n\x16\x41\x63\x63\x65ptArmAuthorization\x12?.mavsdk.rpc.arm_authorizer_server.AcceptArmAuthorizationRequest\x1a@.mavsdk.rpc.arm_authorizer_server.AcceptArmAuthorizationResponse\"\x04\x80\xb5\x18\x01\x12\xa1\x01\n\x16RejectArmAuthorization\x12?.mavsdk.rpc.arm_authorizer_server.RejectArmAuthorizationRequest\x1a@.mavsdk.rpc.arm_authorizer_server.RejectArmAuthorizationResponse\"\x04\x80\xb5\x18\x01\x42\x34\n\x18io.mavsdk.arm_authorizerB\x18\x41rmAuthorizerServerProtob\x06proto3') + +_REJECTIONREASON = DESCRIPTOR.enum_types_by_name['RejectionReason'] +RejectionReason = enum_type_wrapper.EnumTypeWrapper(_REJECTIONREASON) +REJECTION_REASON_GENERIC = 0 +REJECTION_REASON_NONE = 1 +REJECTION_REASON_INVALID_WAYPOINT = 2 +REJECTION_REASON_TIMEOUT = 3 +REJECTION_REASON_AIRSPACE_IN_USE = 4 +REJECTION_REASON_BAD_WEATHER = 5 + + +_SUBSCRIBEARMAUTHORIZATIONREQUEST = DESCRIPTOR.message_types_by_name['SubscribeArmAuthorizationRequest'] +_ARMAUTHORIZATIONRESPONSE = DESCRIPTOR.message_types_by_name['ArmAuthorizationResponse'] +_ACCEPTARMAUTHORIZATIONREQUEST = DESCRIPTOR.message_types_by_name['AcceptArmAuthorizationRequest'] +_ACCEPTARMAUTHORIZATIONRESPONSE = DESCRIPTOR.message_types_by_name['AcceptArmAuthorizationResponse'] +_REJECTARMAUTHORIZATIONREQUEST = DESCRIPTOR.message_types_by_name['RejectArmAuthorizationRequest'] +_REJECTARMAUTHORIZATIONRESPONSE = DESCRIPTOR.message_types_by_name['RejectArmAuthorizationResponse'] +_ARMAUTHORIZERSERVERRESULT = DESCRIPTOR.message_types_by_name['ArmAuthorizerServerResult'] +_ARMAUTHORIZERSERVERRESULT_RESULT = _ARMAUTHORIZERSERVERRESULT.enum_types_by_name['Result'] +SubscribeArmAuthorizationRequest = _reflection.GeneratedProtocolMessageType('SubscribeArmAuthorizationRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBEARMAUTHORIZATIONREQUEST, + '__module__' : 'arm_authorizer_server.arm_authorizer_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.arm_authorizer_server.SubscribeArmAuthorizationRequest) + }) +_sym_db.RegisterMessage(SubscribeArmAuthorizationRequest) + +ArmAuthorizationResponse = _reflection.GeneratedProtocolMessageType('ArmAuthorizationResponse', (_message.Message,), { + 'DESCRIPTOR' : _ARMAUTHORIZATIONRESPONSE, + '__module__' : 'arm_authorizer_server.arm_authorizer_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.arm_authorizer_server.ArmAuthorizationResponse) + }) +_sym_db.RegisterMessage(ArmAuthorizationResponse) + +AcceptArmAuthorizationRequest = _reflection.GeneratedProtocolMessageType('AcceptArmAuthorizationRequest', (_message.Message,), { + 'DESCRIPTOR' : _ACCEPTARMAUTHORIZATIONREQUEST, + '__module__' : 'arm_authorizer_server.arm_authorizer_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.arm_authorizer_server.AcceptArmAuthorizationRequest) + }) +_sym_db.RegisterMessage(AcceptArmAuthorizationRequest) + +AcceptArmAuthorizationResponse = _reflection.GeneratedProtocolMessageType('AcceptArmAuthorizationResponse', (_message.Message,), { + 'DESCRIPTOR' : _ACCEPTARMAUTHORIZATIONRESPONSE, + '__module__' : 'arm_authorizer_server.arm_authorizer_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.arm_authorizer_server.AcceptArmAuthorizationResponse) + }) +_sym_db.RegisterMessage(AcceptArmAuthorizationResponse) + +RejectArmAuthorizationRequest = _reflection.GeneratedProtocolMessageType('RejectArmAuthorizationRequest', (_message.Message,), { + 'DESCRIPTOR' : _REJECTARMAUTHORIZATIONREQUEST, + '__module__' : 'arm_authorizer_server.arm_authorizer_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.arm_authorizer_server.RejectArmAuthorizationRequest) + }) +_sym_db.RegisterMessage(RejectArmAuthorizationRequest) + +RejectArmAuthorizationResponse = _reflection.GeneratedProtocolMessageType('RejectArmAuthorizationResponse', (_message.Message,), { + 'DESCRIPTOR' : _REJECTARMAUTHORIZATIONRESPONSE, + '__module__' : 'arm_authorizer_server.arm_authorizer_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.arm_authorizer_server.RejectArmAuthorizationResponse) + }) +_sym_db.RegisterMessage(RejectArmAuthorizationResponse) + +ArmAuthorizerServerResult = _reflection.GeneratedProtocolMessageType('ArmAuthorizerServerResult', (_message.Message,), { + 'DESCRIPTOR' : _ARMAUTHORIZERSERVERRESULT, + '__module__' : 'arm_authorizer_server.arm_authorizer_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerResult) + }) +_sym_db.RegisterMessage(ArmAuthorizerServerResult) + +_ARMAUTHORIZERSERVERSERVICE = DESCRIPTOR.services_by_name['ArmAuthorizerServerService'] +if _descriptor._USE_C_DESCRIPTORS == False: + + DESCRIPTOR._options = None + DESCRIPTOR._serialized_options = b'\n\030io.mavsdk.arm_authorizerB\030ArmAuthorizerServerProto' + _ARMAUTHORIZERSERVERSERVICE.methods_by_name['SubscribeArmAuthorization']._options = None + _ARMAUTHORIZERSERVERSERVICE.methods_by_name['SubscribeArmAuthorization']._serialized_options = b'\200\265\030\000' + _ARMAUTHORIZERSERVERSERVICE.methods_by_name['AcceptArmAuthorization']._options = None + _ARMAUTHORIZERSERVERSERVICE.methods_by_name['AcceptArmAuthorization']._serialized_options = b'\200\265\030\001' + _ARMAUTHORIZERSERVERSERVICE.methods_by_name['RejectArmAuthorization']._options = None + _ARMAUTHORIZERSERVERSERVICE.methods_by_name['RejectArmAuthorization']._serialized_options = b'\200\265\030\001' + _REJECTIONREASON._serialized_start=861 + _REJECTIONREASON._serialized_end=1076 + _SUBSCRIBEARMAUTHORIZATIONREQUEST._serialized_start=109 + _SUBSCRIBEARMAUTHORIZATIONREQUEST._serialized_end=143 + _ARMAUTHORIZATIONRESPONSE._serialized_start=145 + _ARMAUTHORIZATIONRESPONSE._serialized_end=190 + _ACCEPTARMAUTHORIZATIONREQUEST._serialized_start=192 + _ACCEPTARMAUTHORIZATIONREQUEST._serialized_end=245 + _ACCEPTARMAUTHORIZATIONRESPONSE._serialized_start=248 + _ACCEPTARMAUTHORIZATIONRESPONSE._serialized_end=379 + _REJECTARMAUTHORIZATIONREQUEST._serialized_start=382 + _REJECTARMAUTHORIZATIONREQUEST._serialized_end=521 + _REJECTARMAUTHORIZATIONRESPONSE._serialized_start=524 + _REJECTARMAUTHORIZATIONRESPONSE._serialized_end=655 + _ARMAUTHORIZERSERVERRESULT._serialized_start=658 + _ARMAUTHORIZERSERVERRESULT._serialized_end=858 + _ARMAUTHORIZERSERVERRESULT_RESULT._serialized_start=791 + _ARMAUTHORIZERSERVERRESULT_RESULT._serialized_end=858 + _ARMAUTHORIZERSERVERSERVICE._serialized_start=1079 + _ARMAUTHORIZERSERVERSERVICE._serialized_end=1601 +# @@protoc_insertion_point(module_scope) diff --git a/mavsdk/arm_authorizer_server_pb2_grpc.py b/mavsdk/arm_authorizer_server_pb2_grpc.py new file mode 100644 index 00000000..4ec555f9 --- /dev/null +++ b/mavsdk/arm_authorizer_server_pb2_grpc.py @@ -0,0 +1,135 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from . import arm_authorizer_server_pb2 as arm__authorizer__server_dot_arm__authorizer__server__pb2 + + +class ArmAuthorizerServerServiceStub(object): + """Missing associated documentation comment in .proto file.""" + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.SubscribeArmAuthorization = channel.unary_stream( + '/mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerService/SubscribeArmAuthorization', + request_serializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.SubscribeArmAuthorizationRequest.SerializeToString, + response_deserializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.ArmAuthorizationResponse.FromString, + ) + self.AcceptArmAuthorization = channel.unary_unary( + '/mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerService/AcceptArmAuthorization', + request_serializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.AcceptArmAuthorizationRequest.SerializeToString, + response_deserializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.AcceptArmAuthorizationResponse.FromString, + ) + self.RejectArmAuthorization = channel.unary_unary( + '/mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerService/RejectArmAuthorization', + request_serializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.RejectArmAuthorizationRequest.SerializeToString, + response_deserializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.RejectArmAuthorizationResponse.FromString, + ) + + +class ArmAuthorizerServerServiceServicer(object): + """Missing associated documentation comment in .proto file.""" + + def SubscribeArmAuthorization(self, request, context): + """Subscribe to arm authorization request messages. Each request received should respond to using RespondArmAuthorization + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def AcceptArmAuthorization(self, request, context): + """Authorize arm for the specific time + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def RejectArmAuthorization(self, request, context): + """Reject arm authorization request + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_ArmAuthorizerServerServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'SubscribeArmAuthorization': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeArmAuthorization, + request_deserializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.SubscribeArmAuthorizationRequest.FromString, + response_serializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.ArmAuthorizationResponse.SerializeToString, + ), + 'AcceptArmAuthorization': grpc.unary_unary_rpc_method_handler( + servicer.AcceptArmAuthorization, + request_deserializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.AcceptArmAuthorizationRequest.FromString, + response_serializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.AcceptArmAuthorizationResponse.SerializeToString, + ), + 'RejectArmAuthorization': grpc.unary_unary_rpc_method_handler( + servicer.RejectArmAuthorization, + request_deserializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.RejectArmAuthorizationRequest.FromString, + response_serializer=arm__authorizer__server_dot_arm__authorizer__server__pb2.RejectArmAuthorizationResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class ArmAuthorizerServerService(object): + """Missing associated documentation comment in .proto file.""" + + @staticmethod + def SubscribeArmAuthorization(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerService/SubscribeArmAuthorization', + arm__authorizer__server_dot_arm__authorizer__server__pb2.SubscribeArmAuthorizationRequest.SerializeToString, + arm__authorizer__server_dot_arm__authorizer__server__pb2.ArmAuthorizationResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def AcceptArmAuthorization(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerService/AcceptArmAuthorization', + arm__authorizer__server_dot_arm__authorizer__server__pb2.AcceptArmAuthorizationRequest.SerializeToString, + arm__authorizer__server_dot_arm__authorizer__server__pb2.AcceptArmAuthorizationResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def RejectArmAuthorization(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.arm_authorizer_server.ArmAuthorizerServerService/RejectArmAuthorization', + arm__authorizer__server_dot_arm__authorizer__server__pb2.RejectArmAuthorizationRequest.SerializeToString, + arm__authorizer__server_dot_arm__authorizer__server__pb2.RejectArmAuthorizationResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/mavsdk/camera_server.py b/mavsdk/camera_server.py index 999680d2..03794bb3 100644 --- a/mavsdk/camera_server.py +++ b/mavsdk/camera_server.py @@ -1433,6 +1433,202 @@ def translate_to_rpc(self, rpcCaptureStatus): +class TrackPoint: + """ + Point description type + + Parameters + ---------- + point_x : float + Point to track x value (normalized 0..1, 0 is left, 1 is right). + + point_y : float + Point to track y value (normalized 0..1, 0 is top, 1 is bottom). + + radius : float + Point to track y value (normalized 0..1, 0 is top, 1 is bottom). + + """ + + + + def __init__( + self, + point_x, + point_y, + radius): + """ Initializes the TrackPoint object """ + self.point_x = point_x + self.point_y = point_y + self.radius = radius + + def __eq__(self, to_compare): + """ Checks if two TrackPoint are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # TrackPoint object + return \ + (self.point_x == to_compare.point_x) and \ + (self.point_y == to_compare.point_y) and \ + (self.radius == to_compare.radius) + + except AttributeError: + return False + + def __str__(self): + """ TrackPoint in string representation """ + struct_repr = ", ".join([ + "point_x: " + str(self.point_x), + "point_y: " + str(self.point_y), + "radius: " + str(self.radius) + ]) + + return f"TrackPoint: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcTrackPoint): + """ Translates a gRPC struct to the SDK equivalent """ + return TrackPoint( + + rpcTrackPoint.point_x, + + + rpcTrackPoint.point_y, + + + rpcTrackPoint.radius + ) + + def translate_to_rpc(self, rpcTrackPoint): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcTrackPoint.point_x = self.point_x + + + + + + rpcTrackPoint.point_y = self.point_y + + + + + + rpcTrackPoint.radius = self.radius + + + + + +class TrackRectangle: + """ + Rectangle description type + + Parameters + ---------- + top_left_corner_x : float + Top left corner of rectangle x value (normalized 0..1, 0 is left, 1 is right). + + top_left_corner_y : float + Top left corner of rectangle y value (normalized 0..1, 0 is top, 1 is bottom). + + bottom_right_corner_x : float + Bottom right corner of rectangle x value (normalized 0..1, 0 is left, 1 is right). + + bottom_right_corner_y : float + Bottom right corner of rectangle y value (normalized 0..1, 0 is top, 1 is bottom). + + """ + + + + def __init__( + self, + top_left_corner_x, + top_left_corner_y, + bottom_right_corner_x, + bottom_right_corner_y): + """ Initializes the TrackRectangle object """ + self.top_left_corner_x = top_left_corner_x + self.top_left_corner_y = top_left_corner_y + self.bottom_right_corner_x = bottom_right_corner_x + self.bottom_right_corner_y = bottom_right_corner_y + + def __eq__(self, to_compare): + """ Checks if two TrackRectangle are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # TrackRectangle object + return \ + (self.top_left_corner_x == to_compare.top_left_corner_x) and \ + (self.top_left_corner_y == to_compare.top_left_corner_y) and \ + (self.bottom_right_corner_x == to_compare.bottom_right_corner_x) and \ + (self.bottom_right_corner_y == to_compare.bottom_right_corner_y) + + except AttributeError: + return False + + def __str__(self): + """ TrackRectangle in string representation """ + struct_repr = ", ".join([ + "top_left_corner_x: " + str(self.top_left_corner_x), + "top_left_corner_y: " + str(self.top_left_corner_y), + "bottom_right_corner_x: " + str(self.bottom_right_corner_x), + "bottom_right_corner_y: " + str(self.bottom_right_corner_y) + ]) + + return f"TrackRectangle: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcTrackRectangle): + """ Translates a gRPC struct to the SDK equivalent """ + return TrackRectangle( + + rpcTrackRectangle.top_left_corner_x, + + + rpcTrackRectangle.top_left_corner_y, + + + rpcTrackRectangle.bottom_right_corner_x, + + + rpcTrackRectangle.bottom_right_corner_y + ) + + def translate_to_rpc(self, rpcTrackRectangle): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcTrackRectangle.top_left_corner_x = self.top_left_corner_x + + + + + + rpcTrackRectangle.top_left_corner_y = self.top_left_corner_y + + + + + + rpcTrackRectangle.bottom_right_corner_x = self.bottom_right_corner_x + + + + + + rpcTrackRectangle.bottom_right_corner_y = self.bottom_right_corner_y + + + + + class CameraServerError(Exception): """ Raised when a CameraServerResult is a fail code """ @@ -1448,7 +1644,7 @@ def __str__(self): class CameraServer(AsyncBase): """ - Provides handling of camera trigger commands. + Provides handling of camera interface Generated by dcsdkgen - MAVSDK CameraServer API """ @@ -2308,4 +2504,196 @@ async def respond_zoom_range(self, zoom_range_feedback): if result.result != CameraServerResult.Result.SUCCESS: raise CameraServerError(result, "respond_zoom_range()", zoom_range_feedback) + + + async def set_tracking_rectangle_status(self, tracked_rectangle): + """ + Set/update the current rectangle tracking status. + + Parameters + ---------- + tracked_rectangle : TrackRectangle + The tracked rectangle + + + """ + + request = camera_server_pb2.SetTrackingRectangleStatusRequest() + + tracked_rectangle.translate_to_rpc(request.tracked_rectangle) + + + response = await self._stub.SetTrackingRectangleStatus(request) + + + + async def set_tracking_off_status(self): + """ + Set the current tracking status to off. + + + """ + + request = camera_server_pb2.SetTrackingOffStatusRequest() + response = await self._stub.SetTrackingOffStatus(request) + + + + async def tracking_point_command(self): + """ + Subscribe to incoming tracking point command. + + Yields + ------- + track_point : TrackPoint + The point to track if a point is to be tracked + + + """ + + request = camera_server_pb2.SubscribeTrackingPointCommandRequest() + tracking_point_command_stream = self._stub.SubscribeTrackingPointCommand(request) + + try: + async for response in tracking_point_command_stream: + + + + yield TrackPoint.translate_from_rpc(response.track_point) + finally: + tracking_point_command_stream.cancel() + + async def tracking_rectangle_command(self): + """ + Subscribe to incoming tracking rectangle command. + + Yields + ------- + track_rectangle : TrackRectangle + The point to track if a point is to be tracked + + + """ + + request = camera_server_pb2.SubscribeTrackingRectangleCommandRequest() + tracking_rectangle_command_stream = self._stub.SubscribeTrackingRectangleCommand(request) + + try: + async for response in tracking_rectangle_command_stream: + + + + yield TrackRectangle.translate_from_rpc(response.track_rectangle) + finally: + tracking_rectangle_command_stream.cancel() + + async def tracking_off_command(self): + """ + Subscribe to incoming tracking off command. + + Yields + ------- + dummy : int32_t + Unused + + + """ + + request = camera_server_pb2.SubscribeTrackingOffCommandRequest() + tracking_off_command_stream = self._stub.SubscribeTrackingOffCommand(request) + + try: + async for response in tracking_off_command_stream: + + + + yield response.dummy + finally: + tracking_off_command_stream.cancel() + + async def respond_tracking_point_command(self, stop_video_feedback): + """ + Respond to an incoming tracking point command. + + Parameters + ---------- + stop_video_feedback : CameraFeedback + the feedback + + Raises + ------ + CameraServerError + If the request fails. The error contains the reason for the failure. + """ + + request = camera_server_pb2.RespondTrackingPointCommandRequest() + + request.stop_video_feedback = stop_video_feedback.translate_to_rpc() + + + response = await self._stub.RespondTrackingPointCommand(request) + + + result = self._extract_result(response) + + if result.result != CameraServerResult.Result.SUCCESS: + raise CameraServerError(result, "respond_tracking_point_command()", stop_video_feedback) + + + async def respond_tracking_rectangle_command(self, stop_video_feedback): + """ + Respond to an incoming tracking rectangle command. + + Parameters + ---------- + stop_video_feedback : CameraFeedback + the feedback + + Raises + ------ + CameraServerError + If the request fails. The error contains the reason for the failure. + """ + + request = camera_server_pb2.RespondTrackingRectangleCommandRequest() + + request.stop_video_feedback = stop_video_feedback.translate_to_rpc() + + + response = await self._stub.RespondTrackingRectangleCommand(request) + + + result = self._extract_result(response) + + if result.result != CameraServerResult.Result.SUCCESS: + raise CameraServerError(result, "respond_tracking_rectangle_command()", stop_video_feedback) + + + async def respond_tracking_off_command(self, stop_video_feedback): + """ + Respond to an incoming tracking off command. + + Parameters + ---------- + stop_video_feedback : CameraFeedback + the feedback + + Raises + ------ + CameraServerError + If the request fails. The error contains the reason for the failure. + """ + + request = camera_server_pb2.RespondTrackingOffCommandRequest() + + request.stop_video_feedback = stop_video_feedback.translate_to_rpc() + + + response = await self._stub.RespondTrackingOffCommand(request) + + + result = self._extract_result(response) + + if result.result != CameraServerResult.Result.SUCCESS: + raise CameraServerError(result, "respond_tracking_off_command()", stop_video_feedback) \ No newline at end of file diff --git a/mavsdk/camera_server_pb2.py b/mavsdk/camera_server_pb2.py index e304b504..08646a8f 100644 --- a/mavsdk/camera_server_pb2.py +++ b/mavsdk/camera_server_pb2.py @@ -16,7 +16,7 @@ from . import mavsdk_options_pb2 as mavsdk__options__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!camera_server/camera_server.proto\x12\x18mavsdk.rpc.camera_server\x1a\x14mavsdk_options.proto\"S\n\x15SetInformationRequest\x12:\n\x0binformation\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.camera_server.Information\"d\n\x16SetInformationResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"]\n\x18SetVideoStreamingRequest\x12\x41\n\x0fvideo_streaming\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.camera_server.VideoStreaming\"g\n\x19SetVideoStreamingResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"+\n\x14SetInProgressRequest\x12\x13\n\x0bin_progress\x18\x01 \x01(\x08\"c\n\x15SetInProgressResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1b\n\x19SubscribeTakePhotoRequest\"\"\n\x11TakePhotoResponse\x12\r\n\x05index\x18\x01 \x01(\x05\"\x9d\x01\n\x17RespondTakePhotoRequest\x12\x45\n\x13take_photo_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\x12;\n\x0c\x63\x61pture_info\x18\x02 \x01(\x0b\x32%.mavsdk.rpc.camera_server.CaptureInfo\"f\n\x18RespondTakePhotoResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1c\n\x1aSubscribeStartVideoRequest\"\'\n\x12StartVideoResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"b\n\x18RespondStartVideoRequest\x12\x46\n\x14start_video_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"g\n\x19RespondStartVideoResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1b\n\x19SubscribeStopVideoRequest\"&\n\x11StopVideoResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"`\n\x17RespondStopVideoRequest\x12\x45\n\x13stop_video_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"f\n\x18RespondStopVideoResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"%\n#SubscribeStartVideoStreamingRequest\"0\n\x1bStartVideoStreamingResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"u\n!RespondStartVideoStreamingRequest\x12P\n\x1estart_video_streaming_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"p\n\"RespondStartVideoStreamingResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"$\n\"SubscribeStopVideoStreamingRequest\"/\n\x1aStopVideoStreamingResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"s\n RespondStopVideoStreamingRequest\x12O\n\x1dstop_video_streaming_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"o\n!RespondStopVideoStreamingResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x19\n\x17SubscribeSetModeRequest\"?\n\x0fSetModeResponse\x12,\n\x04mode\x18\x01 \x01(\x0e\x32\x1e.mavsdk.rpc.camera_server.Mode\"\\\n\x15RespondSetModeRequest\x12\x43\n\x11set_mode_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"d\n\x16RespondSetModeResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"$\n\"SubscribeStorageInformationRequest\"0\n\x1aStorageInformationResponse\x12\x12\n\nstorage_id\x18\x01 \x01(\x05\"\xbd\x01\n RespondStorageInformationRequest\x12N\n\x1cstorage_information_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\x12I\n\x13storage_information\x18\x02 \x01(\x0b\x32,.mavsdk.rpc.camera_server.StorageInformation\"o\n!RespondStorageInformationResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1f\n\x1dSubscribeCaptureStatusRequest\")\n\x15\x43\x61ptureStatusResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"\xa9\x01\n\x1bRespondCaptureStatusRequest\x12I\n\x17\x63\x61pture_status_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\x12?\n\x0e\x63\x61pture_status\x18\x02 \x01(\x0b\x32\'.mavsdk.rpc.camera_server.CaptureStatus\"j\n\x1cRespondCaptureStatusResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1f\n\x1dSubscribeFormatStorageRequest\"+\n\x15\x46ormatStorageResponse\x12\x12\n\nstorage_id\x18\x01 \x01(\x05\"h\n\x1bRespondFormatStorageRequest\x12I\n\x17\x66ormat_storage_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"j\n\x1cRespondFormatStorageResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1f\n\x1dSubscribeResetSettingsRequest\")\n\x15ResetSettingsResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"h\n\x1bRespondResetSettingsRequest\x12I\n\x17reset_settings_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"j\n\x1cRespondResetSettingsResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1d\n\x1bSubscribeZoomInStartRequest\"\'\n\x13ZoomInStartResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"e\n\x19RespondZoomInStartRequest\x12H\n\x16zoom_in_start_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"h\n\x1aRespondZoomInStartResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1e\n\x1cSubscribeZoomOutStartRequest\"(\n\x14ZoomOutStartResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"g\n\x1aRespondZoomOutStartRequest\x12I\n\x17zoom_out_start_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"i\n\x1bRespondZoomOutStartResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1a\n\x18SubscribeZoomStopRequest\"$\n\x10ZoomStopResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"^\n\x16RespondZoomStopRequest\x12\x44\n\x12zoom_stop_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"e\n\x17RespondZoomStopResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1b\n\x19SubscribeZoomRangeRequest\"#\n\x11ZoomRangeResponse\x12\x0e\n\x06\x66\x61\x63tor\x18\x01 \x01(\x02\"`\n\x17RespondZoomRangeRequest\x12\x45\n\x13zoom_range_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"f\n\x18RespondZoomRangeResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\xbe\x02\n\x0bInformation\x12\x13\n\x0bvendor_name\x18\x01 \x01(\t\x12\x12\n\nmodel_name\x18\x02 \x01(\t\x12\x18\n\x10\x66irmware_version\x18\x03 \x01(\t\x12\x17\n\x0f\x66ocal_length_mm\x18\x04 \x01(\x02\x12!\n\x19horizontal_sensor_size_mm\x18\x05 \x01(\x02\x12\x1f\n\x17vertical_sensor_size_mm\x18\x06 \x01(\x02\x12 \n\x18horizontal_resolution_px\x18\x07 \x01(\r\x12\x1e\n\x16vertical_resolution_px\x18\x08 \x01(\r\x12\x0f\n\x07lens_id\x18\t \x01(\r\x12\x1f\n\x17\x64\x65\x66inition_file_version\x18\n \x01(\r\x12\x1b\n\x13\x64\x65\x66inition_file_uri\x18\x0b \x01(\t\";\n\x0eVideoStreaming\x12\x17\n\x0fhas_rtsp_server\x18\x01 \x01(\x08\x12\x10\n\x08rtsp_uri\x18\x02 \x01(\t\"q\n\x08Position\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x12\x1b\n\x13relative_altitude_m\x18\x04 \x01(\x02\"8\n\nQuaternion\x12\t\n\x01w\x18\x01 \x01(\x02\x12\t\n\x01x\x18\x02 \x01(\x02\x12\t\n\x01y\x18\x03 \x01(\x02\x12\t\n\x01z\x18\x04 \x01(\x02\"\xd0\x01\n\x0b\x43\x61ptureInfo\x12\x34\n\x08position\x18\x01 \x01(\x0b\x32\".mavsdk.rpc.camera_server.Position\x12\x41\n\x13\x61ttitude_quaternion\x18\x02 \x01(\x0b\x32$.mavsdk.rpc.camera_server.Quaternion\x12\x13\n\x0btime_utc_us\x18\x03 \x01(\x04\x12\x12\n\nis_success\x18\x04 \x01(\x08\x12\r\n\x05index\x18\x05 \x01(\x05\x12\x10\n\x08\x66ile_url\x18\x06 \x01(\t\"\xb3\x02\n\x12\x43\x61meraServerResult\x12\x43\n\x06result\x18\x01 \x01(\x0e\x32\x33.mavsdk.rpc.camera_server.CameraServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xc3\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x16\n\x12RESULT_IN_PROGRESS\x10\x02\x12\x0f\n\x0bRESULT_BUSY\x10\x03\x12\x11\n\rRESULT_DENIED\x10\x04\x12\x10\n\x0cRESULT_ERROR\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x19\n\x15RESULT_WRONG_ARGUMENT\x10\x07\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x08\"\x8c\x05\n\x12StorageInformation\x12\x18\n\x10used_storage_mib\x18\x01 \x01(\x02\x12\x1d\n\x15\x61vailable_storage_mib\x18\x02 \x01(\x02\x12\x19\n\x11total_storage_mib\x18\x03 \x01(\x02\x12R\n\x0estorage_status\x18\x04 \x01(\x0e\x32:.mavsdk.rpc.camera_server.StorageInformation.StorageStatus\x12\x12\n\nstorage_id\x18\x05 \x01(\r\x12N\n\x0cstorage_type\x18\x06 \x01(\x0e\x32\x38.mavsdk.rpc.camera_server.StorageInformation.StorageType\x12\x18\n\x10read_speed_mib_s\x18\x07 \x01(\x02\x12\x19\n\x11write_speed_mib_s\x18\x08 \x01(\x02\"\x91\x01\n\rStorageStatus\x12 \n\x1cSTORAGE_STATUS_NOT_AVAILABLE\x10\x00\x12\x1e\n\x1aSTORAGE_STATUS_UNFORMATTED\x10\x01\x12\x1c\n\x18STORAGE_STATUS_FORMATTED\x10\x02\x12 \n\x1cSTORAGE_STATUS_NOT_SUPPORTED\x10\x03\"\xa0\x01\n\x0bStorageType\x12\x18\n\x14STORAGE_TYPE_UNKNOWN\x10\x00\x12\x1a\n\x16STORAGE_TYPE_USB_STICK\x10\x01\x12\x13\n\x0fSTORAGE_TYPE_SD\x10\x02\x12\x18\n\x14STORAGE_TYPE_MICROSD\x10\x03\x12\x13\n\x0fSTORAGE_TYPE_HD\x10\x07\x12\x17\n\x12STORAGE_TYPE_OTHER\x10\xfe\x01\"\xee\x03\n\rCaptureStatus\x12\x18\n\x10image_interval_s\x18\x01 \x01(\x02\x12\x18\n\x10recording_time_s\x18\x02 \x01(\x02\x12\x1e\n\x16\x61vailable_capacity_mib\x18\x03 \x01(\x02\x12I\n\x0cimage_status\x18\x04 \x01(\x0e\x32\x33.mavsdk.rpc.camera_server.CaptureStatus.ImageStatus\x12I\n\x0cvideo_status\x18\x05 \x01(\x0e\x32\x33.mavsdk.rpc.camera_server.CaptureStatus.VideoStatus\x12\x13\n\x0bimage_count\x18\x06 \x01(\x05\"\x91\x01\n\x0bImageStatus\x12\x15\n\x11IMAGE_STATUS_IDLE\x10\x00\x12$\n IMAGE_STATUS_CAPTURE_IN_PROGRESS\x10\x01\x12\x1e\n\x1aIMAGE_STATUS_INTERVAL_IDLE\x10\x02\x12%\n!IMAGE_STATUS_INTERVAL_IN_PROGRESS\x10\x03\"J\n\x0bVideoStatus\x12\x15\n\x11VIDEO_STATUS_IDLE\x10\x00\x12$\n VIDEO_STATUS_CAPTURE_IN_PROGRESS\x10\x01*{\n\x0e\x43\x61meraFeedback\x12\x1b\n\x17\x43\x41MERA_FEEDBACK_UNKNOWN\x10\x00\x12\x16\n\x12\x43\x41MERA_FEEDBACK_OK\x10\x01\x12\x18\n\x14\x43\x41MERA_FEEDBACK_BUSY\x10\x02\x12\x1a\n\x16\x43\x41MERA_FEEDBACK_FAILED\x10\x03*8\n\x04Mode\x12\x10\n\x0cMODE_UNKNOWN\x10\x00\x12\x0e\n\nMODE_PHOTO\x10\x01\x12\x0e\n\nMODE_VIDEO\x10\x02\x32\xaf!\n\x13\x43\x61meraServerService\x12y\n\x0eSetInformation\x12/.mavsdk.rpc.camera_server.SetInformationRequest\x1a\x30.mavsdk.rpc.camera_server.SetInformationResponse\"\x04\x80\xb5\x18\x01\x12\x82\x01\n\x11SetVideoStreaming\x12\x32.mavsdk.rpc.camera_server.SetVideoStreamingRequest\x1a\x33.mavsdk.rpc.camera_server.SetVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12v\n\rSetInProgress\x12..mavsdk.rpc.camera_server.SetInProgressRequest\x1a/.mavsdk.rpc.camera_server.SetInProgressResponse\"\x04\x80\xb5\x18\x01\x12~\n\x12SubscribeTakePhoto\x12\x33.mavsdk.rpc.camera_server.SubscribeTakePhotoRequest\x1a+.mavsdk.rpc.camera_server.TakePhotoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x7f\n\x10RespondTakePhoto\x12\x31.mavsdk.rpc.camera_server.RespondTakePhotoRequest\x1a\x32.mavsdk.rpc.camera_server.RespondTakePhotoResponse\"\x04\x80\xb5\x18\x01\x12\x81\x01\n\x13SubscribeStartVideo\x12\x34.mavsdk.rpc.camera_server.SubscribeStartVideoRequest\x1a,.mavsdk.rpc.camera_server.StartVideoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x82\x01\n\x11RespondStartVideo\x12\x32.mavsdk.rpc.camera_server.RespondStartVideoRequest\x1a\x33.mavsdk.rpc.camera_server.RespondStartVideoResponse\"\x04\x80\xb5\x18\x01\x12~\n\x12SubscribeStopVideo\x12\x33.mavsdk.rpc.camera_server.SubscribeStopVideoRequest\x1a+.mavsdk.rpc.camera_server.StopVideoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x7f\n\x10RespondStopVideo\x12\x31.mavsdk.rpc.camera_server.RespondStopVideoRequest\x1a\x32.mavsdk.rpc.camera_server.RespondStopVideoResponse\"\x04\x80\xb5\x18\x01\x12\x9c\x01\n\x1cSubscribeStartVideoStreaming\x12=.mavsdk.rpc.camera_server.SubscribeStartVideoStreamingRequest\x1a\x35.mavsdk.rpc.camera_server.StartVideoStreamingResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x9d\x01\n\x1aRespondStartVideoStreaming\x12;.mavsdk.rpc.camera_server.RespondStartVideoStreamingRequest\x1a<.mavsdk.rpc.camera_server.RespondStartVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12\x99\x01\n\x1bSubscribeStopVideoStreaming\x12<.mavsdk.rpc.camera_server.SubscribeStopVideoStreamingRequest\x1a\x34.mavsdk.rpc.camera_server.StopVideoStreamingResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x9a\x01\n\x19RespondStopVideoStreaming\x12:.mavsdk.rpc.camera_server.RespondStopVideoStreamingRequest\x1a;.mavsdk.rpc.camera_server.RespondStopVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12x\n\x10SubscribeSetMode\x12\x31.mavsdk.rpc.camera_server.SubscribeSetModeRequest\x1a).mavsdk.rpc.camera_server.SetModeResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12y\n\x0eRespondSetMode\x12/.mavsdk.rpc.camera_server.RespondSetModeRequest\x1a\x30.mavsdk.rpc.camera_server.RespondSetModeResponse\"\x04\x80\xb5\x18\x01\x12\x99\x01\n\x1bSubscribeStorageInformation\x12<.mavsdk.rpc.camera_server.SubscribeStorageInformationRequest\x1a\x34.mavsdk.rpc.camera_server.StorageInformationResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x9a\x01\n\x19RespondStorageInformation\x12:.mavsdk.rpc.camera_server.RespondStorageInformationRequest\x1a;.mavsdk.rpc.camera_server.RespondStorageInformationResponse\"\x04\x80\xb5\x18\x01\x12\x8a\x01\n\x16SubscribeCaptureStatus\x12\x37.mavsdk.rpc.camera_server.SubscribeCaptureStatusRequest\x1a/.mavsdk.rpc.camera_server.CaptureStatusResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x8b\x01\n\x14RespondCaptureStatus\x12\x35.mavsdk.rpc.camera_server.RespondCaptureStatusRequest\x1a\x36.mavsdk.rpc.camera_server.RespondCaptureStatusResponse\"\x04\x80\xb5\x18\x01\x12\x8a\x01\n\x16SubscribeFormatStorage\x12\x37.mavsdk.rpc.camera_server.SubscribeFormatStorageRequest\x1a/.mavsdk.rpc.camera_server.FormatStorageResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x8b\x01\n\x14RespondFormatStorage\x12\x35.mavsdk.rpc.camera_server.RespondFormatStorageRequest\x1a\x36.mavsdk.rpc.camera_server.RespondFormatStorageResponse\"\x04\x80\xb5\x18\x01\x12\x8a\x01\n\x16SubscribeResetSettings\x12\x37.mavsdk.rpc.camera_server.SubscribeResetSettingsRequest\x1a/.mavsdk.rpc.camera_server.ResetSettingsResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x8b\x01\n\x14RespondResetSettings\x12\x35.mavsdk.rpc.camera_server.RespondResetSettingsRequest\x1a\x36.mavsdk.rpc.camera_server.RespondResetSettingsResponse\"\x04\x80\xb5\x18\x01\x12\x84\x01\n\x14SubscribeZoomInStart\x12\x35.mavsdk.rpc.camera_server.SubscribeZoomInStartRequest\x1a-.mavsdk.rpc.camera_server.ZoomInStartResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x85\x01\n\x12RespondZoomInStart\x12\x33.mavsdk.rpc.camera_server.RespondZoomInStartRequest\x1a\x34.mavsdk.rpc.camera_server.RespondZoomInStartResponse\"\x04\x80\xb5\x18\x01\x12\x87\x01\n\x15SubscribeZoomOutStart\x12\x36.mavsdk.rpc.camera_server.SubscribeZoomOutStartRequest\x1a..mavsdk.rpc.camera_server.ZoomOutStartResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x88\x01\n\x13RespondZoomOutStart\x12\x34.mavsdk.rpc.camera_server.RespondZoomOutStartRequest\x1a\x35.mavsdk.rpc.camera_server.RespondZoomOutStartResponse\"\x04\x80\xb5\x18\x01\x12{\n\x11SubscribeZoomStop\x12\x32.mavsdk.rpc.camera_server.SubscribeZoomStopRequest\x1a*.mavsdk.rpc.camera_server.ZoomStopResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12|\n\x0fRespondZoomStop\x12\x30.mavsdk.rpc.camera_server.RespondZoomStopRequest\x1a\x31.mavsdk.rpc.camera_server.RespondZoomStopResponse\"\x04\x80\xb5\x18\x01\x12~\n\x12SubscribeZoomRange\x12\x33.mavsdk.rpc.camera_server.SubscribeZoomRangeRequest\x1a+.mavsdk.rpc.camera_server.ZoomRangeResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x7f\n\x10RespondZoomRange\x12\x31.mavsdk.rpc.camera_server.RespondZoomRangeRequest\x1a\x32.mavsdk.rpc.camera_server.RespondZoomRangeResponse\"\x04\x80\xb5\x18\x01\x42,\n\x17io.mavsdk.camera_serverB\x11\x43\x61meraServerProtob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n!camera_server/camera_server.proto\x12\x18mavsdk.rpc.camera_server\x1a\x14mavsdk_options.proto\"S\n\x15SetInformationRequest\x12:\n\x0binformation\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.camera_server.Information\"d\n\x16SetInformationResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"]\n\x18SetVideoStreamingRequest\x12\x41\n\x0fvideo_streaming\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.camera_server.VideoStreaming\"g\n\x19SetVideoStreamingResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"+\n\x14SetInProgressRequest\x12\x13\n\x0bin_progress\x18\x01 \x01(\x08\"c\n\x15SetInProgressResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1b\n\x19SubscribeTakePhotoRequest\"\"\n\x11TakePhotoResponse\x12\r\n\x05index\x18\x01 \x01(\x05\"\x9d\x01\n\x17RespondTakePhotoRequest\x12\x45\n\x13take_photo_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\x12;\n\x0c\x63\x61pture_info\x18\x02 \x01(\x0b\x32%.mavsdk.rpc.camera_server.CaptureInfo\"f\n\x18RespondTakePhotoResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1c\n\x1aSubscribeStartVideoRequest\"\'\n\x12StartVideoResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"b\n\x18RespondStartVideoRequest\x12\x46\n\x14start_video_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"g\n\x19RespondStartVideoResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1b\n\x19SubscribeStopVideoRequest\"&\n\x11StopVideoResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"`\n\x17RespondStopVideoRequest\x12\x45\n\x13stop_video_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"f\n\x18RespondStopVideoResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"%\n#SubscribeStartVideoStreamingRequest\"0\n\x1bStartVideoStreamingResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"u\n!RespondStartVideoStreamingRequest\x12P\n\x1estart_video_streaming_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"p\n\"RespondStartVideoStreamingResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"$\n\"SubscribeStopVideoStreamingRequest\"/\n\x1aStopVideoStreamingResponse\x12\x11\n\tstream_id\x18\x01 \x01(\x05\"s\n RespondStopVideoStreamingRequest\x12O\n\x1dstop_video_streaming_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"o\n!RespondStopVideoStreamingResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x19\n\x17SubscribeSetModeRequest\"?\n\x0fSetModeResponse\x12,\n\x04mode\x18\x01 \x01(\x0e\x32\x1e.mavsdk.rpc.camera_server.Mode\"\\\n\x15RespondSetModeRequest\x12\x43\n\x11set_mode_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"d\n\x16RespondSetModeResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"$\n\"SubscribeStorageInformationRequest\"0\n\x1aStorageInformationResponse\x12\x12\n\nstorage_id\x18\x01 \x01(\x05\"\xbd\x01\n RespondStorageInformationRequest\x12N\n\x1cstorage_information_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\x12I\n\x13storage_information\x18\x02 \x01(\x0b\x32,.mavsdk.rpc.camera_server.StorageInformation\"o\n!RespondStorageInformationResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1f\n\x1dSubscribeCaptureStatusRequest\")\n\x15\x43\x61ptureStatusResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"\xa9\x01\n\x1bRespondCaptureStatusRequest\x12I\n\x17\x63\x61pture_status_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\x12?\n\x0e\x63\x61pture_status\x18\x02 \x01(\x0b\x32\'.mavsdk.rpc.camera_server.CaptureStatus\"j\n\x1cRespondCaptureStatusResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1f\n\x1dSubscribeFormatStorageRequest\"+\n\x15\x46ormatStorageResponse\x12\x12\n\nstorage_id\x18\x01 \x01(\x05\"h\n\x1bRespondFormatStorageRequest\x12I\n\x17\x66ormat_storage_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"j\n\x1cRespondFormatStorageResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1f\n\x1dSubscribeResetSettingsRequest\")\n\x15ResetSettingsResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"h\n\x1bRespondResetSettingsRequest\x12I\n\x17reset_settings_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"j\n\x1cRespondResetSettingsResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1d\n\x1bSubscribeZoomInStartRequest\"\'\n\x13ZoomInStartResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"e\n\x19RespondZoomInStartRequest\x12H\n\x16zoom_in_start_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"h\n\x1aRespondZoomInStartResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1e\n\x1cSubscribeZoomOutStartRequest\"(\n\x14ZoomOutStartResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"g\n\x1aRespondZoomOutStartRequest\x12I\n\x17zoom_out_start_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"i\n\x1bRespondZoomOutStartResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1a\n\x18SubscribeZoomStopRequest\"$\n\x10ZoomStopResponse\x12\x10\n\x08reserved\x18\x01 \x01(\x05\"^\n\x16RespondZoomStopRequest\x12\x44\n\x12zoom_stop_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"e\n\x17RespondZoomStopResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\x1b\n\x19SubscribeZoomRangeRequest\"#\n\x11ZoomRangeResponse\x12\x0e\n\x06\x66\x61\x63tor\x18\x01 \x01(\x02\"`\n\x17RespondZoomRangeRequest\x12\x45\n\x13zoom_range_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"f\n\x18RespondZoomRangeResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"\xbe\x02\n\x0bInformation\x12\x13\n\x0bvendor_name\x18\x01 \x01(\t\x12\x12\n\nmodel_name\x18\x02 \x01(\t\x12\x18\n\x10\x66irmware_version\x18\x03 \x01(\t\x12\x17\n\x0f\x66ocal_length_mm\x18\x04 \x01(\x02\x12!\n\x19horizontal_sensor_size_mm\x18\x05 \x01(\x02\x12\x1f\n\x17vertical_sensor_size_mm\x18\x06 \x01(\x02\x12 \n\x18horizontal_resolution_px\x18\x07 \x01(\r\x12\x1e\n\x16vertical_resolution_px\x18\x08 \x01(\r\x12\x0f\n\x07lens_id\x18\t \x01(\r\x12\x1f\n\x17\x64\x65\x66inition_file_version\x18\n \x01(\r\x12\x1b\n\x13\x64\x65\x66inition_file_uri\x18\x0b \x01(\t\";\n\x0eVideoStreaming\x12\x17\n\x0fhas_rtsp_server\x18\x01 \x01(\x08\x12\x10\n\x08rtsp_uri\x18\x02 \x01(\t\"q\n\x08Position\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x12\x1b\n\x13relative_altitude_m\x18\x04 \x01(\x02\"8\n\nQuaternion\x12\t\n\x01w\x18\x01 \x01(\x02\x12\t\n\x01x\x18\x02 \x01(\x02\x12\t\n\x01y\x18\x03 \x01(\x02\x12\t\n\x01z\x18\x04 \x01(\x02\"\xd0\x01\n\x0b\x43\x61ptureInfo\x12\x34\n\x08position\x18\x01 \x01(\x0b\x32\".mavsdk.rpc.camera_server.Position\x12\x41\n\x13\x61ttitude_quaternion\x18\x02 \x01(\x0b\x32$.mavsdk.rpc.camera_server.Quaternion\x12\x13\n\x0btime_utc_us\x18\x03 \x01(\x04\x12\x12\n\nis_success\x18\x04 \x01(\x08\x12\r\n\x05index\x18\x05 \x01(\x05\x12\x10\n\x08\x66ile_url\x18\x06 \x01(\t\"\xb3\x02\n\x12\x43\x61meraServerResult\x12\x43\n\x06result\x18\x01 \x01(\x0e\x32\x33.mavsdk.rpc.camera_server.CameraServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xc3\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x16\n\x12RESULT_IN_PROGRESS\x10\x02\x12\x0f\n\x0bRESULT_BUSY\x10\x03\x12\x11\n\rRESULT_DENIED\x10\x04\x12\x10\n\x0cRESULT_ERROR\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x19\n\x15RESULT_WRONG_ARGUMENT\x10\x07\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x08\"\x8c\x05\n\x12StorageInformation\x12\x18\n\x10used_storage_mib\x18\x01 \x01(\x02\x12\x1d\n\x15\x61vailable_storage_mib\x18\x02 \x01(\x02\x12\x19\n\x11total_storage_mib\x18\x03 \x01(\x02\x12R\n\x0estorage_status\x18\x04 \x01(\x0e\x32:.mavsdk.rpc.camera_server.StorageInformation.StorageStatus\x12\x12\n\nstorage_id\x18\x05 \x01(\r\x12N\n\x0cstorage_type\x18\x06 \x01(\x0e\x32\x38.mavsdk.rpc.camera_server.StorageInformation.StorageType\x12\x18\n\x10read_speed_mib_s\x18\x07 \x01(\x02\x12\x19\n\x11write_speed_mib_s\x18\x08 \x01(\x02\"\x91\x01\n\rStorageStatus\x12 \n\x1cSTORAGE_STATUS_NOT_AVAILABLE\x10\x00\x12\x1e\n\x1aSTORAGE_STATUS_UNFORMATTED\x10\x01\x12\x1c\n\x18STORAGE_STATUS_FORMATTED\x10\x02\x12 \n\x1cSTORAGE_STATUS_NOT_SUPPORTED\x10\x03\"\xa0\x01\n\x0bStorageType\x12\x18\n\x14STORAGE_TYPE_UNKNOWN\x10\x00\x12\x1a\n\x16STORAGE_TYPE_USB_STICK\x10\x01\x12\x13\n\x0fSTORAGE_TYPE_SD\x10\x02\x12\x18\n\x14STORAGE_TYPE_MICROSD\x10\x03\x12\x13\n\x0fSTORAGE_TYPE_HD\x10\x07\x12\x17\n\x12STORAGE_TYPE_OTHER\x10\xfe\x01\"\xee\x03\n\rCaptureStatus\x12\x18\n\x10image_interval_s\x18\x01 \x01(\x02\x12\x18\n\x10recording_time_s\x18\x02 \x01(\x02\x12\x1e\n\x16\x61vailable_capacity_mib\x18\x03 \x01(\x02\x12I\n\x0cimage_status\x18\x04 \x01(\x0e\x32\x33.mavsdk.rpc.camera_server.CaptureStatus.ImageStatus\x12I\n\x0cvideo_status\x18\x05 \x01(\x0e\x32\x33.mavsdk.rpc.camera_server.CaptureStatus.VideoStatus\x12\x13\n\x0bimage_count\x18\x06 \x01(\x05\"\x91\x01\n\x0bImageStatus\x12\x15\n\x11IMAGE_STATUS_IDLE\x10\x00\x12$\n IMAGE_STATUS_CAPTURE_IN_PROGRESS\x10\x01\x12\x1e\n\x1aIMAGE_STATUS_INTERVAL_IDLE\x10\x02\x12%\n!IMAGE_STATUS_INTERVAL_IN_PROGRESS\x10\x03\"J\n\x0bVideoStatus\x12\x15\n\x11VIDEO_STATUS_IDLE\x10\x00\x12$\n VIDEO_STATUS_CAPTURE_IN_PROGRESS\x10\x01\"\\\n\x1dSetTrackingPointStatusRequest\x12;\n\rtracked_point\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.camera_server.TrackPoint\" \n\x1eSetTrackingPointStatusResponse\"h\n!SetTrackingRectangleStatusRequest\x12\x43\n\x11tracked_rectangle\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.camera_server.TrackRectangle\"$\n\"SetTrackingRectangleStatusResponse\"\x1d\n\x1bSetTrackingOffStatusRequest\"\x1e\n\x1cSetTrackingOffStatusResponse\"&\n$SubscribeTrackingPointCommandRequest\"Y\n\x1cTrackingPointCommandResponse\x12\x39\n\x0btrack_point\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.camera_server.TrackPoint\"*\n(SubscribeTrackingRectangleCommandRequest\"e\n TrackingRectangleCommandResponse\x12\x41\n\x0ftrack_rectangle\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.camera_server.TrackRectangle\"$\n\"SubscribeTrackingOffCommandRequest\"+\n\x1aTrackingOffCommandResponse\x12\r\n\x05\x64ummy\x18\x01 \x01(\x05\"k\n\"RespondTrackingPointCommandRequest\x12\x45\n\x13stop_video_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"q\n#RespondTrackingPointCommandResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"o\n&RespondTrackingRectangleCommandRequest\x12\x45\n\x13stop_video_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"u\n\'RespondTrackingRectangleCommandResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\"i\n RespondTrackingOffCommandRequest\x12\x45\n\x13stop_video_feedback\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.camera_server.CameraFeedback\"o\n!RespondTrackingOffCommandResponse\x12J\n\x14\x63\x61mera_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.camera_server.CameraServerResult\">\n\nTrackPoint\x12\x0f\n\x07point_x\x18\x01 \x01(\x02\x12\x0f\n\x07point_y\x18\x02 \x01(\x02\x12\x0e\n\x06radius\x18\x03 \x01(\x02\"\x84\x01\n\x0eTrackRectangle\x12\x19\n\x11top_left_corner_x\x18\x01 \x01(\x02\x12\x19\n\x11top_left_corner_y\x18\x02 \x01(\x02\x12\x1d\n\x15\x62ottom_right_corner_x\x18\x03 \x01(\x02\x12\x1d\n\x15\x62ottom_right_corner_y\x18\x04 \x01(\x02*{\n\x0e\x43\x61meraFeedback\x12\x1b\n\x17\x43\x41MERA_FEEDBACK_UNKNOWN\x10\x00\x12\x16\n\x12\x43\x41MERA_FEEDBACK_OK\x10\x01\x12\x18\n\x14\x43\x41MERA_FEEDBACK_BUSY\x10\x02\x12\x1a\n\x16\x43\x41MERA_FEEDBACK_FAILED\x10\x03*8\n\x04Mode\x12\x10\n\x0cMODE_UNKNOWN\x10\x00\x12\x0e\n\nMODE_PHOTO\x10\x01\x12\x0e\n\nMODE_VIDEO\x10\x02\x32\xb8+\n\x13\x43\x61meraServerService\x12y\n\x0eSetInformation\x12/.mavsdk.rpc.camera_server.SetInformationRequest\x1a\x30.mavsdk.rpc.camera_server.SetInformationResponse\"\x04\x80\xb5\x18\x01\x12\x82\x01\n\x11SetVideoStreaming\x12\x32.mavsdk.rpc.camera_server.SetVideoStreamingRequest\x1a\x33.mavsdk.rpc.camera_server.SetVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12v\n\rSetInProgress\x12..mavsdk.rpc.camera_server.SetInProgressRequest\x1a/.mavsdk.rpc.camera_server.SetInProgressResponse\"\x04\x80\xb5\x18\x01\x12~\n\x12SubscribeTakePhoto\x12\x33.mavsdk.rpc.camera_server.SubscribeTakePhotoRequest\x1a+.mavsdk.rpc.camera_server.TakePhotoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x7f\n\x10RespondTakePhoto\x12\x31.mavsdk.rpc.camera_server.RespondTakePhotoRequest\x1a\x32.mavsdk.rpc.camera_server.RespondTakePhotoResponse\"\x04\x80\xb5\x18\x01\x12\x81\x01\n\x13SubscribeStartVideo\x12\x34.mavsdk.rpc.camera_server.SubscribeStartVideoRequest\x1a,.mavsdk.rpc.camera_server.StartVideoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x82\x01\n\x11RespondStartVideo\x12\x32.mavsdk.rpc.camera_server.RespondStartVideoRequest\x1a\x33.mavsdk.rpc.camera_server.RespondStartVideoResponse\"\x04\x80\xb5\x18\x01\x12~\n\x12SubscribeStopVideo\x12\x33.mavsdk.rpc.camera_server.SubscribeStopVideoRequest\x1a+.mavsdk.rpc.camera_server.StopVideoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x7f\n\x10RespondStopVideo\x12\x31.mavsdk.rpc.camera_server.RespondStopVideoRequest\x1a\x32.mavsdk.rpc.camera_server.RespondStopVideoResponse\"\x04\x80\xb5\x18\x01\x12\x9c\x01\n\x1cSubscribeStartVideoStreaming\x12=.mavsdk.rpc.camera_server.SubscribeStartVideoStreamingRequest\x1a\x35.mavsdk.rpc.camera_server.StartVideoStreamingResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x9d\x01\n\x1aRespondStartVideoStreaming\x12;.mavsdk.rpc.camera_server.RespondStartVideoStreamingRequest\x1a<.mavsdk.rpc.camera_server.RespondStartVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12\x99\x01\n\x1bSubscribeStopVideoStreaming\x12<.mavsdk.rpc.camera_server.SubscribeStopVideoStreamingRequest\x1a\x34.mavsdk.rpc.camera_server.StopVideoStreamingResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x9a\x01\n\x19RespondStopVideoStreaming\x12:.mavsdk.rpc.camera_server.RespondStopVideoStreamingRequest\x1a;.mavsdk.rpc.camera_server.RespondStopVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12x\n\x10SubscribeSetMode\x12\x31.mavsdk.rpc.camera_server.SubscribeSetModeRequest\x1a).mavsdk.rpc.camera_server.SetModeResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12y\n\x0eRespondSetMode\x12/.mavsdk.rpc.camera_server.RespondSetModeRequest\x1a\x30.mavsdk.rpc.camera_server.RespondSetModeResponse\"\x04\x80\xb5\x18\x01\x12\x99\x01\n\x1bSubscribeStorageInformation\x12<.mavsdk.rpc.camera_server.SubscribeStorageInformationRequest\x1a\x34.mavsdk.rpc.camera_server.StorageInformationResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x9a\x01\n\x19RespondStorageInformation\x12:.mavsdk.rpc.camera_server.RespondStorageInformationRequest\x1a;.mavsdk.rpc.camera_server.RespondStorageInformationResponse\"\x04\x80\xb5\x18\x01\x12\x8a\x01\n\x16SubscribeCaptureStatus\x12\x37.mavsdk.rpc.camera_server.SubscribeCaptureStatusRequest\x1a/.mavsdk.rpc.camera_server.CaptureStatusResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x8b\x01\n\x14RespondCaptureStatus\x12\x35.mavsdk.rpc.camera_server.RespondCaptureStatusRequest\x1a\x36.mavsdk.rpc.camera_server.RespondCaptureStatusResponse\"\x04\x80\xb5\x18\x01\x12\x8a\x01\n\x16SubscribeFormatStorage\x12\x37.mavsdk.rpc.camera_server.SubscribeFormatStorageRequest\x1a/.mavsdk.rpc.camera_server.FormatStorageResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x8b\x01\n\x14RespondFormatStorage\x12\x35.mavsdk.rpc.camera_server.RespondFormatStorageRequest\x1a\x36.mavsdk.rpc.camera_server.RespondFormatStorageResponse\"\x04\x80\xb5\x18\x01\x12\x8a\x01\n\x16SubscribeResetSettings\x12\x37.mavsdk.rpc.camera_server.SubscribeResetSettingsRequest\x1a/.mavsdk.rpc.camera_server.ResetSettingsResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x8b\x01\n\x14RespondResetSettings\x12\x35.mavsdk.rpc.camera_server.RespondResetSettingsRequest\x1a\x36.mavsdk.rpc.camera_server.RespondResetSettingsResponse\"\x04\x80\xb5\x18\x01\x12\x84\x01\n\x14SubscribeZoomInStart\x12\x35.mavsdk.rpc.camera_server.SubscribeZoomInStartRequest\x1a-.mavsdk.rpc.camera_server.ZoomInStartResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x85\x01\n\x12RespondZoomInStart\x12\x33.mavsdk.rpc.camera_server.RespondZoomInStartRequest\x1a\x34.mavsdk.rpc.camera_server.RespondZoomInStartResponse\"\x04\x80\xb5\x18\x01\x12\x87\x01\n\x15SubscribeZoomOutStart\x12\x36.mavsdk.rpc.camera_server.SubscribeZoomOutStartRequest\x1a..mavsdk.rpc.camera_server.ZoomOutStartResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x88\x01\n\x13RespondZoomOutStart\x12\x34.mavsdk.rpc.camera_server.RespondZoomOutStartRequest\x1a\x35.mavsdk.rpc.camera_server.RespondZoomOutStartResponse\"\x04\x80\xb5\x18\x01\x12{\n\x11SubscribeZoomStop\x12\x32.mavsdk.rpc.camera_server.SubscribeZoomStopRequest\x1a*.mavsdk.rpc.camera_server.ZoomStopResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12|\n\x0fRespondZoomStop\x12\x30.mavsdk.rpc.camera_server.RespondZoomStopRequest\x1a\x31.mavsdk.rpc.camera_server.RespondZoomStopResponse\"\x04\x80\xb5\x18\x01\x12~\n\x12SubscribeZoomRange\x12\x33.mavsdk.rpc.camera_server.SubscribeZoomRangeRequest\x1a+.mavsdk.rpc.camera_server.ZoomRangeResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x7f\n\x10RespondZoomRange\x12\x31.mavsdk.rpc.camera_server.RespondZoomRangeRequest\x1a\x32.mavsdk.rpc.camera_server.RespondZoomRangeResponse\"\x04\x80\xb5\x18\x01\x12\x9d\x01\n\x1aSetTrackingRectangleStatus\x12;.mavsdk.rpc.camera_server.SetTrackingRectangleStatusRequest\x1a<.mavsdk.rpc.camera_server.SetTrackingRectangleStatusResponse\"\x04\x80\xb5\x18\x01\x12\x8b\x01\n\x14SetTrackingOffStatus\x12\x35.mavsdk.rpc.camera_server.SetTrackingOffStatusRequest\x1a\x36.mavsdk.rpc.camera_server.SetTrackingOffStatusResponse\"\x04\x80\xb5\x18\x01\x12\x9f\x01\n\x1dSubscribeTrackingPointCommand\x12>.mavsdk.rpc.camera_server.SubscribeTrackingPointCommandRequest\x1a\x36.mavsdk.rpc.camera_server.TrackingPointCommandResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\xab\x01\n!SubscribeTrackingRectangleCommand\x12\x42.mavsdk.rpc.camera_server.SubscribeTrackingRectangleCommandRequest\x1a:.mavsdk.rpc.camera_server.TrackingRectangleCommandResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x99\x01\n\x1bSubscribeTrackingOffCommand\x12<.mavsdk.rpc.camera_server.SubscribeTrackingOffCommandRequest\x1a\x34.mavsdk.rpc.camera_server.TrackingOffCommandResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\xa0\x01\n\x1bRespondTrackingPointCommand\x12<.mavsdk.rpc.camera_server.RespondTrackingPointCommandRequest\x1a=.mavsdk.rpc.camera_server.RespondTrackingPointCommandResponse\"\x04\x80\xb5\x18\x01\x12\xac\x01\n\x1fRespondTrackingRectangleCommand\x12@.mavsdk.rpc.camera_server.RespondTrackingRectangleCommandRequest\x1a\x41.mavsdk.rpc.camera_server.RespondTrackingRectangleCommandResponse\"\x04\x80\xb5\x18\x01\x12\x9a\x01\n\x19RespondTrackingOffCommand\x12:.mavsdk.rpc.camera_server.RespondTrackingOffCommandRequest\x1a;.mavsdk.rpc.camera_server.RespondTrackingOffCommandResponse\"\x04\x80\xb5\x18\x01\x42,\n\x17io.mavsdk.camera_serverB\x11\x43\x61meraServerProtob\x06proto3') _CAMERAFEEDBACK = DESCRIPTOR.enum_types_by_name['CameraFeedback'] CameraFeedback = enum_type_wrapper.EnumTypeWrapper(_CAMERAFEEDBACK) @@ -101,6 +101,26 @@ _CAMERASERVERRESULT = DESCRIPTOR.message_types_by_name['CameraServerResult'] _STORAGEINFORMATION = DESCRIPTOR.message_types_by_name['StorageInformation'] _CAPTURESTATUS = DESCRIPTOR.message_types_by_name['CaptureStatus'] +_SETTRACKINGPOINTSTATUSREQUEST = DESCRIPTOR.message_types_by_name['SetTrackingPointStatusRequest'] +_SETTRACKINGPOINTSTATUSRESPONSE = DESCRIPTOR.message_types_by_name['SetTrackingPointStatusResponse'] +_SETTRACKINGRECTANGLESTATUSREQUEST = DESCRIPTOR.message_types_by_name['SetTrackingRectangleStatusRequest'] +_SETTRACKINGRECTANGLESTATUSRESPONSE = DESCRIPTOR.message_types_by_name['SetTrackingRectangleStatusResponse'] +_SETTRACKINGOFFSTATUSREQUEST = DESCRIPTOR.message_types_by_name['SetTrackingOffStatusRequest'] +_SETTRACKINGOFFSTATUSRESPONSE = DESCRIPTOR.message_types_by_name['SetTrackingOffStatusResponse'] +_SUBSCRIBETRACKINGPOINTCOMMANDREQUEST = DESCRIPTOR.message_types_by_name['SubscribeTrackingPointCommandRequest'] +_TRACKINGPOINTCOMMANDRESPONSE = DESCRIPTOR.message_types_by_name['TrackingPointCommandResponse'] +_SUBSCRIBETRACKINGRECTANGLECOMMANDREQUEST = DESCRIPTOR.message_types_by_name['SubscribeTrackingRectangleCommandRequest'] +_TRACKINGRECTANGLECOMMANDRESPONSE = DESCRIPTOR.message_types_by_name['TrackingRectangleCommandResponse'] +_SUBSCRIBETRACKINGOFFCOMMANDREQUEST = DESCRIPTOR.message_types_by_name['SubscribeTrackingOffCommandRequest'] +_TRACKINGOFFCOMMANDRESPONSE = DESCRIPTOR.message_types_by_name['TrackingOffCommandResponse'] +_RESPONDTRACKINGPOINTCOMMANDREQUEST = DESCRIPTOR.message_types_by_name['RespondTrackingPointCommandRequest'] +_RESPONDTRACKINGPOINTCOMMANDRESPONSE = DESCRIPTOR.message_types_by_name['RespondTrackingPointCommandResponse'] +_RESPONDTRACKINGRECTANGLECOMMANDREQUEST = DESCRIPTOR.message_types_by_name['RespondTrackingRectangleCommandRequest'] +_RESPONDTRACKINGRECTANGLECOMMANDRESPONSE = DESCRIPTOR.message_types_by_name['RespondTrackingRectangleCommandResponse'] +_RESPONDTRACKINGOFFCOMMANDREQUEST = DESCRIPTOR.message_types_by_name['RespondTrackingOffCommandRequest'] +_RESPONDTRACKINGOFFCOMMANDRESPONSE = DESCRIPTOR.message_types_by_name['RespondTrackingOffCommandResponse'] +_TRACKPOINT = DESCRIPTOR.message_types_by_name['TrackPoint'] +_TRACKRECTANGLE = DESCRIPTOR.message_types_by_name['TrackRectangle'] _CAMERASERVERRESULT_RESULT = _CAMERASERVERRESULT.enum_types_by_name['Result'] _STORAGEINFORMATION_STORAGESTATUS = _STORAGEINFORMATION.enum_types_by_name['StorageStatus'] _STORAGEINFORMATION_STORAGETYPE = _STORAGEINFORMATION.enum_types_by_name['StorageType'] @@ -596,6 +616,146 @@ }) _sym_db.RegisterMessage(CaptureStatus) +SetTrackingPointStatusRequest = _reflection.GeneratedProtocolMessageType('SetTrackingPointStatusRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETTRACKINGPOINTSTATUSREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SetTrackingPointStatusRequest) + }) +_sym_db.RegisterMessage(SetTrackingPointStatusRequest) + +SetTrackingPointStatusResponse = _reflection.GeneratedProtocolMessageType('SetTrackingPointStatusResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETTRACKINGPOINTSTATUSRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SetTrackingPointStatusResponse) + }) +_sym_db.RegisterMessage(SetTrackingPointStatusResponse) + +SetTrackingRectangleStatusRequest = _reflection.GeneratedProtocolMessageType('SetTrackingRectangleStatusRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETTRACKINGRECTANGLESTATUSREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SetTrackingRectangleStatusRequest) + }) +_sym_db.RegisterMessage(SetTrackingRectangleStatusRequest) + +SetTrackingRectangleStatusResponse = _reflection.GeneratedProtocolMessageType('SetTrackingRectangleStatusResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETTRACKINGRECTANGLESTATUSRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SetTrackingRectangleStatusResponse) + }) +_sym_db.RegisterMessage(SetTrackingRectangleStatusResponse) + +SetTrackingOffStatusRequest = _reflection.GeneratedProtocolMessageType('SetTrackingOffStatusRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETTRACKINGOFFSTATUSREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SetTrackingOffStatusRequest) + }) +_sym_db.RegisterMessage(SetTrackingOffStatusRequest) + +SetTrackingOffStatusResponse = _reflection.GeneratedProtocolMessageType('SetTrackingOffStatusResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETTRACKINGOFFSTATUSRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SetTrackingOffStatusResponse) + }) +_sym_db.RegisterMessage(SetTrackingOffStatusResponse) + +SubscribeTrackingPointCommandRequest = _reflection.GeneratedProtocolMessageType('SubscribeTrackingPointCommandRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBETRACKINGPOINTCOMMANDREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SubscribeTrackingPointCommandRequest) + }) +_sym_db.RegisterMessage(SubscribeTrackingPointCommandRequest) + +TrackingPointCommandResponse = _reflection.GeneratedProtocolMessageType('TrackingPointCommandResponse', (_message.Message,), { + 'DESCRIPTOR' : _TRACKINGPOINTCOMMANDRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.TrackingPointCommandResponse) + }) +_sym_db.RegisterMessage(TrackingPointCommandResponse) + +SubscribeTrackingRectangleCommandRequest = _reflection.GeneratedProtocolMessageType('SubscribeTrackingRectangleCommandRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBETRACKINGRECTANGLECOMMANDREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SubscribeTrackingRectangleCommandRequest) + }) +_sym_db.RegisterMessage(SubscribeTrackingRectangleCommandRequest) + +TrackingRectangleCommandResponse = _reflection.GeneratedProtocolMessageType('TrackingRectangleCommandResponse', (_message.Message,), { + 'DESCRIPTOR' : _TRACKINGRECTANGLECOMMANDRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.TrackingRectangleCommandResponse) + }) +_sym_db.RegisterMessage(TrackingRectangleCommandResponse) + +SubscribeTrackingOffCommandRequest = _reflection.GeneratedProtocolMessageType('SubscribeTrackingOffCommandRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBETRACKINGOFFCOMMANDREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.SubscribeTrackingOffCommandRequest) + }) +_sym_db.RegisterMessage(SubscribeTrackingOffCommandRequest) + +TrackingOffCommandResponse = _reflection.GeneratedProtocolMessageType('TrackingOffCommandResponse', (_message.Message,), { + 'DESCRIPTOR' : _TRACKINGOFFCOMMANDRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.TrackingOffCommandResponse) + }) +_sym_db.RegisterMessage(TrackingOffCommandResponse) + +RespondTrackingPointCommandRequest = _reflection.GeneratedProtocolMessageType('RespondTrackingPointCommandRequest', (_message.Message,), { + 'DESCRIPTOR' : _RESPONDTRACKINGPOINTCOMMANDREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.RespondTrackingPointCommandRequest) + }) +_sym_db.RegisterMessage(RespondTrackingPointCommandRequest) + +RespondTrackingPointCommandResponse = _reflection.GeneratedProtocolMessageType('RespondTrackingPointCommandResponse', (_message.Message,), { + 'DESCRIPTOR' : _RESPONDTRACKINGPOINTCOMMANDRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.RespondTrackingPointCommandResponse) + }) +_sym_db.RegisterMessage(RespondTrackingPointCommandResponse) + +RespondTrackingRectangleCommandRequest = _reflection.GeneratedProtocolMessageType('RespondTrackingRectangleCommandRequest', (_message.Message,), { + 'DESCRIPTOR' : _RESPONDTRACKINGRECTANGLECOMMANDREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.RespondTrackingRectangleCommandRequest) + }) +_sym_db.RegisterMessage(RespondTrackingRectangleCommandRequest) + +RespondTrackingRectangleCommandResponse = _reflection.GeneratedProtocolMessageType('RespondTrackingRectangleCommandResponse', (_message.Message,), { + 'DESCRIPTOR' : _RESPONDTRACKINGRECTANGLECOMMANDRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.RespondTrackingRectangleCommandResponse) + }) +_sym_db.RegisterMessage(RespondTrackingRectangleCommandResponse) + +RespondTrackingOffCommandRequest = _reflection.GeneratedProtocolMessageType('RespondTrackingOffCommandRequest', (_message.Message,), { + 'DESCRIPTOR' : _RESPONDTRACKINGOFFCOMMANDREQUEST, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.RespondTrackingOffCommandRequest) + }) +_sym_db.RegisterMessage(RespondTrackingOffCommandRequest) + +RespondTrackingOffCommandResponse = _reflection.GeneratedProtocolMessageType('RespondTrackingOffCommandResponse', (_message.Message,), { + 'DESCRIPTOR' : _RESPONDTRACKINGOFFCOMMANDRESPONSE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.RespondTrackingOffCommandResponse) + }) +_sym_db.RegisterMessage(RespondTrackingOffCommandResponse) + +TrackPoint = _reflection.GeneratedProtocolMessageType('TrackPoint', (_message.Message,), { + 'DESCRIPTOR' : _TRACKPOINT, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.TrackPoint) + }) +_sym_db.RegisterMessage(TrackPoint) + +TrackRectangle = _reflection.GeneratedProtocolMessageType('TrackRectangle', (_message.Message,), { + 'DESCRIPTOR' : _TRACKRECTANGLE, + '__module__' : 'camera_server.camera_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera_server.TrackRectangle) + }) +_sym_db.RegisterMessage(TrackRectangle) + _CAMERASERVERSERVICE = DESCRIPTOR.services_by_name['CameraServerService'] if _descriptor._USE_C_DESCRIPTORS == False: @@ -663,10 +823,26 @@ _CAMERASERVERSERVICE.methods_by_name['SubscribeZoomRange']._serialized_options = b'\200\265\030\000' _CAMERASERVERSERVICE.methods_by_name['RespondZoomRange']._options = None _CAMERASERVERSERVICE.methods_by_name['RespondZoomRange']._serialized_options = b'\200\265\030\001' - _CAMERAFEEDBACK._serialized_start=7080 - _CAMERAFEEDBACK._serialized_end=7203 - _MODE._serialized_start=7205 - _MODE._serialized_end=7261 + _CAMERASERVERSERVICE.methods_by_name['SetTrackingRectangleStatus']._options = None + _CAMERASERVERSERVICE.methods_by_name['SetTrackingRectangleStatus']._serialized_options = b'\200\265\030\001' + _CAMERASERVERSERVICE.methods_by_name['SetTrackingOffStatus']._options = None + _CAMERASERVERSERVICE.methods_by_name['SetTrackingOffStatus']._serialized_options = b'\200\265\030\001' + _CAMERASERVERSERVICE.methods_by_name['SubscribeTrackingPointCommand']._options = None + _CAMERASERVERSERVICE.methods_by_name['SubscribeTrackingPointCommand']._serialized_options = b'\200\265\030\000' + _CAMERASERVERSERVICE.methods_by_name['SubscribeTrackingRectangleCommand']._options = None + _CAMERASERVERSERVICE.methods_by_name['SubscribeTrackingRectangleCommand']._serialized_options = b'\200\265\030\000' + _CAMERASERVERSERVICE.methods_by_name['SubscribeTrackingOffCommand']._options = None + _CAMERASERVERSERVICE.methods_by_name['SubscribeTrackingOffCommand']._serialized_options = b'\200\265\030\000' + _CAMERASERVERSERVICE.methods_by_name['RespondTrackingPointCommand']._options = None + _CAMERASERVERSERVICE.methods_by_name['RespondTrackingPointCommand']._serialized_options = b'\200\265\030\001' + _CAMERASERVERSERVICE.methods_by_name['RespondTrackingRectangleCommand']._options = None + _CAMERASERVERSERVICE.methods_by_name['RespondTrackingRectangleCommand']._serialized_options = b'\200\265\030\001' + _CAMERASERVERSERVICE.methods_by_name['RespondTrackingOffCommand']._options = None + _CAMERASERVERSERVICE.methods_by_name['RespondTrackingOffCommand']._serialized_options = b'\200\265\030\001' + _CAMERAFEEDBACK._serialized_start=8651 + _CAMERAFEEDBACK._serialized_end=8774 + _MODE._serialized_start=8776 + _MODE._serialized_end=8832 _SETINFORMATIONREQUEST._serialized_start=85 _SETINFORMATIONREQUEST._serialized_end=168 _SETINFORMATIONRESPONSE._serialized_start=170 @@ -817,6 +993,46 @@ _CAPTURESTATUS_IMAGESTATUS._serialized_end=7002 _CAPTURESTATUS_VIDEOSTATUS._serialized_start=7004 _CAPTURESTATUS_VIDEOSTATUS._serialized_end=7078 - _CAMERASERVERSERVICE._serialized_start=7264 - _CAMERASERVERSERVICE._serialized_end=11535 + _SETTRACKINGPOINTSTATUSREQUEST._serialized_start=7080 + _SETTRACKINGPOINTSTATUSREQUEST._serialized_end=7172 + _SETTRACKINGPOINTSTATUSRESPONSE._serialized_start=7174 + _SETTRACKINGPOINTSTATUSRESPONSE._serialized_end=7206 + _SETTRACKINGRECTANGLESTATUSREQUEST._serialized_start=7208 + _SETTRACKINGRECTANGLESTATUSREQUEST._serialized_end=7312 + _SETTRACKINGRECTANGLESTATUSRESPONSE._serialized_start=7314 + _SETTRACKINGRECTANGLESTATUSRESPONSE._serialized_end=7350 + _SETTRACKINGOFFSTATUSREQUEST._serialized_start=7352 + _SETTRACKINGOFFSTATUSREQUEST._serialized_end=7381 + _SETTRACKINGOFFSTATUSRESPONSE._serialized_start=7383 + _SETTRACKINGOFFSTATUSRESPONSE._serialized_end=7413 + _SUBSCRIBETRACKINGPOINTCOMMANDREQUEST._serialized_start=7415 + _SUBSCRIBETRACKINGPOINTCOMMANDREQUEST._serialized_end=7453 + _TRACKINGPOINTCOMMANDRESPONSE._serialized_start=7455 + _TRACKINGPOINTCOMMANDRESPONSE._serialized_end=7544 + _SUBSCRIBETRACKINGRECTANGLECOMMANDREQUEST._serialized_start=7546 + _SUBSCRIBETRACKINGRECTANGLECOMMANDREQUEST._serialized_end=7588 + _TRACKINGRECTANGLECOMMANDRESPONSE._serialized_start=7590 + _TRACKINGRECTANGLECOMMANDRESPONSE._serialized_end=7691 + _SUBSCRIBETRACKINGOFFCOMMANDREQUEST._serialized_start=7693 + _SUBSCRIBETRACKINGOFFCOMMANDREQUEST._serialized_end=7729 + _TRACKINGOFFCOMMANDRESPONSE._serialized_start=7731 + _TRACKINGOFFCOMMANDRESPONSE._serialized_end=7774 + _RESPONDTRACKINGPOINTCOMMANDREQUEST._serialized_start=7776 + _RESPONDTRACKINGPOINTCOMMANDREQUEST._serialized_end=7883 + _RESPONDTRACKINGPOINTCOMMANDRESPONSE._serialized_start=7885 + _RESPONDTRACKINGPOINTCOMMANDRESPONSE._serialized_end=7998 + _RESPONDTRACKINGRECTANGLECOMMANDREQUEST._serialized_start=8000 + _RESPONDTRACKINGRECTANGLECOMMANDREQUEST._serialized_end=8111 + _RESPONDTRACKINGRECTANGLECOMMANDRESPONSE._serialized_start=8113 + _RESPONDTRACKINGRECTANGLECOMMANDRESPONSE._serialized_end=8230 + _RESPONDTRACKINGOFFCOMMANDREQUEST._serialized_start=8232 + _RESPONDTRACKINGOFFCOMMANDREQUEST._serialized_end=8337 + _RESPONDTRACKINGOFFCOMMANDRESPONSE._serialized_start=8339 + _RESPONDTRACKINGOFFCOMMANDRESPONSE._serialized_end=8450 + _TRACKPOINT._serialized_start=8452 + _TRACKPOINT._serialized_end=8514 + _TRACKRECTANGLE._serialized_start=8517 + _TRACKRECTANGLE._serialized_end=8649 + _CAMERASERVERSERVICE._serialized_start=8835 + _CAMERASERVERSERVICE._serialized_end=14395 # @@protoc_insertion_point(module_scope) diff --git a/mavsdk/camera_server_pb2_grpc.py b/mavsdk/camera_server_pb2_grpc.py index e56af489..732d3278 100644 --- a/mavsdk/camera_server_pb2_grpc.py +++ b/mavsdk/camera_server_pb2_grpc.py @@ -6,7 +6,7 @@ class CameraServerServiceStub(object): - """Provides handling of camera trigger commands. + """Provides handling of camera interface """ def __init__(self, channel): @@ -170,10 +170,50 @@ def __init__(self, channel): request_serializer=camera__server_dot_camera__server__pb2.RespondZoomRangeRequest.SerializeToString, response_deserializer=camera__server_dot_camera__server__pb2.RespondZoomRangeResponse.FromString, ) + self.SetTrackingRectangleStatus = channel.unary_unary( + '/mavsdk.rpc.camera_server.CameraServerService/SetTrackingRectangleStatus', + request_serializer=camera__server_dot_camera__server__pb2.SetTrackingRectangleStatusRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.SetTrackingRectangleStatusResponse.FromString, + ) + self.SetTrackingOffStatus = channel.unary_unary( + '/mavsdk.rpc.camera_server.CameraServerService/SetTrackingOffStatus', + request_serializer=camera__server_dot_camera__server__pb2.SetTrackingOffStatusRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.SetTrackingOffStatusResponse.FromString, + ) + self.SubscribeTrackingPointCommand = channel.unary_stream( + '/mavsdk.rpc.camera_server.CameraServerService/SubscribeTrackingPointCommand', + request_serializer=camera__server_dot_camera__server__pb2.SubscribeTrackingPointCommandRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.TrackingPointCommandResponse.FromString, + ) + self.SubscribeTrackingRectangleCommand = channel.unary_stream( + '/mavsdk.rpc.camera_server.CameraServerService/SubscribeTrackingRectangleCommand', + request_serializer=camera__server_dot_camera__server__pb2.SubscribeTrackingRectangleCommandRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.TrackingRectangleCommandResponse.FromString, + ) + self.SubscribeTrackingOffCommand = channel.unary_stream( + '/mavsdk.rpc.camera_server.CameraServerService/SubscribeTrackingOffCommand', + request_serializer=camera__server_dot_camera__server__pb2.SubscribeTrackingOffCommandRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.TrackingOffCommandResponse.FromString, + ) + self.RespondTrackingPointCommand = channel.unary_unary( + '/mavsdk.rpc.camera_server.CameraServerService/RespondTrackingPointCommand', + request_serializer=camera__server_dot_camera__server__pb2.RespondTrackingPointCommandRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.RespondTrackingPointCommandResponse.FromString, + ) + self.RespondTrackingRectangleCommand = channel.unary_unary( + '/mavsdk.rpc.camera_server.CameraServerService/RespondTrackingRectangleCommand', + request_serializer=camera__server_dot_camera__server__pb2.RespondTrackingRectangleCommandRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.RespondTrackingRectangleCommandResponse.FromString, + ) + self.RespondTrackingOffCommand = channel.unary_unary( + '/mavsdk.rpc.camera_server.CameraServerService/RespondTrackingOffCommand', + request_serializer=camera__server_dot_camera__server__pb2.RespondTrackingOffCommandRequest.SerializeToString, + response_deserializer=camera__server_dot_camera__server__pb2.RespondTrackingOffCommandResponse.FromString, + ) class CameraServerServiceServicer(object): - """Provides handling of camera trigger commands. + """Provides handling of camera interface """ def SetInformation(self, request, context): @@ -393,6 +433,62 @@ def RespondZoomRange(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def SetTrackingRectangleStatus(self, request, context): + """Set/update the current rectangle tracking status. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetTrackingOffStatus(self, request, context): + """Set the current tracking status to off. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeTrackingPointCommand(self, request, context): + """Subscribe to incoming tracking point command. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeTrackingRectangleCommand(self, request, context): + """Subscribe to incoming tracking rectangle command. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeTrackingOffCommand(self, request, context): + """Subscribe to incoming tracking off command. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def RespondTrackingPointCommand(self, request, context): + """Respond to an incoming tracking point command. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def RespondTrackingRectangleCommand(self, request, context): + """Respond to an incoming tracking rectangle command. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def RespondTrackingOffCommand(self, request, context): + """Respond to an incoming tracking off command. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def add_CameraServerServiceServicer_to_server(servicer, server): rpc_method_handlers = { @@ -551,6 +647,46 @@ def add_CameraServerServiceServicer_to_server(servicer, server): request_deserializer=camera__server_dot_camera__server__pb2.RespondZoomRangeRequest.FromString, response_serializer=camera__server_dot_camera__server__pb2.RespondZoomRangeResponse.SerializeToString, ), + 'SetTrackingRectangleStatus': grpc.unary_unary_rpc_method_handler( + servicer.SetTrackingRectangleStatus, + request_deserializer=camera__server_dot_camera__server__pb2.SetTrackingRectangleStatusRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.SetTrackingRectangleStatusResponse.SerializeToString, + ), + 'SetTrackingOffStatus': grpc.unary_unary_rpc_method_handler( + servicer.SetTrackingOffStatus, + request_deserializer=camera__server_dot_camera__server__pb2.SetTrackingOffStatusRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.SetTrackingOffStatusResponse.SerializeToString, + ), + 'SubscribeTrackingPointCommand': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeTrackingPointCommand, + request_deserializer=camera__server_dot_camera__server__pb2.SubscribeTrackingPointCommandRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.TrackingPointCommandResponse.SerializeToString, + ), + 'SubscribeTrackingRectangleCommand': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeTrackingRectangleCommand, + request_deserializer=camera__server_dot_camera__server__pb2.SubscribeTrackingRectangleCommandRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.TrackingRectangleCommandResponse.SerializeToString, + ), + 'SubscribeTrackingOffCommand': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeTrackingOffCommand, + request_deserializer=camera__server_dot_camera__server__pb2.SubscribeTrackingOffCommandRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.TrackingOffCommandResponse.SerializeToString, + ), + 'RespondTrackingPointCommand': grpc.unary_unary_rpc_method_handler( + servicer.RespondTrackingPointCommand, + request_deserializer=camera__server_dot_camera__server__pb2.RespondTrackingPointCommandRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.RespondTrackingPointCommandResponse.SerializeToString, + ), + 'RespondTrackingRectangleCommand': grpc.unary_unary_rpc_method_handler( + servicer.RespondTrackingRectangleCommand, + request_deserializer=camera__server_dot_camera__server__pb2.RespondTrackingRectangleCommandRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.RespondTrackingRectangleCommandResponse.SerializeToString, + ), + 'RespondTrackingOffCommand': grpc.unary_unary_rpc_method_handler( + servicer.RespondTrackingOffCommand, + request_deserializer=camera__server_dot_camera__server__pb2.RespondTrackingOffCommandRequest.FromString, + response_serializer=camera__server_dot_camera__server__pb2.RespondTrackingOffCommandResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( 'mavsdk.rpc.camera_server.CameraServerService', rpc_method_handlers) @@ -559,7 +695,7 @@ def add_CameraServerServiceServicer_to_server(servicer, server): # This class is part of an EXPERIMENTAL API. class CameraServerService(object): - """Provides handling of camera trigger commands. + """Provides handling of camera interface """ @staticmethod @@ -1088,3 +1224,139 @@ def RespondZoomRange(request, camera__server_dot_camera__server__pb2.RespondZoomRangeResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetTrackingRectangleStatus(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.camera_server.CameraServerService/SetTrackingRectangleStatus', + camera__server_dot_camera__server__pb2.SetTrackingRectangleStatusRequest.SerializeToString, + camera__server_dot_camera__server__pb2.SetTrackingRectangleStatusResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetTrackingOffStatus(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.camera_server.CameraServerService/SetTrackingOffStatus', + camera__server_dot_camera__server__pb2.SetTrackingOffStatusRequest.SerializeToString, + camera__server_dot_camera__server__pb2.SetTrackingOffStatusResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeTrackingPointCommand(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.camera_server.CameraServerService/SubscribeTrackingPointCommand', + camera__server_dot_camera__server__pb2.SubscribeTrackingPointCommandRequest.SerializeToString, + camera__server_dot_camera__server__pb2.TrackingPointCommandResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeTrackingRectangleCommand(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.camera_server.CameraServerService/SubscribeTrackingRectangleCommand', + camera__server_dot_camera__server__pb2.SubscribeTrackingRectangleCommandRequest.SerializeToString, + camera__server_dot_camera__server__pb2.TrackingRectangleCommandResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeTrackingOffCommand(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.camera_server.CameraServerService/SubscribeTrackingOffCommand', + camera__server_dot_camera__server__pb2.SubscribeTrackingOffCommandRequest.SerializeToString, + camera__server_dot_camera__server__pb2.TrackingOffCommandResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def RespondTrackingPointCommand(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.camera_server.CameraServerService/RespondTrackingPointCommand', + camera__server_dot_camera__server__pb2.RespondTrackingPointCommandRequest.SerializeToString, + camera__server_dot_camera__server__pb2.RespondTrackingPointCommandResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def RespondTrackingRectangleCommand(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.camera_server.CameraServerService/RespondTrackingRectangleCommand', + camera__server_dot_camera__server__pb2.RespondTrackingRectangleCommandRequest.SerializeToString, + camera__server_dot_camera__server__pb2.RespondTrackingRectangleCommandResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def RespondTrackingOffCommand(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.camera_server.CameraServerService/RespondTrackingOffCommand', + camera__server_dot_camera__server__pb2.RespondTrackingOffCommandRequest.SerializeToString, + camera__server_dot_camera__server__pb2.RespondTrackingOffCommandResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/mavsdk/source/plugins/arm_authorizer_server.rst b/mavsdk/source/plugins/arm_authorizer_server.rst new file mode 100644 index 00000000..fdb7ffdc --- /dev/null +++ b/mavsdk/source/plugins/arm_authorizer_server.rst @@ -0,0 +1,8 @@ +ArmAuthorizerServer +==== + +.. automodule:: mavsdk.arm_authorizer_server + :members: + :undoc-members: + :show-inheritance: + :exclude-members: translate_from_rpc, translate_to_rpc \ No newline at end of file diff --git a/mavsdk/source/plugins/index.rst b/mavsdk/source/plugins/index.rst index afe682c2..e2b3bbe4 100644 --- a/mavsdk/source/plugins/index.rst +++ b/mavsdk/source/plugins/index.rst @@ -38,3 +38,4 @@ Plugins ftp_server gripper winch + arm_authorizer_server diff --git a/proto b/proto index c000fb50..1acb7897 160000 --- a/proto +++ b/proto @@ -1 +1 @@ -Subproject commit c000fb508ffa66b440ac746b2f594a6ee547afc2 +Subproject commit 1acb7897208423c311c574448b43635f26965c05