geodrive-proto 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,22 @@
1
+ Metadata-Version: 2.3
2
+ Name: geodrive-proto
3
+ Version: 0.1.0
4
+ Summary: gRPC protocol buffer definitions and generated client/server code for Geodrive rover communication
5
+ Author: r.lazarev
6
+ Author-email: r.lazarev <r.lazarev@geoscan.ru>
7
+ License: MIT
8
+ Requires-Python: >=3.13
9
+ Description-Content-Type: text/markdown
10
+
11
+ ### Генерация кода из proto
12
+ ```bash
13
+ uv run scripts/protogen.py
14
+ ```
15
+ ### Сборка пакета
16
+ ```bash
17
+ uv build
18
+ ```
19
+ ### Публикация
20
+ ```bash
21
+ uv publish --token your-pypi-token
22
+ ```
@@ -0,0 +1,12 @@
1
+ ### Генерация кода из proto
2
+ ```bash
3
+ uv run scripts/protogen.py
4
+ ```
5
+ ### Сборка пакета
6
+ ```bash
7
+ uv build
8
+ ```
9
+ ### Публикация
10
+ ```bash
11
+ uv publish --token your-pypi-token
12
+ ```
@@ -0,0 +1,20 @@
1
+ [project]
2
+ name = "geodrive-proto"
3
+ version = "0.1.0"
4
+ description = "gRPC protocol buffer definitions and generated client/server code for Geodrive rover communication"
5
+ readme = "README.md"
6
+ license = { text = "MIT" }
7
+ authors = [
8
+ { name = "r.lazarev", email = "r.lazarev@geoscan.ru" }
9
+ ]
10
+ requires-python = ">=3.13"
11
+ dependencies = []
12
+
13
+ [build-system]
14
+ requires = ["uv_build>=0.11.18,<0.12.0"]
15
+ build-backend = "uv_build"
16
+
17
+ [dependency-groups]
18
+ dev = [
19
+ "grpcio-tools>=1.81.1",
20
+ ]
@@ -0,0 +1,2 @@
1
+ from .rover_pb2 import *
2
+ from .rover_pb2_grpc import *
File without changes
@@ -0,0 +1,62 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # NO CHECKED-IN PROTOBUF GENCODE
4
+ # source: rover.proto
5
+ # Protobuf Python Version: 6.33.5
6
+ """Generated protocol buffer code."""
7
+ from google.protobuf import descriptor as _descriptor
8
+ from google.protobuf import descriptor_pool as _descriptor_pool
9
+ from google.protobuf import runtime_version as _runtime_version
10
+ from google.protobuf import symbol_database as _symbol_database
11
+ from google.protobuf.internal import builder as _builder
12
+ _runtime_version.ValidateProtobufRuntimeVersion(
13
+ _runtime_version.Domain.PUBLIC,
14
+ 6,
15
+ 33,
16
+ 5,
17
+ '',
18
+ 'rover.proto'
19
+ )
20
+ # @@protoc_insertion_point(imports)
21
+
22
+ _sym_db = _symbol_database.Default()
23
+
24
+
25
+
26
+
27
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0brover.proto\x12\x05rover\"2\n\x0fVelocityCommand\x12\x0e\n\x06linear\x18\x01 \x01(\x02\x12\x0f\n\x07\x61ngular\x18\x02 \x01(\x02\"2\n\x13\x44ifferentialCommand\x12\x0c\n\x04left\x18\x01 \x01(\x02\x12\r\n\x05right\x18\x02 \x01(\x02\"Y\n\x0bGotoCommand\x12\x10\n\x08target_x\x18\x01 \x01(\x02\x12\x10\n\x08target_y\x18\x02 \x01(\x02\x12\x17\n\ntarget_yaw\x18\x03 \x01(\x02H\x00\x88\x01\x01\x42\r\n\x0b_target_yaw\"3\n\x07GotoAck\x12\x10\n\x08\x61\x63\x63\x65pted\x18\x01 \x01(\x08\x12\x16\n\x0e\x65stimated_time\x18\x04 \x01(\x02\"\x8c\x01\n\x0cGotoProgress\x12\x10\n\x08progress\x18\x03 \x01(\x02\x12\x18\n\x10\x64istance_to_goal\x18\x04 \x01(\x02\x12\x15\n\rangle_to_goal\x18\x05 \x01(\x02\x12\x11\n\tcurrent_x\x18\x06 \x01(\x02\x12\x11\n\tcurrent_y\x18\x07 \x01(\x02\x12\x13\n\x0b\x63urrent_yaw\x18\x08 \x01(\x02\"[\n\x11RCChannelsCommand\x12\x10\n\x08\x63hannel1\x18\x01 \x01(\x05\x12\x10\n\x08\x63hannel2\x18\x02 \x01(\x05\x12\x10\n\x08\x63hannel3\x18\x03 \x01(\x05\x12\x10\n\x08\x63hannel4\x18\x04 \x01(\x05\"-\n\nLedCommand\x12\t\n\x01r\x18\x01 \x01(\r\x12\t\n\x01g\x18\x02 \x01(\r\x12\t\n\x01\x62\x18\x03 \x01(\r\"@\n\x10LedCustomCommand\x12\x0e\n\x06\x63olor1\x18\x01 \x03(\x05\x12\x0e\n\x06\x63olor2\x18\x02 \x03(\x05\x12\x0c\n\x04mode\x18\x03 \x01(\x05\"E\n\rTelemetryData\x12\x10\n\x08position\x18\x01 \x03(\x02\x12\x10\n\x08velocity\x18\x02 \x03(\x02\x12\x10\n\x08\x61ttitude\x18\x03 \x03(\x02\"z\n\x0bRoverStatus\x12\x14\n\x0cis_connected\x18\x01 \x01(\x08\x12\x0c\n\x04mode\x18\x02 \x01(\t\x12\r\n\x05state\x18\x03 \x01(\t\x12\x0e\n\x06uptime\x18\x04 \x01(\x03\x12\x18\n\x10\x66irmware_version\x18\x05 \x01(\t\x12\x0e\n\x06\x65rrors\x18\x06 \x03(\t\"2\n\x0b\x42\x61tteryData\x12\x0f\n\x07voltage\x18\x01 \x01(\x02\x12\x12\n\npercentage\x18\x02 \x01(\x05\"B\n\nCommandAck\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\x12\n\nerror_code\x18\x03 \x01(\t\"\x07\n\x05\x45mpty2\xc8\x08\n\x0cRoverService\x12\x39\n\x0cset_velocity\x12\x16.rover.VelocityCommand\x1a\x11.rover.CommandAck\x12G\n\x16set_differential_speed\x12\x1a.rover.DifferentialCommand\x1a\x11.rover.CommandAck\x12>\n\x0fset_rc_channels\x12\x18.rover.RCChannelsCommand\x1a\x11.rover.CommandAck\x12\x45\n\x12stream_rc_channels\x12\x18.rover.RCChannelsCommand\x1a\x11.rover.CommandAck(\x01\x30\x01\x12\'\n\x04stop\x12\x0c.rover.Empty\x1a\x11.rover.CommandAck\x12*\n\x04goto\x12\x12.rover.GotoCommand\x1a\x0e.rover.GotoAck\x12\x41\n\x14goto_stream_position\x12\x12.rover.GotoCommand\x1a\x13.rover.GotoProgress0\x01\x12.\n\x0bgoto_cancel\x12\x0c.rover.Empty\x1a\x11.rover.CommandAck\x12\x30\n\x0bgoto_status\x12\x0c.rover.Empty\x1a\x13.rover.GotoProgress\x12\x33\n\x0bled_control\x12\x11.rover.LedCommand\x1a\x11.rover.CommandAck\x12\x38\n\nled_custom\x12\x17.rover.LedCustomCommand\x1a\x11.rover.CommandAck\x12\'\n\x04\x62\x65\x65p\x12\x0c.rover.Empty\x1a\x11.rover.CommandAck\x12&\n\x03moo\x12\x0c.rover.Empty\x1a\x11.rover.CommandAck\x12\x33\n\rget_telemetry\x12\x0c.rover.Empty\x1a\x14.rover.TelemetryData\x12\x38\n\x10stream_telemetry\x12\x0c.rover.Empty\x1a\x14.rover.TelemetryData0\x01\x12.\n\nget_status\x12\x0c.rover.Empty\x1a\x12.rover.RoverStatus\x12\x36\n\x12get_battery_status\x12\x0c.rover.Empty\x1a\x12.rover.BatteryData\x12\x31\n\x0e\x65mergency_stop\x12\x0c.rover.Empty\x1a\x11.rover.CommandAck\x12/\n\x0creboot_board\x12\x0c.rover.Empty\x1a\x11.rover.CommandAck\x12\x38\n\x15reboot_compute_module\x12\x0c.rover.Empty\x1a\x11.rover.CommandAckb\x06proto3')
28
+
29
+ _globals = globals()
30
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
31
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'rover_pb2', _globals)
32
+ if not _descriptor._USE_C_DESCRIPTORS:
33
+ DESCRIPTOR._loaded_options = None
34
+ _globals['_VELOCITYCOMMAND']._serialized_start=22
35
+ _globals['_VELOCITYCOMMAND']._serialized_end=72
36
+ _globals['_DIFFERENTIALCOMMAND']._serialized_start=74
37
+ _globals['_DIFFERENTIALCOMMAND']._serialized_end=124
38
+ _globals['_GOTOCOMMAND']._serialized_start=126
39
+ _globals['_GOTOCOMMAND']._serialized_end=215
40
+ _globals['_GOTOACK']._serialized_start=217
41
+ _globals['_GOTOACK']._serialized_end=268
42
+ _globals['_GOTOPROGRESS']._serialized_start=271
43
+ _globals['_GOTOPROGRESS']._serialized_end=411
44
+ _globals['_RCCHANNELSCOMMAND']._serialized_start=413
45
+ _globals['_RCCHANNELSCOMMAND']._serialized_end=504
46
+ _globals['_LEDCOMMAND']._serialized_start=506
47
+ _globals['_LEDCOMMAND']._serialized_end=551
48
+ _globals['_LEDCUSTOMCOMMAND']._serialized_start=553
49
+ _globals['_LEDCUSTOMCOMMAND']._serialized_end=617
50
+ _globals['_TELEMETRYDATA']._serialized_start=619
51
+ _globals['_TELEMETRYDATA']._serialized_end=688
52
+ _globals['_ROVERSTATUS']._serialized_start=690
53
+ _globals['_ROVERSTATUS']._serialized_end=812
54
+ _globals['_BATTERYDATA']._serialized_start=814
55
+ _globals['_BATTERYDATA']._serialized_end=864
56
+ _globals['_COMMANDACK']._serialized_start=866
57
+ _globals['_COMMANDACK']._serialized_end=932
58
+ _globals['_EMPTY']._serialized_start=934
59
+ _globals['_EMPTY']._serialized_end=941
60
+ _globals['_ROVERSERVICE']._serialized_start=944
61
+ _globals['_ROVERSERVICE']._serialized_end=2040
62
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,137 @@
1
+ from google.protobuf.internal import containers as _containers
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from collections.abc import Iterable as _Iterable
5
+ from typing import ClassVar as _ClassVar, Optional as _Optional
6
+
7
+ DESCRIPTOR: _descriptor.FileDescriptor
8
+
9
+ class VelocityCommand(_message.Message):
10
+ __slots__ = ("linear", "angular")
11
+ LINEAR_FIELD_NUMBER: _ClassVar[int]
12
+ ANGULAR_FIELD_NUMBER: _ClassVar[int]
13
+ linear: float
14
+ angular: float
15
+ def __init__(self, linear: _Optional[float] = ..., angular: _Optional[float] = ...) -> None: ...
16
+
17
+ class DifferentialCommand(_message.Message):
18
+ __slots__ = ("left", "right")
19
+ LEFT_FIELD_NUMBER: _ClassVar[int]
20
+ RIGHT_FIELD_NUMBER: _ClassVar[int]
21
+ left: float
22
+ right: float
23
+ def __init__(self, left: _Optional[float] = ..., right: _Optional[float] = ...) -> None: ...
24
+
25
+ class GotoCommand(_message.Message):
26
+ __slots__ = ("target_x", "target_y", "target_yaw")
27
+ TARGET_X_FIELD_NUMBER: _ClassVar[int]
28
+ TARGET_Y_FIELD_NUMBER: _ClassVar[int]
29
+ TARGET_YAW_FIELD_NUMBER: _ClassVar[int]
30
+ target_x: float
31
+ target_y: float
32
+ target_yaw: float
33
+ def __init__(self, target_x: _Optional[float] = ..., target_y: _Optional[float] = ..., target_yaw: _Optional[float] = ...) -> None: ...
34
+
35
+ class GotoAck(_message.Message):
36
+ __slots__ = ("accepted", "estimated_time")
37
+ ACCEPTED_FIELD_NUMBER: _ClassVar[int]
38
+ ESTIMATED_TIME_FIELD_NUMBER: _ClassVar[int]
39
+ accepted: bool
40
+ estimated_time: float
41
+ def __init__(self, accepted: _Optional[bool] = ..., estimated_time: _Optional[float] = ...) -> None: ...
42
+
43
+ class GotoProgress(_message.Message):
44
+ __slots__ = ("progress", "distance_to_goal", "angle_to_goal", "current_x", "current_y", "current_yaw")
45
+ PROGRESS_FIELD_NUMBER: _ClassVar[int]
46
+ DISTANCE_TO_GOAL_FIELD_NUMBER: _ClassVar[int]
47
+ ANGLE_TO_GOAL_FIELD_NUMBER: _ClassVar[int]
48
+ CURRENT_X_FIELD_NUMBER: _ClassVar[int]
49
+ CURRENT_Y_FIELD_NUMBER: _ClassVar[int]
50
+ CURRENT_YAW_FIELD_NUMBER: _ClassVar[int]
51
+ progress: float
52
+ distance_to_goal: float
53
+ angle_to_goal: float
54
+ current_x: float
55
+ current_y: float
56
+ current_yaw: float
57
+ def __init__(self, progress: _Optional[float] = ..., distance_to_goal: _Optional[float] = ..., angle_to_goal: _Optional[float] = ..., current_x: _Optional[float] = ..., current_y: _Optional[float] = ..., current_yaw: _Optional[float] = ...) -> None: ...
58
+
59
+ class RCChannelsCommand(_message.Message):
60
+ __slots__ = ("channel1", "channel2", "channel3", "channel4")
61
+ CHANNEL1_FIELD_NUMBER: _ClassVar[int]
62
+ CHANNEL2_FIELD_NUMBER: _ClassVar[int]
63
+ CHANNEL3_FIELD_NUMBER: _ClassVar[int]
64
+ CHANNEL4_FIELD_NUMBER: _ClassVar[int]
65
+ channel1: int
66
+ channel2: int
67
+ channel3: int
68
+ channel4: int
69
+ def __init__(self, channel1: _Optional[int] = ..., channel2: _Optional[int] = ..., channel3: _Optional[int] = ..., channel4: _Optional[int] = ...) -> None: ...
70
+
71
+ class LedCommand(_message.Message):
72
+ __slots__ = ("r", "g", "b")
73
+ R_FIELD_NUMBER: _ClassVar[int]
74
+ G_FIELD_NUMBER: _ClassVar[int]
75
+ B_FIELD_NUMBER: _ClassVar[int]
76
+ r: int
77
+ g: int
78
+ b: int
79
+ def __init__(self, r: _Optional[int] = ..., g: _Optional[int] = ..., b: _Optional[int] = ...) -> None: ...
80
+
81
+ class LedCustomCommand(_message.Message):
82
+ __slots__ = ("color1", "color2", "mode")
83
+ COLOR1_FIELD_NUMBER: _ClassVar[int]
84
+ COLOR2_FIELD_NUMBER: _ClassVar[int]
85
+ MODE_FIELD_NUMBER: _ClassVar[int]
86
+ color1: _containers.RepeatedScalarFieldContainer[int]
87
+ color2: _containers.RepeatedScalarFieldContainer[int]
88
+ mode: int
89
+ def __init__(self, color1: _Optional[_Iterable[int]] = ..., color2: _Optional[_Iterable[int]] = ..., mode: _Optional[int] = ...) -> None: ...
90
+
91
+ class TelemetryData(_message.Message):
92
+ __slots__ = ("position", "velocity", "attitude")
93
+ POSITION_FIELD_NUMBER: _ClassVar[int]
94
+ VELOCITY_FIELD_NUMBER: _ClassVar[int]
95
+ ATTITUDE_FIELD_NUMBER: _ClassVar[int]
96
+ position: _containers.RepeatedScalarFieldContainer[float]
97
+ velocity: _containers.RepeatedScalarFieldContainer[float]
98
+ attitude: _containers.RepeatedScalarFieldContainer[float]
99
+ def __init__(self, position: _Optional[_Iterable[float]] = ..., velocity: _Optional[_Iterable[float]] = ..., attitude: _Optional[_Iterable[float]] = ...) -> None: ...
100
+
101
+ class RoverStatus(_message.Message):
102
+ __slots__ = ("is_connected", "mode", "state", "uptime", "firmware_version", "errors")
103
+ IS_CONNECTED_FIELD_NUMBER: _ClassVar[int]
104
+ MODE_FIELD_NUMBER: _ClassVar[int]
105
+ STATE_FIELD_NUMBER: _ClassVar[int]
106
+ UPTIME_FIELD_NUMBER: _ClassVar[int]
107
+ FIRMWARE_VERSION_FIELD_NUMBER: _ClassVar[int]
108
+ ERRORS_FIELD_NUMBER: _ClassVar[int]
109
+ is_connected: bool
110
+ mode: str
111
+ state: str
112
+ uptime: int
113
+ firmware_version: str
114
+ errors: _containers.RepeatedScalarFieldContainer[str]
115
+ def __init__(self, is_connected: _Optional[bool] = ..., mode: _Optional[str] = ..., state: _Optional[str] = ..., uptime: _Optional[int] = ..., firmware_version: _Optional[str] = ..., errors: _Optional[_Iterable[str]] = ...) -> None: ...
116
+
117
+ class BatteryData(_message.Message):
118
+ __slots__ = ("voltage", "percentage")
119
+ VOLTAGE_FIELD_NUMBER: _ClassVar[int]
120
+ PERCENTAGE_FIELD_NUMBER: _ClassVar[int]
121
+ voltage: float
122
+ percentage: int
123
+ def __init__(self, voltage: _Optional[float] = ..., percentage: _Optional[int] = ...) -> None: ...
124
+
125
+ class CommandAck(_message.Message):
126
+ __slots__ = ("success", "message", "error_code")
127
+ SUCCESS_FIELD_NUMBER: _ClassVar[int]
128
+ MESSAGE_FIELD_NUMBER: _ClassVar[int]
129
+ ERROR_CODE_FIELD_NUMBER: _ClassVar[int]
130
+ success: bool
131
+ message: str
132
+ error_code: str
133
+ def __init__(self, success: _Optional[bool] = ..., message: _Optional[str] = ..., error_code: _Optional[str] = ...) -> None: ...
134
+
135
+ class Empty(_message.Message):
136
+ __slots__ = ()
137
+ def __init__(self) -> None: ...
@@ -0,0 +1,918 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+ import warnings
5
+
6
+ from . import rover_pb2 as rover__pb2
7
+
8
+ GRPC_GENERATED_VERSION = '1.81.1'
9
+ GRPC_VERSION = grpc.__version__
10
+ _version_not_supported = False
11
+
12
+ try:
13
+ from grpc._utilities import first_version_is_lower
14
+ _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
15
+ except ImportError:
16
+ _version_not_supported = True
17
+
18
+ if _version_not_supported:
19
+ raise RuntimeError(
20
+ f'The grpc package installed is at version {GRPC_VERSION},'
21
+ + ' but the generated code in rover_pb2_grpc.py depends on'
22
+ + f' grpcio>={GRPC_GENERATED_VERSION}.'
23
+ + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
24
+ + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
25
+ )
26
+
27
+
28
+ class RoverServiceStub:
29
+ """Missing associated documentation comment in .proto file."""
30
+
31
+ def __init__(self, channel):
32
+ """Constructor.
33
+
34
+ Args:
35
+ channel: A grpc.Channel.
36
+ """
37
+ self.set_velocity = channel.unary_unary(
38
+ '/rover.RoverService/set_velocity',
39
+ request_serializer=rover__pb2.VelocityCommand.SerializeToString,
40
+ response_deserializer=rover__pb2.CommandAck.FromString,
41
+ _registered_method=True)
42
+ self.set_differential_speed = channel.unary_unary(
43
+ '/rover.RoverService/set_differential_speed',
44
+ request_serializer=rover__pb2.DifferentialCommand.SerializeToString,
45
+ response_deserializer=rover__pb2.CommandAck.FromString,
46
+ _registered_method=True)
47
+ self.set_rc_channels = channel.unary_unary(
48
+ '/rover.RoverService/set_rc_channels',
49
+ request_serializer=rover__pb2.RCChannelsCommand.SerializeToString,
50
+ response_deserializer=rover__pb2.CommandAck.FromString,
51
+ _registered_method=True)
52
+ self.stream_rc_channels = channel.stream_stream(
53
+ '/rover.RoverService/stream_rc_channels',
54
+ request_serializer=rover__pb2.RCChannelsCommand.SerializeToString,
55
+ response_deserializer=rover__pb2.CommandAck.FromString,
56
+ _registered_method=True)
57
+ self.stop = channel.unary_unary(
58
+ '/rover.RoverService/stop',
59
+ request_serializer=rover__pb2.Empty.SerializeToString,
60
+ response_deserializer=rover__pb2.CommandAck.FromString,
61
+ _registered_method=True)
62
+ self.goto = channel.unary_unary(
63
+ '/rover.RoverService/goto',
64
+ request_serializer=rover__pb2.GotoCommand.SerializeToString,
65
+ response_deserializer=rover__pb2.GotoAck.FromString,
66
+ _registered_method=True)
67
+ self.goto_stream_position = channel.unary_stream(
68
+ '/rover.RoverService/goto_stream_position',
69
+ request_serializer=rover__pb2.GotoCommand.SerializeToString,
70
+ response_deserializer=rover__pb2.GotoProgress.FromString,
71
+ _registered_method=True)
72
+ self.goto_cancel = channel.unary_unary(
73
+ '/rover.RoverService/goto_cancel',
74
+ request_serializer=rover__pb2.Empty.SerializeToString,
75
+ response_deserializer=rover__pb2.CommandAck.FromString,
76
+ _registered_method=True)
77
+ self.goto_status = channel.unary_unary(
78
+ '/rover.RoverService/goto_status',
79
+ request_serializer=rover__pb2.Empty.SerializeToString,
80
+ response_deserializer=rover__pb2.GotoProgress.FromString,
81
+ _registered_method=True)
82
+ self.led_control = channel.unary_unary(
83
+ '/rover.RoverService/led_control',
84
+ request_serializer=rover__pb2.LedCommand.SerializeToString,
85
+ response_deserializer=rover__pb2.CommandAck.FromString,
86
+ _registered_method=True)
87
+ self.led_custom = channel.unary_unary(
88
+ '/rover.RoverService/led_custom',
89
+ request_serializer=rover__pb2.LedCustomCommand.SerializeToString,
90
+ response_deserializer=rover__pb2.CommandAck.FromString,
91
+ _registered_method=True)
92
+ self.beep = channel.unary_unary(
93
+ '/rover.RoverService/beep',
94
+ request_serializer=rover__pb2.Empty.SerializeToString,
95
+ response_deserializer=rover__pb2.CommandAck.FromString,
96
+ _registered_method=True)
97
+ self.moo = channel.unary_unary(
98
+ '/rover.RoverService/moo',
99
+ request_serializer=rover__pb2.Empty.SerializeToString,
100
+ response_deserializer=rover__pb2.CommandAck.FromString,
101
+ _registered_method=True)
102
+ self.get_telemetry = channel.unary_unary(
103
+ '/rover.RoverService/get_telemetry',
104
+ request_serializer=rover__pb2.Empty.SerializeToString,
105
+ response_deserializer=rover__pb2.TelemetryData.FromString,
106
+ _registered_method=True)
107
+ self.stream_telemetry = channel.unary_stream(
108
+ '/rover.RoverService/stream_telemetry',
109
+ request_serializer=rover__pb2.Empty.SerializeToString,
110
+ response_deserializer=rover__pb2.TelemetryData.FromString,
111
+ _registered_method=True)
112
+ self.get_status = channel.unary_unary(
113
+ '/rover.RoverService/get_status',
114
+ request_serializer=rover__pb2.Empty.SerializeToString,
115
+ response_deserializer=rover__pb2.RoverStatus.FromString,
116
+ _registered_method=True)
117
+ self.get_battery_status = channel.unary_unary(
118
+ '/rover.RoverService/get_battery_status',
119
+ request_serializer=rover__pb2.Empty.SerializeToString,
120
+ response_deserializer=rover__pb2.BatteryData.FromString,
121
+ _registered_method=True)
122
+ self.emergency_stop = channel.unary_unary(
123
+ '/rover.RoverService/emergency_stop',
124
+ request_serializer=rover__pb2.Empty.SerializeToString,
125
+ response_deserializer=rover__pb2.CommandAck.FromString,
126
+ _registered_method=True)
127
+ self.reboot_board = channel.unary_unary(
128
+ '/rover.RoverService/reboot_board',
129
+ request_serializer=rover__pb2.Empty.SerializeToString,
130
+ response_deserializer=rover__pb2.CommandAck.FromString,
131
+ _registered_method=True)
132
+ self.reboot_compute_module = channel.unary_unary(
133
+ '/rover.RoverService/reboot_compute_module',
134
+ request_serializer=rover__pb2.Empty.SerializeToString,
135
+ response_deserializer=rover__pb2.CommandAck.FromString,
136
+ _registered_method=True)
137
+
138
+
139
+ class RoverServiceServicer:
140
+ """Missing associated documentation comment in .proto file."""
141
+
142
+ def set_velocity(self, request, context):
143
+ """Управление движением
144
+ """
145
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
146
+ context.set_details('Method not implemented!')
147
+ raise NotImplementedError('Method not implemented!')
148
+
149
+ def set_differential_speed(self, request, context):
150
+ """Missing associated documentation comment in .proto file."""
151
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
152
+ context.set_details('Method not implemented!')
153
+ raise NotImplementedError('Method not implemented!')
154
+
155
+ def set_rc_channels(self, request, context):
156
+ """Missing associated documentation comment in .proto file."""
157
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
158
+ context.set_details('Method not implemented!')
159
+ raise NotImplementedError('Method not implemented!')
160
+
161
+ def stream_rc_channels(self, request_iterator, context):
162
+ """Missing associated documentation comment in .proto file."""
163
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
164
+ context.set_details('Method not implemented!')
165
+ raise NotImplementedError('Method not implemented!')
166
+
167
+ def stop(self, request, context):
168
+ """Missing associated documentation comment in .proto file."""
169
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
170
+ context.set_details('Method not implemented!')
171
+ raise NotImplementedError('Method not implemented!')
172
+
173
+ def goto(self, request, context):
174
+ """Missing associated documentation comment in .proto file."""
175
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
176
+ context.set_details('Method not implemented!')
177
+ raise NotImplementedError('Method not implemented!')
178
+
179
+ def goto_stream_position(self, request, context):
180
+ """Missing associated documentation comment in .proto file."""
181
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
182
+ context.set_details('Method not implemented!')
183
+ raise NotImplementedError('Method not implemented!')
184
+
185
+ def goto_cancel(self, request, context):
186
+ """Missing associated documentation comment in .proto file."""
187
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
188
+ context.set_details('Method not implemented!')
189
+ raise NotImplementedError('Method not implemented!')
190
+
191
+ def goto_status(self, request, context):
192
+ """Missing associated documentation comment in .proto file."""
193
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
194
+ context.set_details('Method not implemented!')
195
+ raise NotImplementedError('Method not implemented!')
196
+
197
+ def led_control(self, request, context):
198
+ """Управление периферией
199
+ """
200
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
201
+ context.set_details('Method not implemented!')
202
+ raise NotImplementedError('Method not implemented!')
203
+
204
+ def led_custom(self, request, context):
205
+ """Missing associated documentation comment in .proto file."""
206
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
207
+ context.set_details('Method not implemented!')
208
+ raise NotImplementedError('Method not implemented!')
209
+
210
+ def beep(self, request, context):
211
+ """Missing associated documentation comment in .proto file."""
212
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
213
+ context.set_details('Method not implemented!')
214
+ raise NotImplementedError('Method not implemented!')
215
+
216
+ def moo(self, request, context):
217
+ """Missing associated documentation comment in .proto file."""
218
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
219
+ context.set_details('Method not implemented!')
220
+ raise NotImplementedError('Method not implemented!')
221
+
222
+ def get_telemetry(self, request, context):
223
+ """Получение данных
224
+ """
225
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
226
+ context.set_details('Method not implemented!')
227
+ raise NotImplementedError('Method not implemented!')
228
+
229
+ def stream_telemetry(self, request, context):
230
+ """Missing associated documentation comment in .proto file."""
231
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
232
+ context.set_details('Method not implemented!')
233
+ raise NotImplementedError('Method not implemented!')
234
+
235
+ def get_status(self, request, context):
236
+ """Missing associated documentation comment in .proto file."""
237
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
238
+ context.set_details('Method not implemented!')
239
+ raise NotImplementedError('Method not implemented!')
240
+
241
+ def get_battery_status(self, request, context):
242
+ """Missing associated documentation comment in .proto file."""
243
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
244
+ context.set_details('Method not implemented!')
245
+ raise NotImplementedError('Method not implemented!')
246
+
247
+ def emergency_stop(self, request, context):
248
+ """Доп методы
249
+ """
250
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
251
+ context.set_details('Method not implemented!')
252
+ raise NotImplementedError('Method not implemented!')
253
+
254
+ def reboot_board(self, request, context):
255
+ """Missing associated documentation comment in .proto file."""
256
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
257
+ context.set_details('Method not implemented!')
258
+ raise NotImplementedError('Method not implemented!')
259
+
260
+ def reboot_compute_module(self, request, context):
261
+ """Missing associated documentation comment in .proto file."""
262
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
263
+ context.set_details('Method not implemented!')
264
+ raise NotImplementedError('Method not implemented!')
265
+
266
+
267
+ def add_RoverServiceServicer_to_server(servicer, server):
268
+ rpc_method_handlers = {
269
+ 'set_velocity': grpc.unary_unary_rpc_method_handler(
270
+ servicer.set_velocity,
271
+ request_deserializer=rover__pb2.VelocityCommand.FromString,
272
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
273
+ ),
274
+ 'set_differential_speed': grpc.unary_unary_rpc_method_handler(
275
+ servicer.set_differential_speed,
276
+ request_deserializer=rover__pb2.DifferentialCommand.FromString,
277
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
278
+ ),
279
+ 'set_rc_channels': grpc.unary_unary_rpc_method_handler(
280
+ servicer.set_rc_channels,
281
+ request_deserializer=rover__pb2.RCChannelsCommand.FromString,
282
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
283
+ ),
284
+ 'stream_rc_channels': grpc.stream_stream_rpc_method_handler(
285
+ servicer.stream_rc_channels,
286
+ request_deserializer=rover__pb2.RCChannelsCommand.FromString,
287
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
288
+ ),
289
+ 'stop': grpc.unary_unary_rpc_method_handler(
290
+ servicer.stop,
291
+ request_deserializer=rover__pb2.Empty.FromString,
292
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
293
+ ),
294
+ 'goto': grpc.unary_unary_rpc_method_handler(
295
+ servicer.goto,
296
+ request_deserializer=rover__pb2.GotoCommand.FromString,
297
+ response_serializer=rover__pb2.GotoAck.SerializeToString,
298
+ ),
299
+ 'goto_stream_position': grpc.unary_stream_rpc_method_handler(
300
+ servicer.goto_stream_position,
301
+ request_deserializer=rover__pb2.GotoCommand.FromString,
302
+ response_serializer=rover__pb2.GotoProgress.SerializeToString,
303
+ ),
304
+ 'goto_cancel': grpc.unary_unary_rpc_method_handler(
305
+ servicer.goto_cancel,
306
+ request_deserializer=rover__pb2.Empty.FromString,
307
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
308
+ ),
309
+ 'goto_status': grpc.unary_unary_rpc_method_handler(
310
+ servicer.goto_status,
311
+ request_deserializer=rover__pb2.Empty.FromString,
312
+ response_serializer=rover__pb2.GotoProgress.SerializeToString,
313
+ ),
314
+ 'led_control': grpc.unary_unary_rpc_method_handler(
315
+ servicer.led_control,
316
+ request_deserializer=rover__pb2.LedCommand.FromString,
317
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
318
+ ),
319
+ 'led_custom': grpc.unary_unary_rpc_method_handler(
320
+ servicer.led_custom,
321
+ request_deserializer=rover__pb2.LedCustomCommand.FromString,
322
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
323
+ ),
324
+ 'beep': grpc.unary_unary_rpc_method_handler(
325
+ servicer.beep,
326
+ request_deserializer=rover__pb2.Empty.FromString,
327
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
328
+ ),
329
+ 'moo': grpc.unary_unary_rpc_method_handler(
330
+ servicer.moo,
331
+ request_deserializer=rover__pb2.Empty.FromString,
332
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
333
+ ),
334
+ 'get_telemetry': grpc.unary_unary_rpc_method_handler(
335
+ servicer.get_telemetry,
336
+ request_deserializer=rover__pb2.Empty.FromString,
337
+ response_serializer=rover__pb2.TelemetryData.SerializeToString,
338
+ ),
339
+ 'stream_telemetry': grpc.unary_stream_rpc_method_handler(
340
+ servicer.stream_telemetry,
341
+ request_deserializer=rover__pb2.Empty.FromString,
342
+ response_serializer=rover__pb2.TelemetryData.SerializeToString,
343
+ ),
344
+ 'get_status': grpc.unary_unary_rpc_method_handler(
345
+ servicer.get_status,
346
+ request_deserializer=rover__pb2.Empty.FromString,
347
+ response_serializer=rover__pb2.RoverStatus.SerializeToString,
348
+ ),
349
+ 'get_battery_status': grpc.unary_unary_rpc_method_handler(
350
+ servicer.get_battery_status,
351
+ request_deserializer=rover__pb2.Empty.FromString,
352
+ response_serializer=rover__pb2.BatteryData.SerializeToString,
353
+ ),
354
+ 'emergency_stop': grpc.unary_unary_rpc_method_handler(
355
+ servicer.emergency_stop,
356
+ request_deserializer=rover__pb2.Empty.FromString,
357
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
358
+ ),
359
+ 'reboot_board': grpc.unary_unary_rpc_method_handler(
360
+ servicer.reboot_board,
361
+ request_deserializer=rover__pb2.Empty.FromString,
362
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
363
+ ),
364
+ 'reboot_compute_module': grpc.unary_unary_rpc_method_handler(
365
+ servicer.reboot_compute_module,
366
+ request_deserializer=rover__pb2.Empty.FromString,
367
+ response_serializer=rover__pb2.CommandAck.SerializeToString,
368
+ ),
369
+ }
370
+ generic_handler = grpc.method_handlers_generic_handler(
371
+ 'rover.RoverService', rpc_method_handlers)
372
+ server.add_generic_rpc_handlers((generic_handler,))
373
+ server.add_registered_method_handlers('rover.RoverService', rpc_method_handlers)
374
+
375
+
376
+ # This class is part of an EXPERIMENTAL API.
377
+ class RoverService:
378
+ """Missing associated documentation comment in .proto file."""
379
+
380
+ @staticmethod
381
+ def set_velocity(request,
382
+ target,
383
+ options=(),
384
+ channel_credentials=None,
385
+ call_credentials=None,
386
+ insecure=False,
387
+ compression=None,
388
+ wait_for_ready=None,
389
+ timeout=None,
390
+ metadata=None):
391
+ return grpc.experimental.unary_unary(
392
+ request,
393
+ target,
394
+ '/rover.RoverService/set_velocity',
395
+ rover__pb2.VelocityCommand.SerializeToString,
396
+ rover__pb2.CommandAck.FromString,
397
+ options,
398
+ channel_credentials,
399
+ insecure,
400
+ call_credentials,
401
+ compression,
402
+ wait_for_ready,
403
+ timeout,
404
+ metadata,
405
+ _registered_method=True)
406
+
407
+ @staticmethod
408
+ def set_differential_speed(request,
409
+ target,
410
+ options=(),
411
+ channel_credentials=None,
412
+ call_credentials=None,
413
+ insecure=False,
414
+ compression=None,
415
+ wait_for_ready=None,
416
+ timeout=None,
417
+ metadata=None):
418
+ return grpc.experimental.unary_unary(
419
+ request,
420
+ target,
421
+ '/rover.RoverService/set_differential_speed',
422
+ rover__pb2.DifferentialCommand.SerializeToString,
423
+ rover__pb2.CommandAck.FromString,
424
+ options,
425
+ channel_credentials,
426
+ insecure,
427
+ call_credentials,
428
+ compression,
429
+ wait_for_ready,
430
+ timeout,
431
+ metadata,
432
+ _registered_method=True)
433
+
434
+ @staticmethod
435
+ def set_rc_channels(request,
436
+ target,
437
+ options=(),
438
+ channel_credentials=None,
439
+ call_credentials=None,
440
+ insecure=False,
441
+ compression=None,
442
+ wait_for_ready=None,
443
+ timeout=None,
444
+ metadata=None):
445
+ return grpc.experimental.unary_unary(
446
+ request,
447
+ target,
448
+ '/rover.RoverService/set_rc_channels',
449
+ rover__pb2.RCChannelsCommand.SerializeToString,
450
+ rover__pb2.CommandAck.FromString,
451
+ options,
452
+ channel_credentials,
453
+ insecure,
454
+ call_credentials,
455
+ compression,
456
+ wait_for_ready,
457
+ timeout,
458
+ metadata,
459
+ _registered_method=True)
460
+
461
+ @staticmethod
462
+ def stream_rc_channels(request_iterator,
463
+ target,
464
+ options=(),
465
+ channel_credentials=None,
466
+ call_credentials=None,
467
+ insecure=False,
468
+ compression=None,
469
+ wait_for_ready=None,
470
+ timeout=None,
471
+ metadata=None):
472
+ return grpc.experimental.stream_stream(
473
+ request_iterator,
474
+ target,
475
+ '/rover.RoverService/stream_rc_channels',
476
+ rover__pb2.RCChannelsCommand.SerializeToString,
477
+ rover__pb2.CommandAck.FromString,
478
+ options,
479
+ channel_credentials,
480
+ insecure,
481
+ call_credentials,
482
+ compression,
483
+ wait_for_ready,
484
+ timeout,
485
+ metadata,
486
+ _registered_method=True)
487
+
488
+ @staticmethod
489
+ def stop(request,
490
+ target,
491
+ options=(),
492
+ channel_credentials=None,
493
+ call_credentials=None,
494
+ insecure=False,
495
+ compression=None,
496
+ wait_for_ready=None,
497
+ timeout=None,
498
+ metadata=None):
499
+ return grpc.experimental.unary_unary(
500
+ request,
501
+ target,
502
+ '/rover.RoverService/stop',
503
+ rover__pb2.Empty.SerializeToString,
504
+ rover__pb2.CommandAck.FromString,
505
+ options,
506
+ channel_credentials,
507
+ insecure,
508
+ call_credentials,
509
+ compression,
510
+ wait_for_ready,
511
+ timeout,
512
+ metadata,
513
+ _registered_method=True)
514
+
515
+ @staticmethod
516
+ def goto(request,
517
+ target,
518
+ options=(),
519
+ channel_credentials=None,
520
+ call_credentials=None,
521
+ insecure=False,
522
+ compression=None,
523
+ wait_for_ready=None,
524
+ timeout=None,
525
+ metadata=None):
526
+ return grpc.experimental.unary_unary(
527
+ request,
528
+ target,
529
+ '/rover.RoverService/goto',
530
+ rover__pb2.GotoCommand.SerializeToString,
531
+ rover__pb2.GotoAck.FromString,
532
+ options,
533
+ channel_credentials,
534
+ insecure,
535
+ call_credentials,
536
+ compression,
537
+ wait_for_ready,
538
+ timeout,
539
+ metadata,
540
+ _registered_method=True)
541
+
542
+ @staticmethod
543
+ def goto_stream_position(request,
544
+ target,
545
+ options=(),
546
+ channel_credentials=None,
547
+ call_credentials=None,
548
+ insecure=False,
549
+ compression=None,
550
+ wait_for_ready=None,
551
+ timeout=None,
552
+ metadata=None):
553
+ return grpc.experimental.unary_stream(
554
+ request,
555
+ target,
556
+ '/rover.RoverService/goto_stream_position',
557
+ rover__pb2.GotoCommand.SerializeToString,
558
+ rover__pb2.GotoProgress.FromString,
559
+ options,
560
+ channel_credentials,
561
+ insecure,
562
+ call_credentials,
563
+ compression,
564
+ wait_for_ready,
565
+ timeout,
566
+ metadata,
567
+ _registered_method=True)
568
+
569
+ @staticmethod
570
+ def goto_cancel(request,
571
+ target,
572
+ options=(),
573
+ channel_credentials=None,
574
+ call_credentials=None,
575
+ insecure=False,
576
+ compression=None,
577
+ wait_for_ready=None,
578
+ timeout=None,
579
+ metadata=None):
580
+ return grpc.experimental.unary_unary(
581
+ request,
582
+ target,
583
+ '/rover.RoverService/goto_cancel',
584
+ rover__pb2.Empty.SerializeToString,
585
+ rover__pb2.CommandAck.FromString,
586
+ options,
587
+ channel_credentials,
588
+ insecure,
589
+ call_credentials,
590
+ compression,
591
+ wait_for_ready,
592
+ timeout,
593
+ metadata,
594
+ _registered_method=True)
595
+
596
+ @staticmethod
597
+ def goto_status(request,
598
+ target,
599
+ options=(),
600
+ channel_credentials=None,
601
+ call_credentials=None,
602
+ insecure=False,
603
+ compression=None,
604
+ wait_for_ready=None,
605
+ timeout=None,
606
+ metadata=None):
607
+ return grpc.experimental.unary_unary(
608
+ request,
609
+ target,
610
+ '/rover.RoverService/goto_status',
611
+ rover__pb2.Empty.SerializeToString,
612
+ rover__pb2.GotoProgress.FromString,
613
+ options,
614
+ channel_credentials,
615
+ insecure,
616
+ call_credentials,
617
+ compression,
618
+ wait_for_ready,
619
+ timeout,
620
+ metadata,
621
+ _registered_method=True)
622
+
623
+ @staticmethod
624
+ def led_control(request,
625
+ target,
626
+ options=(),
627
+ channel_credentials=None,
628
+ call_credentials=None,
629
+ insecure=False,
630
+ compression=None,
631
+ wait_for_ready=None,
632
+ timeout=None,
633
+ metadata=None):
634
+ return grpc.experimental.unary_unary(
635
+ request,
636
+ target,
637
+ '/rover.RoverService/led_control',
638
+ rover__pb2.LedCommand.SerializeToString,
639
+ rover__pb2.CommandAck.FromString,
640
+ options,
641
+ channel_credentials,
642
+ insecure,
643
+ call_credentials,
644
+ compression,
645
+ wait_for_ready,
646
+ timeout,
647
+ metadata,
648
+ _registered_method=True)
649
+
650
+ @staticmethod
651
+ def led_custom(request,
652
+ target,
653
+ options=(),
654
+ channel_credentials=None,
655
+ call_credentials=None,
656
+ insecure=False,
657
+ compression=None,
658
+ wait_for_ready=None,
659
+ timeout=None,
660
+ metadata=None):
661
+ return grpc.experimental.unary_unary(
662
+ request,
663
+ target,
664
+ '/rover.RoverService/led_custom',
665
+ rover__pb2.LedCustomCommand.SerializeToString,
666
+ rover__pb2.CommandAck.FromString,
667
+ options,
668
+ channel_credentials,
669
+ insecure,
670
+ call_credentials,
671
+ compression,
672
+ wait_for_ready,
673
+ timeout,
674
+ metadata,
675
+ _registered_method=True)
676
+
677
+ @staticmethod
678
+ def beep(request,
679
+ target,
680
+ options=(),
681
+ channel_credentials=None,
682
+ call_credentials=None,
683
+ insecure=False,
684
+ compression=None,
685
+ wait_for_ready=None,
686
+ timeout=None,
687
+ metadata=None):
688
+ return grpc.experimental.unary_unary(
689
+ request,
690
+ target,
691
+ '/rover.RoverService/beep',
692
+ rover__pb2.Empty.SerializeToString,
693
+ rover__pb2.CommandAck.FromString,
694
+ options,
695
+ channel_credentials,
696
+ insecure,
697
+ call_credentials,
698
+ compression,
699
+ wait_for_ready,
700
+ timeout,
701
+ metadata,
702
+ _registered_method=True)
703
+
704
+ @staticmethod
705
+ def moo(request,
706
+ target,
707
+ options=(),
708
+ channel_credentials=None,
709
+ call_credentials=None,
710
+ insecure=False,
711
+ compression=None,
712
+ wait_for_ready=None,
713
+ timeout=None,
714
+ metadata=None):
715
+ return grpc.experimental.unary_unary(
716
+ request,
717
+ target,
718
+ '/rover.RoverService/moo',
719
+ rover__pb2.Empty.SerializeToString,
720
+ rover__pb2.CommandAck.FromString,
721
+ options,
722
+ channel_credentials,
723
+ insecure,
724
+ call_credentials,
725
+ compression,
726
+ wait_for_ready,
727
+ timeout,
728
+ metadata,
729
+ _registered_method=True)
730
+
731
+ @staticmethod
732
+ def get_telemetry(request,
733
+ target,
734
+ options=(),
735
+ channel_credentials=None,
736
+ call_credentials=None,
737
+ insecure=False,
738
+ compression=None,
739
+ wait_for_ready=None,
740
+ timeout=None,
741
+ metadata=None):
742
+ return grpc.experimental.unary_unary(
743
+ request,
744
+ target,
745
+ '/rover.RoverService/get_telemetry',
746
+ rover__pb2.Empty.SerializeToString,
747
+ rover__pb2.TelemetryData.FromString,
748
+ options,
749
+ channel_credentials,
750
+ insecure,
751
+ call_credentials,
752
+ compression,
753
+ wait_for_ready,
754
+ timeout,
755
+ metadata,
756
+ _registered_method=True)
757
+
758
+ @staticmethod
759
+ def stream_telemetry(request,
760
+ target,
761
+ options=(),
762
+ channel_credentials=None,
763
+ call_credentials=None,
764
+ insecure=False,
765
+ compression=None,
766
+ wait_for_ready=None,
767
+ timeout=None,
768
+ metadata=None):
769
+ return grpc.experimental.unary_stream(
770
+ request,
771
+ target,
772
+ '/rover.RoverService/stream_telemetry',
773
+ rover__pb2.Empty.SerializeToString,
774
+ rover__pb2.TelemetryData.FromString,
775
+ options,
776
+ channel_credentials,
777
+ insecure,
778
+ call_credentials,
779
+ compression,
780
+ wait_for_ready,
781
+ timeout,
782
+ metadata,
783
+ _registered_method=True)
784
+
785
+ @staticmethod
786
+ def get_status(request,
787
+ target,
788
+ options=(),
789
+ channel_credentials=None,
790
+ call_credentials=None,
791
+ insecure=False,
792
+ compression=None,
793
+ wait_for_ready=None,
794
+ timeout=None,
795
+ metadata=None):
796
+ return grpc.experimental.unary_unary(
797
+ request,
798
+ target,
799
+ '/rover.RoverService/get_status',
800
+ rover__pb2.Empty.SerializeToString,
801
+ rover__pb2.RoverStatus.FromString,
802
+ options,
803
+ channel_credentials,
804
+ insecure,
805
+ call_credentials,
806
+ compression,
807
+ wait_for_ready,
808
+ timeout,
809
+ metadata,
810
+ _registered_method=True)
811
+
812
+ @staticmethod
813
+ def get_battery_status(request,
814
+ target,
815
+ options=(),
816
+ channel_credentials=None,
817
+ call_credentials=None,
818
+ insecure=False,
819
+ compression=None,
820
+ wait_for_ready=None,
821
+ timeout=None,
822
+ metadata=None):
823
+ return grpc.experimental.unary_unary(
824
+ request,
825
+ target,
826
+ '/rover.RoverService/get_battery_status',
827
+ rover__pb2.Empty.SerializeToString,
828
+ rover__pb2.BatteryData.FromString,
829
+ options,
830
+ channel_credentials,
831
+ insecure,
832
+ call_credentials,
833
+ compression,
834
+ wait_for_ready,
835
+ timeout,
836
+ metadata,
837
+ _registered_method=True)
838
+
839
+ @staticmethod
840
+ def emergency_stop(request,
841
+ target,
842
+ options=(),
843
+ channel_credentials=None,
844
+ call_credentials=None,
845
+ insecure=False,
846
+ compression=None,
847
+ wait_for_ready=None,
848
+ timeout=None,
849
+ metadata=None):
850
+ return grpc.experimental.unary_unary(
851
+ request,
852
+ target,
853
+ '/rover.RoverService/emergency_stop',
854
+ rover__pb2.Empty.SerializeToString,
855
+ rover__pb2.CommandAck.FromString,
856
+ options,
857
+ channel_credentials,
858
+ insecure,
859
+ call_credentials,
860
+ compression,
861
+ wait_for_ready,
862
+ timeout,
863
+ metadata,
864
+ _registered_method=True)
865
+
866
+ @staticmethod
867
+ def reboot_board(request,
868
+ target,
869
+ options=(),
870
+ channel_credentials=None,
871
+ call_credentials=None,
872
+ insecure=False,
873
+ compression=None,
874
+ wait_for_ready=None,
875
+ timeout=None,
876
+ metadata=None):
877
+ return grpc.experimental.unary_unary(
878
+ request,
879
+ target,
880
+ '/rover.RoverService/reboot_board',
881
+ rover__pb2.Empty.SerializeToString,
882
+ rover__pb2.CommandAck.FromString,
883
+ options,
884
+ channel_credentials,
885
+ insecure,
886
+ call_credentials,
887
+ compression,
888
+ wait_for_ready,
889
+ timeout,
890
+ metadata,
891
+ _registered_method=True)
892
+
893
+ @staticmethod
894
+ def reboot_compute_module(request,
895
+ target,
896
+ options=(),
897
+ channel_credentials=None,
898
+ call_credentials=None,
899
+ insecure=False,
900
+ compression=None,
901
+ wait_for_ready=None,
902
+ timeout=None,
903
+ metadata=None):
904
+ return grpc.experimental.unary_unary(
905
+ request,
906
+ target,
907
+ '/rover.RoverService/reboot_compute_module',
908
+ rover__pb2.Empty.SerializeToString,
909
+ rover__pb2.CommandAck.FromString,
910
+ options,
911
+ channel_credentials,
912
+ insecure,
913
+ call_credentials,
914
+ compression,
915
+ wait_for_ready,
916
+ timeout,
917
+ metadata,
918
+ _registered_method=True)