tesla-fleet-api 1.0.0__py3-none-any.whl → 1.0.2__py3-none-any.whl

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.
Files changed (49) hide show
  1. tesla_fleet_api/__init__.py +5 -7
  2. tesla_fleet_api/const.py +1 -1
  3. tesla_fleet_api/exceptions.py +16 -2
  4. tesla_fleet_api/tesla/__init__.py +3 -3
  5. tesla_fleet_api/tesla/bluetooth.py +13 -3
  6. tesla_fleet_api/tesla/charging.py +1 -1
  7. tesla_fleet_api/tesla/energysite.py +2 -2
  8. tesla_fleet_api/tesla/fleet.py +8 -8
  9. tesla_fleet_api/tesla/oauth.py +2 -2
  10. tesla_fleet_api/tesla/user.py +1 -1
  11. tesla_fleet_api/tesla/vehicle/__init__.py +13 -0
  12. tesla_fleet_api/tesla/vehicle/bluetooth.py +226 -0
  13. tesla_fleet_api/tesla/vehicle/commands.py +1284 -0
  14. tesla_fleet_api/tesla/vehicle/fleet.py +847 -0
  15. tesla_fleet_api/tesla/vehicle/proto/__init__.py +0 -0
  16. tesla_fleet_api/tesla/vehicle/proto/__init__.pyi +9 -0
  17. tesla_fleet_api/tesla/vehicle/proto/car_server_pb2.py +175 -0
  18. tesla_fleet_api/tesla/vehicle/proto/car_server_pb2.pyi +904 -0
  19. tesla_fleet_api/tesla/vehicle/proto/common_pb2.py +33 -0
  20. tesla_fleet_api/tesla/vehicle/proto/common_pb2.pyi +130 -0
  21. tesla_fleet_api/tesla/vehicle/proto/errors_pb2.py +17 -0
  22. tesla_fleet_api/tesla/vehicle/proto/errors_pb2.pyi +32 -0
  23. tesla_fleet_api/tesla/vehicle/proto/keys_pb2.py +15 -0
  24. tesla_fleet_api/tesla/vehicle/proto/keys_pb2.pyi +21 -0
  25. tesla_fleet_api/tesla/vehicle/proto/managed_charging_pb2.py +15 -0
  26. tesla_fleet_api/tesla/vehicle/proto/managed_charging_pb2.pyi +17 -0
  27. tesla_fleet_api/tesla/vehicle/proto/signatures_pb2.py +35 -0
  28. tesla_fleet_api/tesla/vehicle/proto/signatures_pb2.pyi +152 -0
  29. tesla_fleet_api/tesla/vehicle/proto/universal_message_pb2.py +30 -0
  30. tesla_fleet_api/tesla/vehicle/proto/universal_message_pb2.pyi +148 -0
  31. tesla_fleet_api/tesla/vehicle/proto/vcsec_pb2.py +79 -0
  32. tesla_fleet_api/tesla/vehicle/proto/vcsec_pb2.pyi +482 -0
  33. tesla_fleet_api/tesla/vehicle/proto/vehicle_pb2.py +125 -0
  34. tesla_fleet_api/tesla/vehicle/proto/vehicle_pb2.pyi +1183 -0
  35. tesla_fleet_api/tesla/vehicle/signed.py +55 -0
  36. tesla_fleet_api/tesla/vehicle/vehicle.py +19 -0
  37. tesla_fleet_api/tesla/vehicle/vehicles.py +46 -0
  38. tesla_fleet_api/teslemetry/__init__.py +1 -1
  39. tesla_fleet_api/teslemetry/teslemetry.py +6 -6
  40. tesla_fleet_api/teslemetry/vehicle.py +5 -7
  41. tesla_fleet_api/tessie/__init__.py +1 -1
  42. tesla_fleet_api/tessie/tessie.py +6 -6
  43. tesla_fleet_api/tessie/vehicle.py +3 -9
  44. {tesla_fleet_api-1.0.0.dist-info → tesla_fleet_api-1.0.2.dist-info}/METADATA +1 -1
  45. tesla_fleet_api-1.0.2.dist-info/RECORD +51 -0
  46. tesla_fleet_api-1.0.0.dist-info/RECORD +0 -24
  47. {tesla_fleet_api-1.0.0.dist-info → tesla_fleet_api-1.0.2.dist-info}/LICENSE +0 -0
  48. {tesla_fleet_api-1.0.0.dist-info → tesla_fleet_api-1.0.2.dist-info}/WHEEL +0 -0
  49. {tesla_fleet_api-1.0.0.dist-info → tesla_fleet_api-1.0.2.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,33 @@
1
+ """Generated protocol buffer code."""
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import symbol_database as _symbol_database
5
+ from google.protobuf.internal import builder as _builder
6
+ _sym_db = _symbol_database.Default()
7
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0ccommon.proto\x12\tCarServer"\x06\n\x04Void".\n\x07LatLong\x12\x10\n\x08latitude\x18\x01 \x01(\x02\x12\x11\n\tlongitude\x18\x02 \x01(\x02"\xae\x01\n\x14ChargePortLatchState\x12\x1e\n\x03SNA\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12%\n\nDisengaged\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12"\n\x07Engaged\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12#\n\x08Blocking\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x06\n\x04type"i\n\x14PreconditioningTimes\x12#\n\x08all_week\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12#\n\x08weekdays\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x07\n\x05times"i\n\x14OffPeakChargingTimes\x12#\n\x08all_week\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12#\n\x08weekdays\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x07\n\x05times"\xda\x01\n\x0eChargeSchedule\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x14\n\x0cdays_of_week\x18\x03 \x01(\x05\x12\x15\n\rstart_enabled\x18\x04 \x01(\x08\x12\x12\n\nstart_time\x18\x05 \x01(\x05\x12\x13\n\x0bend_enabled\x18\x06 \x01(\x08\x12\x10\n\x08end_time\x18\x07 \x01(\x05\x12\x10\n\x08one_time\x18\x08 \x01(\x08\x12\x0f\n\x07enabled\x18\t \x01(\x08\x12\x10\n\x08latitude\x18\n \x01(\x02\x12\x11\n\tlongitude\x18\x0b \x01(\x02"\xa9\x01\n\x14PreconditionSchedule\x12\n\n\x02id\x18\x01 \x01(\x04\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x14\n\x0cdays_of_week\x18\x03 \x01(\x05\x12\x19\n\x11precondition_time\x18\x04 \x01(\x05\x12\x10\n\x08one_time\x18\x05 \x01(\x08\x12\x0f\n\x07enabled\x18\x06 \x01(\x08\x12\x10\n\x08latitude\x18\x07 \x01(\x02\x12\x11\n\tlongitude\x18\x08 \x01(\x02*\x16\n\x07Invalid\x12\x0b\n\x07INVALID\x10\x00*;\n\x13MediaPlaybackStatus\x12\x0b\n\x07Stopped\x10\x00\x12\x0b\n\x07Playing\x10\x01\x12\n\n\x06Paused\x10\x02*k\n\x0cStwHeatLevel\x12\x18\n\x14StwHeatLevel_Unknown\x10\x00\x12\x14\n\x10StwHeatLevel_Off\x10\x01\x12\x14\n\x10StwHeatLevel_Low\x10\x02\x12\x15\n\x11StwHeatLevel_High\x10\x03Bn\n$com.tesla.generated.carserver.commonZFgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/carserverb\x06proto3')
8
+ _globals = globals()
9
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
10
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common_pb2', _globals)
11
+ if _descriptor._USE_C_DESCRIPTORS == False:
12
+ _globals['DESCRIPTOR']._options = None
13
+ _globals['DESCRIPTOR']._serialized_options = b'\n$com.tesla.generated.carserver.commonZFgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/carserver'
14
+ _globals['_INVALID']._serialized_start = 867
15
+ _globals['_INVALID']._serialized_end = 889
16
+ _globals['_MEDIAPLAYBACKSTATUS']._serialized_start = 891
17
+ _globals['_MEDIAPLAYBACKSTATUS']._serialized_end = 950
18
+ _globals['_STWHEATLEVEL']._serialized_start = 952
19
+ _globals['_STWHEATLEVEL']._serialized_end = 1059
20
+ _globals['_VOID']._serialized_start = 27
21
+ _globals['_VOID']._serialized_end = 33
22
+ _globals['_LATLONG']._serialized_start = 35
23
+ _globals['_LATLONG']._serialized_end = 81
24
+ _globals['_CHARGEPORTLATCHSTATE']._serialized_start = 84
25
+ _globals['_CHARGEPORTLATCHSTATE']._serialized_end = 258
26
+ _globals['_PRECONDITIONINGTIMES']._serialized_start = 260
27
+ _globals['_PRECONDITIONINGTIMES']._serialized_end = 365
28
+ _globals['_OFFPEAKCHARGINGTIMES']._serialized_start = 367
29
+ _globals['_OFFPEAKCHARGINGTIMES']._serialized_end = 472
30
+ _globals['_CHARGESCHEDULE']._serialized_start = 475
31
+ _globals['_CHARGESCHEDULE']._serialized_end = 693
32
+ _globals['_PRECONDITIONSCHEDULE']._serialized_start = 696
33
+ _globals['_PRECONDITIONSCHEDULE']._serialized_end = 865
@@ -0,0 +1,130 @@
1
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class Invalid(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
8
+ __slots__ = ()
9
+ INVALID: _ClassVar[Invalid]
10
+
11
+ class MediaPlaybackStatus(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
12
+ __slots__ = ()
13
+ Stopped: _ClassVar[MediaPlaybackStatus]
14
+ Playing: _ClassVar[MediaPlaybackStatus]
15
+ Paused: _ClassVar[MediaPlaybackStatus]
16
+
17
+ class StwHeatLevel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
18
+ __slots__ = ()
19
+ StwHeatLevel_Unknown: _ClassVar[StwHeatLevel]
20
+ StwHeatLevel_Off: _ClassVar[StwHeatLevel]
21
+ StwHeatLevel_Low: _ClassVar[StwHeatLevel]
22
+ StwHeatLevel_High: _ClassVar[StwHeatLevel]
23
+ INVALID: Invalid
24
+ Stopped: MediaPlaybackStatus
25
+ Playing: MediaPlaybackStatus
26
+ Paused: MediaPlaybackStatus
27
+ StwHeatLevel_Unknown: StwHeatLevel
28
+ StwHeatLevel_Off: StwHeatLevel
29
+ StwHeatLevel_Low: StwHeatLevel
30
+ StwHeatLevel_High: StwHeatLevel
31
+
32
+ class Void(_message.Message):
33
+ __slots__ = ()
34
+
35
+ def __init__(self) -> None:
36
+ ...
37
+
38
+ class LatLong(_message.Message):
39
+ __slots__ = ('latitude', 'longitude')
40
+ LATITUDE_FIELD_NUMBER: _ClassVar[int]
41
+ LONGITUDE_FIELD_NUMBER: _ClassVar[int]
42
+ latitude: float
43
+ longitude: float
44
+
45
+ def __init__(self, latitude: _Optional[float]=..., longitude: _Optional[float]=...) -> None:
46
+ ...
47
+
48
+ class ChargePortLatchState(_message.Message):
49
+ __slots__ = ('SNA', 'Disengaged', 'Engaged', 'Blocking')
50
+ SNA_FIELD_NUMBER: _ClassVar[int]
51
+ DISENGAGED_FIELD_NUMBER: _ClassVar[int]
52
+ ENGAGED_FIELD_NUMBER: _ClassVar[int]
53
+ BLOCKING_FIELD_NUMBER: _ClassVar[int]
54
+ SNA: Void
55
+ Disengaged: Void
56
+ Engaged: Void
57
+ Blocking: Void
58
+
59
+ def __init__(self, SNA: _Optional[_Union[Void, _Mapping]]=..., Disengaged: _Optional[_Union[Void, _Mapping]]=..., Engaged: _Optional[_Union[Void, _Mapping]]=..., Blocking: _Optional[_Union[Void, _Mapping]]=...) -> None:
60
+ ...
61
+
62
+ class PreconditioningTimes(_message.Message):
63
+ __slots__ = ('all_week', 'weekdays')
64
+ ALL_WEEK_FIELD_NUMBER: _ClassVar[int]
65
+ WEEKDAYS_FIELD_NUMBER: _ClassVar[int]
66
+ all_week: Void
67
+ weekdays: Void
68
+
69
+ def __init__(self, all_week: _Optional[_Union[Void, _Mapping]]=..., weekdays: _Optional[_Union[Void, _Mapping]]=...) -> None:
70
+ ...
71
+
72
+ class OffPeakChargingTimes(_message.Message):
73
+ __slots__ = ('all_week', 'weekdays')
74
+ ALL_WEEK_FIELD_NUMBER: _ClassVar[int]
75
+ WEEKDAYS_FIELD_NUMBER: _ClassVar[int]
76
+ all_week: Void
77
+ weekdays: Void
78
+
79
+ def __init__(self, all_week: _Optional[_Union[Void, _Mapping]]=..., weekdays: _Optional[_Union[Void, _Mapping]]=...) -> None:
80
+ ...
81
+
82
+ class ChargeSchedule(_message.Message):
83
+ __slots__ = ('id', 'name', 'days_of_week', 'start_enabled', 'start_time', 'end_enabled', 'end_time', 'one_time', 'enabled', 'latitude', 'longitude')
84
+ ID_FIELD_NUMBER: _ClassVar[int]
85
+ NAME_FIELD_NUMBER: _ClassVar[int]
86
+ DAYS_OF_WEEK_FIELD_NUMBER: _ClassVar[int]
87
+ START_ENABLED_FIELD_NUMBER: _ClassVar[int]
88
+ START_TIME_FIELD_NUMBER: _ClassVar[int]
89
+ END_ENABLED_FIELD_NUMBER: _ClassVar[int]
90
+ END_TIME_FIELD_NUMBER: _ClassVar[int]
91
+ ONE_TIME_FIELD_NUMBER: _ClassVar[int]
92
+ ENABLED_FIELD_NUMBER: _ClassVar[int]
93
+ LATITUDE_FIELD_NUMBER: _ClassVar[int]
94
+ LONGITUDE_FIELD_NUMBER: _ClassVar[int]
95
+ id: int
96
+ name: str
97
+ days_of_week: int
98
+ start_enabled: bool
99
+ start_time: int
100
+ end_enabled: bool
101
+ end_time: int
102
+ one_time: bool
103
+ enabled: bool
104
+ latitude: float
105
+ longitude: float
106
+
107
+ def __init__(self, id: _Optional[int]=..., name: _Optional[str]=..., days_of_week: _Optional[int]=..., start_enabled: bool=..., start_time: _Optional[int]=..., end_enabled: bool=..., end_time: _Optional[int]=..., one_time: bool=..., enabled: bool=..., latitude: _Optional[float]=..., longitude: _Optional[float]=...) -> None:
108
+ ...
109
+
110
+ class PreconditionSchedule(_message.Message):
111
+ __slots__ = ('id', 'name', 'days_of_week', 'precondition_time', 'one_time', 'enabled', 'latitude', 'longitude')
112
+ ID_FIELD_NUMBER: _ClassVar[int]
113
+ NAME_FIELD_NUMBER: _ClassVar[int]
114
+ DAYS_OF_WEEK_FIELD_NUMBER: _ClassVar[int]
115
+ PRECONDITION_TIME_FIELD_NUMBER: _ClassVar[int]
116
+ ONE_TIME_FIELD_NUMBER: _ClassVar[int]
117
+ ENABLED_FIELD_NUMBER: _ClassVar[int]
118
+ LATITUDE_FIELD_NUMBER: _ClassVar[int]
119
+ LONGITUDE_FIELD_NUMBER: _ClassVar[int]
120
+ id: int
121
+ name: str
122
+ days_of_week: int
123
+ precondition_time: int
124
+ one_time: bool
125
+ enabled: bool
126
+ latitude: float
127
+ longitude: float
128
+
129
+ def __init__(self, id: _Optional[int]=..., name: _Optional[str]=..., days_of_week: _Optional[int]=..., precondition_time: _Optional[int]=..., one_time: bool=..., enabled: bool=..., latitude: _Optional[float]=..., longitude: _Optional[float]=...) -> None:
130
+ ...
@@ -0,0 +1,17 @@
1
+ """Generated protocol buffer code."""
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import symbol_database as _symbol_database
5
+ from google.protobuf.internal import builder as _builder
6
+ _sym_db = _symbol_database.Default()
7
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0cerrors.proto\x12\x06Errors"<\n\x0cNominalError\x12,\n\x0cgenericError\x18\x01 \x01(\x0e2\x16.Errors.GenericError_E*\x9c\x02\n\x0eGenericError_E\x12\x15\n\x11GENERICERROR_NONE\x10\x00\x12\x18\n\x14GENERICERROR_UNKNOWN\x10\x01\x12\x1e\n\x1aGENERICERROR_CLOSURES_OPEN\x10\x02\x12\x1b\n\x17GENERICERROR_ALREADY_ON\x10\x03\x12*\n&GENERICERROR_DISABLED_FOR_USER_COMMAND\x10\x04\x12$\n GENERICERROR_VEHICLE_NOT_IN_PARK\x10\x05\x12\x1d\n\x19GENERICERROR_UNAUTHORIZED\x10\x06\x12+\n\'GENERICERROR_NOT_ALLOWED_OVER_TRANSPORT\x10\x07Ba\n\x1acom.tesla.generated.errorsZCgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/errorsb\x06proto3')
8
+ _globals = globals()
9
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
10
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'errors_pb2', _globals)
11
+ if _descriptor._USE_C_DESCRIPTORS == False:
12
+ _globals['DESCRIPTOR']._options = None
13
+ _globals['DESCRIPTOR']._serialized_options = b'\n\x1acom.tesla.generated.errorsZCgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/errors'
14
+ _globals['_GENERICERROR_E']._serialized_start = 87
15
+ _globals['_GENERICERROR_E']._serialized_end = 371
16
+ _globals['_NOMINALERROR']._serialized_start = 24
17
+ _globals['_NOMINALERROR']._serialized_end = 84
@@ -0,0 +1,32 @@
1
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class GenericError_E(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
8
+ __slots__ = ()
9
+ GENERICERROR_NONE: _ClassVar[GenericError_E]
10
+ GENERICERROR_UNKNOWN: _ClassVar[GenericError_E]
11
+ GENERICERROR_CLOSURES_OPEN: _ClassVar[GenericError_E]
12
+ GENERICERROR_ALREADY_ON: _ClassVar[GenericError_E]
13
+ GENERICERROR_DISABLED_FOR_USER_COMMAND: _ClassVar[GenericError_E]
14
+ GENERICERROR_VEHICLE_NOT_IN_PARK: _ClassVar[GenericError_E]
15
+ GENERICERROR_UNAUTHORIZED: _ClassVar[GenericError_E]
16
+ GENERICERROR_NOT_ALLOWED_OVER_TRANSPORT: _ClassVar[GenericError_E]
17
+ GENERICERROR_NONE: GenericError_E
18
+ GENERICERROR_UNKNOWN: GenericError_E
19
+ GENERICERROR_CLOSURES_OPEN: GenericError_E
20
+ GENERICERROR_ALREADY_ON: GenericError_E
21
+ GENERICERROR_DISABLED_FOR_USER_COMMAND: GenericError_E
22
+ GENERICERROR_VEHICLE_NOT_IN_PARK: GenericError_E
23
+ GENERICERROR_UNAUTHORIZED: GenericError_E
24
+ GENERICERROR_NOT_ALLOWED_OVER_TRANSPORT: GenericError_E
25
+
26
+ class NominalError(_message.Message):
27
+ __slots__ = ('genericError',)
28
+ GENERICERROR_FIELD_NUMBER: _ClassVar[int]
29
+ genericError: GenericError_E
30
+
31
+ def __init__(self, genericError: _Optional[_Union[GenericError_E, str]]=...) -> None:
32
+ ...
@@ -0,0 +1,15 @@
1
+ """Generated protocol buffer code."""
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import symbol_database as _symbol_database
5
+ from google.protobuf.internal import builder as _builder
6
+ _sym_db = _symbol_database.Default()
7
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\nkeys.proto\x12\x04Keys*\x8a\x01\n\x04Role\x12\r\n\tROLE_NONE\x10\x00\x12\x10\n\x0cROLE_SERVICE\x10\x01\x12\x0e\n\nROLE_OWNER\x10\x02\x12\x0f\n\x0bROLE_DRIVER\x10\x03\x12\x0b\n\x07ROLE_FM\x10\x04\x12\x18\n\x14ROLE_VEHICLE_MONITOR\x10\x05\x12\x19\n\x15ROLE_CHARGING_MANAGER\x10\x06B]\n\x18com.tesla.generated.keysZAgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/keysb\x06proto3')
8
+ _globals = globals()
9
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
10
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'keys_pb2', _globals)
11
+ if _descriptor._USE_C_DESCRIPTORS == False:
12
+ _globals['DESCRIPTOR']._options = None
13
+ _globals['DESCRIPTOR']._serialized_options = b'\n\x18com.tesla.generated.keysZAgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/keys'
14
+ _globals['_ROLE']._serialized_start = 21
15
+ _globals['_ROLE']._serialized_end = 159
@@ -0,0 +1,21 @@
1
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
2
+ from google.protobuf import descriptor as _descriptor
3
+ from typing import ClassVar as _ClassVar
4
+ DESCRIPTOR: _descriptor.FileDescriptor
5
+
6
+ class Role(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
7
+ __slots__ = ()
8
+ ROLE_NONE: _ClassVar[Role]
9
+ ROLE_SERVICE: _ClassVar[Role]
10
+ ROLE_OWNER: _ClassVar[Role]
11
+ ROLE_DRIVER: _ClassVar[Role]
12
+ ROLE_FM: _ClassVar[Role]
13
+ ROLE_VEHICLE_MONITOR: _ClassVar[Role]
14
+ ROLE_CHARGING_MANAGER: _ClassVar[Role]
15
+ ROLE_NONE: Role
16
+ ROLE_SERVICE: Role
17
+ ROLE_OWNER: Role
18
+ ROLE_DRIVER: Role
19
+ ROLE_FM: Role
20
+ ROLE_VEHICLE_MONITOR: Role
21
+ ROLE_CHARGING_MANAGER: Role
@@ -0,0 +1,15 @@
1
+ """Generated protocol buffer code."""
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import symbol_database as _symbol_database
5
+ from google.protobuf.internal import builder as _builder
6
+ _sym_db = _symbol_database.Default()
7
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16managed_charging.proto\x12\x0fManagedCharging*\xc7\x02\n\x1bChargeOnSolarNoChargeReason\x12,\n(CHARGE_ON_SOLAR_NO_CHARGE_REASON_INVALID\x10\x00\x12>\n:CHARGE_ON_SOLAR_NO_CHARGE_REASON_POWERWALL_CHARGE_PRIORITY\x10\x01\x127\n3CHARGE_ON_SOLAR_NO_CHARGE_REASON_INSUFFICIENT_SOLAR\x10\x02\x129\n5CHARGE_ON_SOLAR_NO_CHARGE_REASON_GRID_EXPORT_PRIORITY\x10\x03\x12F\nBCHARGE_ON_SOLAR_NO_CHARGE_REASON_ALTERNATE_VEHICLE_CHARGE_PRIORITY\x10\x04BNZLgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/managedchargingb\x06proto3')
8
+ _globals = globals()
9
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
10
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'managed_charging_pb2', _globals)
11
+ if _descriptor._USE_C_DESCRIPTORS == False:
12
+ _globals['DESCRIPTOR']._options = None
13
+ _globals['DESCRIPTOR']._serialized_options = b'ZLgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/managedcharging'
14
+ _globals['_CHARGEONSOLARNOCHARGEREASON']._serialized_start = 44
15
+ _globals['_CHARGEONSOLARNOCHARGEREASON']._serialized_end = 371
@@ -0,0 +1,17 @@
1
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
2
+ from google.protobuf import descriptor as _descriptor
3
+ from typing import ClassVar as _ClassVar
4
+ DESCRIPTOR: _descriptor.FileDescriptor
5
+
6
+ class ChargeOnSolarNoChargeReason(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
7
+ __slots__ = ()
8
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_INVALID: _ClassVar[ChargeOnSolarNoChargeReason]
9
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_POWERWALL_CHARGE_PRIORITY: _ClassVar[ChargeOnSolarNoChargeReason]
10
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_INSUFFICIENT_SOLAR: _ClassVar[ChargeOnSolarNoChargeReason]
11
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_GRID_EXPORT_PRIORITY: _ClassVar[ChargeOnSolarNoChargeReason]
12
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_ALTERNATE_VEHICLE_CHARGE_PRIORITY: _ClassVar[ChargeOnSolarNoChargeReason]
13
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_INVALID: ChargeOnSolarNoChargeReason
14
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_POWERWALL_CHARGE_PRIORITY: ChargeOnSolarNoChargeReason
15
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_INSUFFICIENT_SOLAR: ChargeOnSolarNoChargeReason
16
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_GRID_EXPORT_PRIORITY: ChargeOnSolarNoChargeReason
17
+ CHARGE_ON_SOLAR_NO_CHARGE_REASON_ALTERNATE_VEHICLE_CHARGE_PRIORITY: ChargeOnSolarNoChargeReason
@@ -0,0 +1,35 @@
1
+ """Generated protocol buffer code."""
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import symbol_database as _symbol_database
5
+ from google.protobuf.internal import builder as _builder
6
+ _sym_db = _symbol_database.Default()
7
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10signatures.proto\x12\nSignatures"L\n\x0bKeyIdentity\x12\x14\n\npublic_key\x18\x01 \x01(\x0cH\x00\x12\x10\n\x06handle\x18\x03 \x01(\rH\x00B\x0f\n\ridentity_typeJ\x04\x08\x02\x10\x03"u\n#AES_GCM_Personalized_Signature_Data\x12\r\n\x05epoch\x18\x01 \x01(\x0c\x12\r\n\x05nonce\x18\x02 \x01(\x0c\x12\x0f\n\x07counter\x18\x03 \x01(\r\x12\x12\n\nexpires_at\x18\x04 \x01(\x07\x12\x0b\n\x03tag\x18\x05 \x01(\x0c"N\n\x1fAES_GCM_Response_Signature_Data\x12\r\n\x05nonce\x18\x01 \x01(\x0c\x12\x0f\n\x07counter\x18\x02 \x01(\r\x12\x0b\n\x03tag\x18\x03 \x01(\x0c""\n\x13HMAC_Signature_Data\x12\x0b\n\x03tag\x18\x01 \x01(\x0c"c\n HMAC_Personalized_Signature_Data\x12\r\n\x05epoch\x18\x01 \x01(\x0c\x12\x0f\n\x07counter\x18\x02 \x01(\r\x12\x12\n\nexpires_at\x18\x03 \x01(\x07\x12\x0b\n\x03tag\x18\x04 \x01(\x0c"\x84\x03\n\rSignatureData\x120\n\x0fsigner_identity\x18\x01 \x01(\x0b2\x17.Signatures.KeyIdentity\x12T\n\x19AES_GCM_Personalized_data\x18\x05 \x01(\x0b2/.Signatures.AES_GCM_Personalized_Signature_DataH\x00\x12;\n\x10session_info_tag\x18\x06 \x01(\x0b2\x1f.Signatures.HMAC_Signature_DataH\x00\x12N\n\x16HMAC_Personalized_data\x18\x08 \x01(\x0b2,.Signatures.HMAC_Personalized_Signature_DataH\x00\x12L\n\x15AES_GCM_Response_data\x18\t \x01(\x0b2+.Signatures.AES_GCM_Response_Signature_DataH\x00B\n\n\x08sig_typeJ\x04\x08\x07\x10\x08"F\n\x15GetSessionInfoRequest\x12-\n\x0ckey_identity\x18\x01 \x01(\x0b2\x17.Signatures.KeyIdentity"\x95\x01\n\x0bSessionInfo\x12\x0f\n\x07counter\x18\x01 \x01(\r\x12\x11\n\tpublicKey\x18\x02 \x01(\x0c\x12\r\n\x05epoch\x18\x03 \x01(\x0c\x12\x12\n\nclock_time\x18\x04 \x01(\x07\x12/\n\x06status\x18\x05 \x01(\x0e2\x1f.Signatures.Session_Info_Status\x12\x0e\n\x06handle\x18\x06 \x01(\r*\xcf\x01\n\x03Tag\x12\x16\n\x12TAG_SIGNATURE_TYPE\x10\x00\x12\x0e\n\nTAG_DOMAIN\x10\x01\x12\x17\n\x13TAG_PERSONALIZATION\x10\x02\x12\r\n\tTAG_EPOCH\x10\x03\x12\x12\n\x0eTAG_EXPIRES_AT\x10\x04\x12\x0f\n\x0bTAG_COUNTER\x10\x05\x12\x11\n\rTAG_CHALLENGE\x10\x06\x12\r\n\tTAG_FLAGS\x10\x07\x12\x14\n\x10TAG_REQUEST_HASH\x10\x08\x12\r\n\tTAG_FAULT\x10\t\x12\x0c\n\x07TAG_END\x10\xff\x01*\xbe\x01\n\rSignatureType\x12\x1a\n\x16SIGNATURE_TYPE_AES_GCM\x10\x00\x12\'\n#SIGNATURE_TYPE_AES_GCM_PERSONALIZED\x10\x05\x12\x17\n\x13SIGNATURE_TYPE_HMAC\x10\x06\x12$\n SIGNATURE_TYPE_HMAC_PERSONALIZED\x10\x08\x12#\n\x1fSIGNATURE_TYPE_AES_GCM_RESPONSE\x10\t"\x04\x08\x07\x10\x07*_\n\x13Session_Info_Status\x12\x1a\n\x16SESSION_INFO_STATUS_OK\x10\x00\x12,\n(SESSION_INFO_STATUS_KEY_NOT_ON_WHITELIST\x10\x01Bi\n\x1ecom.tesla.generated.signaturesZGgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/signaturesb\x06proto3')
8
+ _globals = globals()
9
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
10
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'signatures_pb2', _globals)
11
+ if _descriptor._USE_C_DESCRIPTORS == False:
12
+ _globals['DESCRIPTOR']._options = None
13
+ _globals['DESCRIPTOR']._serialized_options = b'\n\x1ecom.tesla.generated.signaturesZGgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/signatures'
14
+ _globals['_TAG']._serialized_start = 1062
15
+ _globals['_TAG']._serialized_end = 1269
16
+ _globals['_SIGNATURETYPE']._serialized_start = 1272
17
+ _globals['_SIGNATURETYPE']._serialized_end = 1462
18
+ _globals['_SESSION_INFO_STATUS']._serialized_start = 1464
19
+ _globals['_SESSION_INFO_STATUS']._serialized_end = 1559
20
+ _globals['_KEYIDENTITY']._serialized_start = 32
21
+ _globals['_KEYIDENTITY']._serialized_end = 108
22
+ _globals['_AES_GCM_PERSONALIZED_SIGNATURE_DATA']._serialized_start = 110
23
+ _globals['_AES_GCM_PERSONALIZED_SIGNATURE_DATA']._serialized_end = 227
24
+ _globals['_AES_GCM_RESPONSE_SIGNATURE_DATA']._serialized_start = 229
25
+ _globals['_AES_GCM_RESPONSE_SIGNATURE_DATA']._serialized_end = 307
26
+ _globals['_HMAC_SIGNATURE_DATA']._serialized_start = 309
27
+ _globals['_HMAC_SIGNATURE_DATA']._serialized_end = 343
28
+ _globals['_HMAC_PERSONALIZED_SIGNATURE_DATA']._serialized_start = 345
29
+ _globals['_HMAC_PERSONALIZED_SIGNATURE_DATA']._serialized_end = 444
30
+ _globals['_SIGNATUREDATA']._serialized_start = 447
31
+ _globals['_SIGNATUREDATA']._serialized_end = 835
32
+ _globals['_GETSESSIONINFOREQUEST']._serialized_start = 837
33
+ _globals['_GETSESSIONINFOREQUEST']._serialized_end = 907
34
+ _globals['_SESSIONINFO']._serialized_start = 910
35
+ _globals['_SESSIONINFO']._serialized_end = 1059
@@ -0,0 +1,152 @@
1
+ from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import message as _message
4
+ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
5
+ DESCRIPTOR: _descriptor.FileDescriptor
6
+
7
+ class Tag(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
8
+ __slots__ = ()
9
+ TAG_SIGNATURE_TYPE: _ClassVar[Tag]
10
+ TAG_DOMAIN: _ClassVar[Tag]
11
+ TAG_PERSONALIZATION: _ClassVar[Tag]
12
+ TAG_EPOCH: _ClassVar[Tag]
13
+ TAG_EXPIRES_AT: _ClassVar[Tag]
14
+ TAG_COUNTER: _ClassVar[Tag]
15
+ TAG_CHALLENGE: _ClassVar[Tag]
16
+ TAG_FLAGS: _ClassVar[Tag]
17
+ TAG_REQUEST_HASH: _ClassVar[Tag]
18
+ TAG_FAULT: _ClassVar[Tag]
19
+ TAG_END: _ClassVar[Tag]
20
+
21
+ class SignatureType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
22
+ __slots__ = ()
23
+ SIGNATURE_TYPE_AES_GCM: _ClassVar[SignatureType]
24
+ SIGNATURE_TYPE_AES_GCM_PERSONALIZED: _ClassVar[SignatureType]
25
+ SIGNATURE_TYPE_HMAC: _ClassVar[SignatureType]
26
+ SIGNATURE_TYPE_HMAC_PERSONALIZED: _ClassVar[SignatureType]
27
+ SIGNATURE_TYPE_AES_GCM_RESPONSE: _ClassVar[SignatureType]
28
+
29
+ class Session_Info_Status(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
30
+ __slots__ = ()
31
+ SESSION_INFO_STATUS_OK: _ClassVar[Session_Info_Status]
32
+ SESSION_INFO_STATUS_KEY_NOT_ON_WHITELIST: _ClassVar[Session_Info_Status]
33
+ TAG_SIGNATURE_TYPE: Tag
34
+ TAG_DOMAIN: Tag
35
+ TAG_PERSONALIZATION: Tag
36
+ TAG_EPOCH: Tag
37
+ TAG_EXPIRES_AT: Tag
38
+ TAG_COUNTER: Tag
39
+ TAG_CHALLENGE: Tag
40
+ TAG_FLAGS: Tag
41
+ TAG_REQUEST_HASH: Tag
42
+ TAG_FAULT: Tag
43
+ TAG_END: Tag
44
+ SIGNATURE_TYPE_AES_GCM: SignatureType
45
+ SIGNATURE_TYPE_AES_GCM_PERSONALIZED: SignatureType
46
+ SIGNATURE_TYPE_HMAC: SignatureType
47
+ SIGNATURE_TYPE_HMAC_PERSONALIZED: SignatureType
48
+ SIGNATURE_TYPE_AES_GCM_RESPONSE: SignatureType
49
+ SESSION_INFO_STATUS_OK: Session_Info_Status
50
+ SESSION_INFO_STATUS_KEY_NOT_ON_WHITELIST: Session_Info_Status
51
+
52
+ class KeyIdentity(_message.Message):
53
+ __slots__ = ('public_key', 'handle')
54
+ PUBLIC_KEY_FIELD_NUMBER: _ClassVar[int]
55
+ HANDLE_FIELD_NUMBER: _ClassVar[int]
56
+ public_key: bytes
57
+ handle: int
58
+
59
+ def __init__(self, public_key: _Optional[bytes]=..., handle: _Optional[int]=...) -> None:
60
+ ...
61
+
62
+ class AES_GCM_Personalized_Signature_Data(_message.Message):
63
+ __slots__ = ('epoch', 'nonce', 'counter', 'expires_at', 'tag')
64
+ EPOCH_FIELD_NUMBER: _ClassVar[int]
65
+ NONCE_FIELD_NUMBER: _ClassVar[int]
66
+ COUNTER_FIELD_NUMBER: _ClassVar[int]
67
+ EXPIRES_AT_FIELD_NUMBER: _ClassVar[int]
68
+ TAG_FIELD_NUMBER: _ClassVar[int]
69
+ epoch: bytes
70
+ nonce: bytes
71
+ counter: int
72
+ expires_at: int
73
+ tag: bytes
74
+
75
+ def __init__(self, epoch: _Optional[bytes]=..., nonce: _Optional[bytes]=..., counter: _Optional[int]=..., expires_at: _Optional[int]=..., tag: _Optional[bytes]=...) -> None:
76
+ ...
77
+
78
+ class AES_GCM_Response_Signature_Data(_message.Message):
79
+ __slots__ = ('nonce', 'counter', 'tag')
80
+ NONCE_FIELD_NUMBER: _ClassVar[int]
81
+ COUNTER_FIELD_NUMBER: _ClassVar[int]
82
+ TAG_FIELD_NUMBER: _ClassVar[int]
83
+ nonce: bytes
84
+ counter: int
85
+ tag: bytes
86
+
87
+ def __init__(self, nonce: _Optional[bytes]=..., counter: _Optional[int]=..., tag: _Optional[bytes]=...) -> None:
88
+ ...
89
+
90
+ class HMAC_Signature_Data(_message.Message):
91
+ __slots__ = ('tag',)
92
+ TAG_FIELD_NUMBER: _ClassVar[int]
93
+ tag: bytes
94
+
95
+ def __init__(self, tag: _Optional[bytes]=...) -> None:
96
+ ...
97
+
98
+ class HMAC_Personalized_Signature_Data(_message.Message):
99
+ __slots__ = ('epoch', 'counter', 'expires_at', 'tag')
100
+ EPOCH_FIELD_NUMBER: _ClassVar[int]
101
+ COUNTER_FIELD_NUMBER: _ClassVar[int]
102
+ EXPIRES_AT_FIELD_NUMBER: _ClassVar[int]
103
+ TAG_FIELD_NUMBER: _ClassVar[int]
104
+ epoch: bytes
105
+ counter: int
106
+ expires_at: int
107
+ tag: bytes
108
+
109
+ def __init__(self, epoch: _Optional[bytes]=..., counter: _Optional[int]=..., expires_at: _Optional[int]=..., tag: _Optional[bytes]=...) -> None:
110
+ ...
111
+
112
+ class SignatureData(_message.Message):
113
+ __slots__ = ('signer_identity', 'AES_GCM_Personalized_data', 'session_info_tag', 'HMAC_Personalized_data', 'AES_GCM_Response_data')
114
+ SIGNER_IDENTITY_FIELD_NUMBER: _ClassVar[int]
115
+ AES_GCM_PERSONALIZED_DATA_FIELD_NUMBER: _ClassVar[int]
116
+ SESSION_INFO_TAG_FIELD_NUMBER: _ClassVar[int]
117
+ HMAC_PERSONALIZED_DATA_FIELD_NUMBER: _ClassVar[int]
118
+ AES_GCM_RESPONSE_DATA_FIELD_NUMBER: _ClassVar[int]
119
+ signer_identity: KeyIdentity
120
+ AES_GCM_Personalized_data: AES_GCM_Personalized_Signature_Data
121
+ session_info_tag: HMAC_Signature_Data
122
+ HMAC_Personalized_data: HMAC_Personalized_Signature_Data
123
+ AES_GCM_Response_data: AES_GCM_Response_Signature_Data
124
+
125
+ def __init__(self, signer_identity: _Optional[_Union[KeyIdentity, _Mapping]]=..., AES_GCM_Personalized_data: _Optional[_Union[AES_GCM_Personalized_Signature_Data, _Mapping]]=..., session_info_tag: _Optional[_Union[HMAC_Signature_Data, _Mapping]]=..., HMAC_Personalized_data: _Optional[_Union[HMAC_Personalized_Signature_Data, _Mapping]]=..., AES_GCM_Response_data: _Optional[_Union[AES_GCM_Response_Signature_Data, _Mapping]]=...) -> None:
126
+ ...
127
+
128
+ class GetSessionInfoRequest(_message.Message):
129
+ __slots__ = ('key_identity',)
130
+ KEY_IDENTITY_FIELD_NUMBER: _ClassVar[int]
131
+ key_identity: KeyIdentity
132
+
133
+ def __init__(self, key_identity: _Optional[_Union[KeyIdentity, _Mapping]]=...) -> None:
134
+ ...
135
+
136
+ class SessionInfo(_message.Message):
137
+ __slots__ = ('counter', 'publicKey', 'epoch', 'clock_time', 'status', 'handle')
138
+ COUNTER_FIELD_NUMBER: _ClassVar[int]
139
+ PUBLICKEY_FIELD_NUMBER: _ClassVar[int]
140
+ EPOCH_FIELD_NUMBER: _ClassVar[int]
141
+ CLOCK_TIME_FIELD_NUMBER: _ClassVar[int]
142
+ STATUS_FIELD_NUMBER: _ClassVar[int]
143
+ HANDLE_FIELD_NUMBER: _ClassVar[int]
144
+ counter: int
145
+ publicKey: bytes
146
+ epoch: bytes
147
+ clock_time: int
148
+ status: Session_Info_Status
149
+ handle: int
150
+
151
+ def __init__(self, counter: _Optional[int]=..., publicKey: _Optional[bytes]=..., epoch: _Optional[bytes]=..., clock_time: _Optional[int]=..., status: _Optional[_Union[Session_Info_Status, str]]=..., handle: _Optional[int]=...) -> None:
152
+ ...
@@ -0,0 +1,30 @@
1
+ """Generated protocol buffer code."""
2
+ from google.protobuf import descriptor as _descriptor
3
+ from google.protobuf import descriptor_pool as _descriptor_pool
4
+ from google.protobuf import symbol_database as _symbol_database
5
+ from google.protobuf.internal import builder as _builder
6
+ _sym_db = _symbol_database.Default()
7
+ from . import signatures_pb2 as signatures__pb2
8
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17universal_message.proto\x12\x10UniversalMessage\x1a\x10signatures.proto"g\n\x0bDestination\x12*\n\x06domain\x18\x01 \x01(\x0e2\x18.UniversalMessage.DomainH\x00\x12\x19\n\x0frouting_address\x18\x02 \x01(\x0cH\x00B\x11\n\x0fsub_destination"\x8e\x01\n\rMessageStatus\x12=\n\x10operation_status\x18\x01 \x01(\x0e2#.UniversalMessage.OperationStatus_E\x12>\n\x14signed_message_fault\x18\x02 \x01(\x0e2 .UniversalMessage.MessageFault_E";\n\x12SessionInfoRequest\x12\x12\n\npublic_key\x18\x01 \x01(\x0c\x12\x11\n\tchallenge\x18\x02 \x01(\x0c"\xd6\x03\n\x0fRoutableMessage\x125\n\x0eto_destination\x18\x06 \x01(\x0b2\x1d.UniversalMessage.Destination\x127\n\x10from_destination\x18\x07 \x01(\x0b2\x1d.UniversalMessage.Destination\x12#\n\x19protobuf_message_as_bytes\x18\n \x01(\x0cH\x00\x12D\n\x14session_info_request\x18\x0e \x01(\x0b2$.UniversalMessage.SessionInfoRequestH\x00\x12\x16\n\x0csession_info\x18\x0f \x01(\x0cH\x00\x123\n\x0esignature_data\x18\r \x01(\x0b2\x19.Signatures.SignatureDataH\x01\x12<\n\x13signedMessageStatus\x18\x0c \x01(\x0b2\x1f.UniversalMessage.MessageStatus\x12\x14\n\x0crequest_uuid\x182 \x01(\x0c\x12\x0c\n\x04uuid\x183 \x01(\x0c\x12\r\n\x05flags\x184 \x01(\rB\t\n\x07payloadB\r\n\x0bsub_sigDataJ\x04\x08\x01\x10\x06J\x04\x08\x10\x10)J\x04\x08\x0b\x10\x0c*T\n\x06Domain\x12\x14\n\x10DOMAIN_BROADCAST\x10\x00\x12\x1b\n\x17DOMAIN_VEHICLE_SECURITY\x10\x02\x12\x17\n\x13DOMAIN_INFOTAINMENT\x10\x03*`\n\x11OperationStatus_E\x12\x16\n\x12OPERATIONSTATUS_OK\x10\x00\x12\x18\n\x14OPERATIONSTATUS_WAIT\x10\x01\x12\x19\n\x15OPERATIONSTATUS_ERROR\x10\x02*\xe4\t\n\x0eMessageFault_E\x12\x1b\n\x17MESSAGEFAULT_ERROR_NONE\x10\x00\x12\x1b\n\x17MESSAGEFAULT_ERROR_BUSY\x10\x01\x12\x1e\n\x1aMESSAGEFAULT_ERROR_TIMEOUT\x10\x02\x12%\n!MESSAGEFAULT_ERROR_UNKNOWN_KEY_ID\x10\x03\x12#\n\x1fMESSAGEFAULT_ERROR_INACTIVE_KEY\x10\x04\x12(\n$MESSAGEFAULT_ERROR_INVALID_SIGNATURE\x10\x05\x12/\n+MESSAGEFAULT_ERROR_INVALID_TOKEN_OR_COUNTER\x10\x06\x12.\n*MESSAGEFAULT_ERROR_INSUFFICIENT_PRIVILEGES\x10\x07\x12&\n"MESSAGEFAULT_ERROR_INVALID_DOMAINS\x10\x08\x12&\n"MESSAGEFAULT_ERROR_INVALID_COMMAND\x10\t\x12\x1f\n\x1bMESSAGEFAULT_ERROR_DECODING\x10\n\x12\x1f\n\x1bMESSAGEFAULT_ERROR_INTERNAL\x10\x0b\x12,\n(MESSAGEFAULT_ERROR_WRONG_PERSONALIZATION\x10\x0c\x12$\n MESSAGEFAULT_ERROR_BAD_PARAMETER\x10\r\x12\'\n#MESSAGEFAULT_ERROR_KEYCHAIN_IS_FULL\x10\x0e\x12&\n"MESSAGEFAULT_ERROR_INCORRECT_EPOCH\x10\x0f\x12*\n&MESSAGEFAULT_ERROR_IV_INCORRECT_LENGTH\x10\x10\x12#\n\x1fMESSAGEFAULT_ERROR_TIME_EXPIRED\x10\x11\x124\n0MESSAGEFAULT_ERROR_NOT_PROVISIONED_WITH_IDENTITY\x10\x12\x12.\n*MESSAGEFAULT_ERROR_COULD_NOT_HASH_METADATA\x10\x13\x12,\n(MESSAGEFAULT_ERROR_TIME_TO_LIVE_TOO_LONG\x10\x14\x12-\n)MESSAGEFAULT_ERROR_REMOTE_ACCESS_DISABLED\x10\x15\x125\n1MESSAGEFAULT_ERROR_REMOTE_SERVICE_ACCESS_DISABLED\x10\x16\x12;\n7MESSAGEFAULT_ERROR_COMMAND_REQUIRES_ACCOUNT_CREDENTIALS\x10\x17\x12+\n\'MESSAGEFAULT_ERROR_REQUEST_MTU_EXCEEDED\x10\x18\x12,\n(MESSAGEFAULT_ERROR_RESPONSE_MTU_EXCEEDED\x10\x19\x12\'\n#MESSAGEFAULT_ERROR_REPEATED_COUNTER\x10\x1a\x12)\n%MESSAGEFAULT_ERROR_INVALID_KEY_HANDLE\x10\x1b\x123\n/MESSAGEFAULT_ERROR_REQUIRES_RESPONSE_ENCRYPTION\x10\x1c*9\n\x05Flags\x12\x15\n\x11FLAG_USER_COMMAND\x10\x00\x12\x19\n\x15FLAG_ENCRYPT_RESPONSE\x10\x01Bu\n$com.tesla.generated.universalmessageZMgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/universalmessageb\x06proto3')
9
+ _globals = globals()
10
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
11
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'universal_message_pb2', _globals)
12
+ if _descriptor._USE_C_DESCRIPTORS == False:
13
+ _globals['DESCRIPTOR']._options = None
14
+ _globals['DESCRIPTOR']._serialized_options = b'\n$com.tesla.generated.universalmessageZMgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/universalmessage'
15
+ _globals['_DOMAIN']._serialized_start = 847
16
+ _globals['_DOMAIN']._serialized_end = 931
17
+ _globals['_OPERATIONSTATUS_E']._serialized_start = 933
18
+ _globals['_OPERATIONSTATUS_E']._serialized_end = 1029
19
+ _globals['_MESSAGEFAULT_E']._serialized_start = 1032
20
+ _globals['_MESSAGEFAULT_E']._serialized_end = 2284
21
+ _globals['_FLAGS']._serialized_start = 2286
22
+ _globals['_FLAGS']._serialized_end = 2343
23
+ _globals['_DESTINATION']._serialized_start = 63
24
+ _globals['_DESTINATION']._serialized_end = 166
25
+ _globals['_MESSAGESTATUS']._serialized_start = 169
26
+ _globals['_MESSAGESTATUS']._serialized_end = 311
27
+ _globals['_SESSIONINFOREQUEST']._serialized_start = 313
28
+ _globals['_SESSIONINFOREQUEST']._serialized_end = 372
29
+ _globals['_ROUTABLEMESSAGE']._serialized_start = 375
30
+ _globals['_ROUTABLEMESSAGE']._serialized_end = 845