diff --git a/.changeset/navigation-supercharger-id.md b/.changeset/navigation-supercharger-id.md new file mode 100644 index 0000000..41ad000 --- /dev/null +++ b/.changeset/navigation-supercharger-id.md @@ -0,0 +1,12 @@ +--- +"@teslemetry/tesla-protocol": minor +--- + +Add `CarServer.NavigationSuperchargerRequest.id` (`int64`, tag 1), the supercharger +location the request navigates to - the same identifier `CarServer.Superchargers.id` +carries in a `GetNearbyChargingSites` reply. Tag 1 was previously reserved and unmodelled, +so a supercharger-nav command could only carry a trip order with no supercharger named. + +Wire-compatible addition: nothing is renamed or renumbered, and `"order"` stays reserved. +Callers that want the vehicle to act on the request must set `id` alongside +`remoteNavTripOrder` (TypeScript) / `remote_nav_trip_order` (Python). diff --git a/AGENTS.md b/AGENTS.md index d651c1b..4132831 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -16,7 +16,7 @@ This file is the project's committed home for project-intrinsic agent knowledge: - Adding a wholly new proto directory needs registering in three places: the `buf.yaml` module list, `GROUPS_LIST` in `scripts/generate.sh`, and the layout table in `README.md`. TypeScript/Python package exports are wildcarded, so no per-group registration is needed there. - `scripts/build_catalog.py` regenerates the descriptor-based protobuf surface catalog (`catalog/catalog.json` + `catalog/SUMMARY.md`) from `proto/`: every group, file, package, message, enum, field/tag/type, oneof, reservation, import, and generated TS/Python target. CI fails on any diff or on inconsistent group registration across `buf.yaml`/`GROUPS_LIST`/README, so run it after any proto or group-registration change. `energy_device/google/rpc/status.proto` is catalogued but excluded from message/enum/field totals since it's never a compiled top-level input (only reachable via import). - Some `energy_device.v1` services (`SMAPI`, `WMSAAPI`) have no modeled request/response bodies, only the routing enum. A few `energy_device.v1` messages carry a field whose type lives in a sibling, not-yet-published package (`energy_registration.v1`) - left unmodeled with a short inline comment rather than guessed at or vendored in. -- `buf breaking`'s tag-renumbering forbidding (see `.changeset/README.md`) is a hard CI gate, not a guideline: it fires even when you have hard evidence an already-published field's tag is wrong, and reserving just the number isn't enough - `FIELD_NO_DELETE` also requires reserving the field's name, which then collides with reusing that name at the corrected number. Don't attempt an in-place renumber; that always needs a maintainer decision. The sanctioned fix (once approved) is reserve the old number and name, then add a differently-named field at the correct number - a breaking rename, not a wire-compatible change, so it needs a major changeset. `NavigationSuperchargerRequest` (`reserved 1`/`"order"`, `remote_nav_trip_order` at tag 2) is a live example. +- `buf breaking`'s tag-renumbering forbidding (see `.changeset/README.md`) is a hard CI gate, not a guideline: it fires even when you have hard evidence an already-published field's tag is wrong, and reserving just the number isn't enough - `FIELD_NO_DELETE` also requires reserving the field's name, which then collides with reusing that name at the corrected number. Don't attempt an in-place renumber; that always needs a maintainer decision. The sanctioned fix (once approved) is reserve the old number and name, then add a differently-named field at the correct number - a breaking rename, not a wire-compatible change, so it needs a major changeset. `NavigationSuperchargerRequest` is a live example: `"order"` stays reserved by name, with `id` at tag 1 and `remote_nav_trip_order` at tag 2. - Cross-package wire-format confirmation lives in `fixtures/golden/*.json`: language-neutral hex-encoded cases, each consumed by both `packages/typescript/test/*.test.ts` (`node --test`) and `packages/python/tests/test_*.py` (`unittest`), asserting both encoders produce identical bytes and both decoders round-trip them. CI runs both suites. Add a new fixture file per confirmed command/message rather than growing one file unboundedly. ## Maintaining this file diff --git a/catalog/SUMMARY.md b/catalog/SUMMARY.md index e48b9ea..17394df 100644 --- a/catalog/SUMMARY.md +++ b/catalog/SUMMARY.md @@ -4,12 +4,12 @@ Generated by `scripts/build_catalog.py` from `proto/`. Do not edit by hand; regenerate with `.venv/bin/python scripts/build_catalog.py` and commit the diff. See `catalog/catalog.json` for the full descriptor-based inventory. -**Totals:** 38 source files, 7 groups, 868 messages, 237 enums, 2804 fields. +**Totals:** 38 source files, 7 groups, 868 messages, 237 enums, 2805 fields. | Group | Source files | Compiled top-level inputs | Messages | Enums | Fields | |---|---:|---:|---:|---:|---:| | `charging` | 1 | 1 | 6 | 0 | 31 | -| `command` | 10 | 10 | 315 | 97 | 1420 | +| `command` | 10 | 10 | 315 | 97 | 1421 | | `dashcam` | 1 | 1 | 1 | 2 | 16 | | `energy_command` | 1 | 1 | 0 | 1 | 0 | | `energy_device` | 19 | 18 | 435 | 89 | 1014 | diff --git a/catalog/catalog.json b/catalog/catalog.json index 16bab75..8fe9b9c 100644 --- a/catalog/catalog.json +++ b/catalog/catalog.json @@ -348,7 +348,7 @@ }, "messages": 315, "enums": 97, - "fields": 1420, + "fields": 1421, "files": [ { "package": "CarServer", @@ -4686,6 +4686,14 @@ "fqn": ".CarServer.NavigationSuperchargerRequest", "name": "NavigationSuperchargerRequest", "fields": [ + { + "number": 1, + "name": "id", + "type": "TYPE_INT64", + "type_name": null, + "label": "LABEL_OPTIONAL", + "oneof": null + }, { "number": 2, "name": "remote_nav_trip_order", @@ -4696,12 +4704,7 @@ } ], "oneofs": [], - "reserved_ranges": [ - [ - 1, - 1 - ] - ], + "reserved_ranges": [], "reserved_names": [ "order" ], @@ -41947,7 +41950,7 @@ "groups": 7, "messages": 868, "enums": 237, - "fields": 2804 + "fields": 2805 }, "registration": { "consistent": true, diff --git a/fixtures/golden/navigation_supercharger_id.json b/fixtures/golden/navigation_supercharger_id.json new file mode 100644 index 0000000..377e433 --- /dev/null +++ b/fixtures/golden/navigation_supercharger_id.json @@ -0,0 +1,31 @@ +{ + "description": "Golden wire-format fixtures for CarServer.Action.vehicleAction (navigation supercharger request, supercharger location id). Pins NavigationSuperchargerRequest.id as an int64 varint at tag 1 alongside remoteNavTripOrder at tag 2. Ids below are synthetic. Consumed identically by the TypeScript and Python test suites: both encoders must produce these exact bytes, and both decoders must round-trip them back to the same field values.", + "outer_message": "CarServer.Action", + "outer_field": { "name": "vehicleAction", "tag": 2, "type": "CarServer.VehicleAction" }, + "cases": [ + { + "name": "navigation_supercharger_id_only", + "vehicle_action_field": { "name": "navigationSuperchargerRequest", "tag": 22, "type": "CarServer.NavigationSuperchargerRequest" }, + "payload": { "id": 123456, "remote_nav_trip_order": "REMOTE_NAV_TRIP_ORDER_UNKNOWN", "remote_nav_trip_order_number": 0 }, + "hex": "1207b2010408c0c407" + }, + { + "name": "navigation_supercharger_id_with_replace", + "vehicle_action_field": { "name": "navigationSuperchargerRequest", "tag": 22, "type": "CarServer.NavigationSuperchargerRequest" }, + "payload": { "id": 123456, "remote_nav_trip_order": "REMOTE_NAV_TRIP_ORDER_REPLACE", "remote_nav_trip_order_number": 1 }, + "hex": "1209b2010608c0c4071001" + }, + { + "name": "navigation_supercharger_id_with_prepend", + "vehicle_action_field": { "name": "navigationSuperchargerRequest", "tag": 22, "type": "CarServer.NavigationSuperchargerRequest" }, + "payload": { "id": 987654321, "remote_nav_trip_order": "REMOTE_NAV_TRIP_ORDER_PREPEND", "remote_nav_trip_order_number": 2 }, + "hex": "120bb2010808b1d1f9d6031002" + }, + { + "name": "navigation_supercharger_id_with_append", + "vehicle_action_field": { "name": "navigationSuperchargerRequest", "tag": 22, "type": "CarServer.NavigationSuperchargerRequest" }, + "payload": { "id": 1, "remote_nav_trip_order": "REMOTE_NAV_TRIP_ORDER_APPEND", "remote_nav_trip_order_number": 3 }, + "hex": "1207b2010408011003" + } + ] +} diff --git a/packages/python/tesla_protocol/command/car_server_pb2.py b/packages/python/tesla_protocol/command/car_server_pb2.py index 63a90c0..90c4bd4 100644 --- a/packages/python/tesla_protocol/command/car_server_pb2.py +++ b/packages/python/tesla_protocol/command/car_server_pb2.py @@ -12,7 +12,7 @@ from . import signatures_pb2 as signatures__pb2 from . import vcsec_pb2 as vcsec__pb2 from . import vehicle_pb2 as vehicle__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10car_server.proto\x12\tCarServer\x1a\x0ccommon.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\nkeys.proto\x1a\x10signatures.proto\x1a\x0bvcsec.proto\x1a\rvehicle.proto"O\n\x06Action\x121\n\rvehicleAction\x18\x02 \x01(\x0b2\x18.CarServer.VehicleActionH\x00B\x0c\n\naction_msgJ\x04\x08\x03\x10\x06"\xa2K\n\rVehicleAction\x123\n\x0egetVehicleData\x18\x01 \x01(\x0b2\x19.CarServer.GetVehicleDataH\x00\x127\n\x10remoteStartDrive\x18\x02 \x01(\x0b2\x1b.CarServer.RemoteStartDriveH\x00\x12=\n\x13createStreamSession\x18\x03 \x01(\x0b2\x1e.CarServer.CreateStreamSessionH\x00\x121\n\rstreamMessage\x18\x04 \x01(\x0b2\x18.CarServer.StreamMessageH\x00\x12C\n\x16chargingSetLimitAction\x18\x05 \x01(\x0b2!.CarServer.ChargingSetLimitActionH\x00\x12E\n\x17chargingStartStopAction\x18\x06 \x01(\x0b2".CarServer.ChargingStartStopActionH\x00\x12U\n\x1fdrivingClearSpeedLimitPinAction\x18\x07 \x01(\x0b2*.CarServer.DrivingClearSpeedLimitPinActionH\x00\x12K\n\x1adrivingSetSpeedLimitAction\x18\x08 \x01(\x0b2%.CarServer.DrivingSetSpeedLimitActionH\x00\x12E\n\x17drivingSpeedLimitAction\x18\t \x01(\x0b2".CarServer.DrivingSpeedLimitActionH\x00\x123\n\x0ehvacAutoAction\x18\n \x01(\x0b2\x19.CarServer.HvacAutoActionH\x00\x12U\n\x1fhvacSetPreconditioningMaxAction\x18\x0c \x01(\x0b2*.CarServer.HvacSetPreconditioningMaxActionH\x00\x12Q\n\x1dhvacSteeringWheelHeaterAction\x18\r \x01(\x0b2(.CarServer.HvacSteeringWheelHeaterActionH\x00\x12U\n\x1fhvacTemperatureAdjustmentAction\x18\x0e \x01(\x0b2*.CarServer.HvacTemperatureAdjustmentActionH\x00\x125\n\x0fmediaPlayAction\x18\x0f \x01(\x0b2\x1a.CarServer.MediaPlayActionH\x00\x129\n\x11mediaUpdateVolume\x18\x10 \x01(\x0b2\x1c.CarServer.MediaUpdateVolumeH\x00\x129\n\x11mediaNextFavorite\x18\x11 \x01(\x0b2\x1c.CarServer.MediaNextFavoriteH\x00\x12A\n\x15mediaPreviousFavorite\x18\x12 \x01(\x0b2 .CarServer.MediaPreviousFavoriteH\x00\x123\n\x0emediaNextTrack\x18\x13 \x01(\x0b2\x19.CarServer.MediaNextTrackH\x00\x12;\n\x12mediaPreviousTrack\x18\x14 \x01(\x0b2\x1d.CarServer.MediaPreviousTrackH\x00\x129\n\x11navigationRequest\x18\x15 \x01(\x0b2\x1c.CarServer.NavigationRequestH\x00\x12Q\n\x1dnavigationSuperchargerRequest\x18\x16 \x01(\x0b2(.CarServer.NavigationSuperchargerRequestH\x00\x12C\n\x16getNearbyChargingSites\x18\x17 \x01(\x0b2!.CarServer.GetNearbyChargingSitesH\x00\x12O\n\x1cuiSetUpcomingCalendarEntries\x18\x18 \x01(\x0b2\'.CarServer.UiSetUpcomingCalendarEntriesH\x00\x12g\n(vehicleControlCancelSoftwareUpdateAction\x18\x19 \x01(\x0b23.CarServer.VehicleControlCancelSoftwareUpdateActionH\x00\x12U\n\x1fvehicleControlFlashLightsAction\x18\x1a \x01(\x0b2*.CarServer.VehicleControlFlashLightsActionH\x00\x12O\n\x1cvehicleControlHonkHornAction\x18\x1b \x01(\x0b2\'.CarServer.VehicleControlHonkHornActionH\x00\x12Y\n!vehicleControlResetValetPinAction\x18\x1c \x01(\x0b2,.CarServer.VehicleControlResetValetPinActionH\x00\x12k\n*vehicleControlScheduleSoftwareUpdateAction\x18\x1d \x01(\x0b25.CarServer.VehicleControlScheduleSoftwareUpdateActionH\x00\x12Y\n!vehicleControlSetSentryModeAction\x18\x1e \x01(\x0b2,.CarServer.VehicleControlSetSentryModeActionH\x00\x12W\n vehicleControlSetValetModeAction\x18\x1f \x01(\x0b2+.CarServer.VehicleControlSetValetModeActionH\x00\x12_\n$vehicleControlSunroofOpenCloseAction\x18 \x01(\x0b2/.CarServer.VehicleControlSunroofOpenCloseActionH\x00\x12]\n#vehicleControlTriggerHomelinkAction\x18! \x01(\x0b2..CarServer.VehicleControlTriggerHomelinkActionH\x00\x12K\n\x1avehicleControlWindowAction\x18" \x01(\x0b2%.CarServer.VehicleControlWindowActionH\x00\x12E\n\x17hvacBioweaponModeAction\x18# \x01(\x0b2".CarServer.HvacBioweaponModeActionH\x00\x12A\n\x15hvacSeatHeaterActions\x18$ \x01(\x0b2 .CarServer.HvacSeatHeaterActionsH\x00\x12E\n\x17vehicleDataSubscription\x18% \x01(\x0b2".CarServer.VehicleDataSubscriptionH\x00\x123\n\x0evehicleDataAck\x18& \x01(\x0b2\x19.CarServer.VehicleDataAckH\x00\x12;\n\x12vitalsSubscription\x18\' \x01(\x0b2\x1d.CarServer.VitalsSubscriptionH\x00\x12)\n\tvitalsAck\x18( \x01(\x0b2\x14.CarServer.VitalsAckH\x00\x12E\n\x17scheduledChargingAction\x18) \x01(\x0b2".CarServer.ScheduledChargingActionH\x00\x12G\n\x18scheduledDepartureAction\x18* \x01(\x0b2#.CarServer.ScheduledDepartureActionH\x00\x12A\n\x15setChargingAmpsAction\x18+ \x01(\x0b2 .CarServer.SetChargingAmpsActionH\x00\x12E\n\x17hvacClimateKeeperAction\x18, \x01(\x0b2".CarServer.HvacClimateKeeperActionH\x00\x12E\n\x17hvacRecirculationAction\x18- \x01(\x0b2".CarServer.HvacRecirculationActionH\x00\x12\x1f\n\x04ping\x18. \x01(\x0b2\x0f.CarServer.PingH\x00\x12A\n\x15dashcamSaveClipAction\x18/ \x01(\x0b2 .CarServer.DashcamSaveClipActionH\x00\x12A\n\x15autoSeatClimateAction\x180 \x01(\x0b2 .CarServer.AutoSeatClimateActionH\x00\x12A\n\x15hvacSeatCoolerActions\x181 \x01(\x0b2 .CarServer.HvacSeatCoolerActionsH\x00\x12W\n setCabinOverheatProtectionAction\x182 \x01(\x0b2+.CarServer.SetCabinOverheatProtectionActionH\x00\x121\n\rpiiKeyRequest\x183 \x01(\x0b2\x18.CarServer.PiiKeyRequestH\x00\x12?\n\x14pseudonymSyncRequest\x184 \x01(\x0b2\x1f.CarServer.PseudonymSyncRequestH\x00\x12?\n\x14navigationGpsRequest\x185 \x01(\x0b2\x1f.CarServer.NavigationGpsRequestH\x00\x12?\n\x14setVehicleNameAction\x186 \x01(\x0b2\x1f.CarServer.SetVehicleNameActionH\x00\x12?\n\x14setRateTariffRequest\x187 \x01(\x0b2\x1f.CarServer.SetRateTariffRequestH\x00\x12?\n\x14getRateTariffRequest\x188 \x01(\x0b2\x1f.CarServer.GetRateTariffRequestH\x00\x12;\n\x12videoRequestAction\x189 \x01(\x0b2\x1d.CarServer.VideoRequestActionH\x00\x12=\n\x13takeDrivenoteAction\x18: \x01(\x0b2\x1e.CarServer.TakeDrivenoteActionH\x00\x12=\n\x13chargePortDoorClose\x18= \x01(\x0b2\x1e.CarServer.ChargePortDoorCloseH\x00\x12;\n\x12chargePortDoorOpen\x18> \x01(\x0b2\x1d.CarServer.ChargePortDoorOpenH\x00\x12S\n\x1ebluetoothClassicPairingRequest\x18? \x01(\x0b2).CarServer.BluetoothClassicPairingRequestH\x00\x121\n\rboomboxAction\x18@ \x01(\x0b2\x18.CarServer.BoomboxActionH\x00\x12<\n\x0fguestModeAction\x18A \x01(\x0b2!.CarServer.VehicleState.GuestModeH\x00\x127\n\x10setCopTempAction\x18B \x01(\x0b2\x1b.CarServer.SetCopTempActionH\x00\x12Q\n\x1daddManagedChargingSiteRequest\x18C \x01(\x0b2(.CarServer.AddManagedChargingSiteRequestH\x00\x12W\n removeManagedChargingSiteRequest\x18D \x01(\x0b2+.CarServer.RemoveManagedChargingSiteRequestH\x00\x12A\n\x15navigationRouteAction\x18E \x01(\x0b2 .CarServer.NavigationRouteActionH\x00\x129\n\x11autoStwHeatAction\x18F \x01(\x0b2\x1c.CarServer.AutoStwHeatActionH\x00\x12;\n\x12stwHeatLevelAction\x18G \x01(\x0b2\x1d.CarServer.StwHeatLevelActionH\x00\x12=\n\x13eraseUserDataAction\x18H \x01(\x0b2\x1e.CarServer.EraseUserDataActionH\x00\x12S\n\x1egetManagedChargingSitesRequest\x18I \x01(\x0b2).CarServer.GetManagedChargingSitesRequestH\x00\x12Y\n!updateChargeOnSolarFeatureRequest\x18J \x01(\x0b2,.CarServer.UpdateChargeOnSolarFeatureRequestH\x00\x12S\n\x1egetChargeOnSolarFeatureRequest\x18K \x01(\x0b2).CarServer.GetChargeOnSolarFeatureRequestH\x00\x12Y\n!vehicleControlSetPinToDriveAction\x18M \x01(\x0b2,.CarServer.VehicleControlSetPinToDriveActionH\x00\x12]\n#vehicleControlResetPinToDriveAction\x18N \x01(\x0b2..CarServer.VehicleControlResetPinToDriveActionH\x00\x12_\n$drivingClearSpeedLimitPinAdminAction\x18O \x01(\x0b2/.CarServer.DrivingClearSpeedLimitPinAdminActionH\x00\x12A\n\x15setOutletsOnOffAction\x18P \x01(\x0b2 .CarServer.SetOutletsOnOffActionH\x00\x12?\n\x14setOutletTimerAction\x18Q \x01(\x0b2\x1f.CarServer.SetOutletTimerActionH\x00\x12E\n\x17setOutletSocLimitAction\x18R \x01(\x0b2".CarServer.SetOutletSocLimitActionH\x00\x12E\n\x17setPowerFeedOnOffAction\x18S \x01(\x0b2".CarServer.SetPowerFeedOnOffActionH\x00\x12E\n\x17setPowerFeedTimerAction\x18T \x01(\x0b2".CarServer.SetPowerFeedTimerActionH\x00\x12K\n\x1asetPowerFeedSocLimitAction\x18U \x01(\x0b2%.CarServer.SetPowerFeedSocLimitActionH\x00\x12[\n"setTrailerLightTestStartStopAction\x18V \x01(\x0b2-.CarServer.SetTrailerLightTestStartStopActionH\x00\x12U\n\x1fsetTruckBedLightAutoStateAction\x18W \x01(\x0b2*.CarServer.SetTruckBedLightAutoStateActionH\x00\x12W\n setTruckBedLightBrightnessAction\x18X \x01(\x0b2+.CarServer.SetTruckBedLightBrightnessActionH\x00\x12g\n(vehicleControlResetPinToDriveAdminAction\x18Y \x01(\x0b23.CarServer.VehicleControlResetPinToDriveAdminActionH\x00\x12K\n\x1anavigationWaypointsRequest\x18Z \x01(\x0b2%.CarServer.NavigationWaypointsRequestH\x00\x12K\n\x1asetPowershareFeatureAction\x18[ \x01(\x0b2%.CarServer.SetPowershareFeatureActionH\x00\x12Y\n!setPowershareDischargeLimitAction\x18\\ \x01(\x0b2,.CarServer.SetPowershareDischargeLimitActionH\x00\x12K\n\x1asetPowershareRequestAction\x18] \x01(\x0b2%.CarServer.SetPowershareRequestActionH\x00\x12G\n\x18setTentModeRequestAction\x18^ \x01(\x0b2#.CarServer.SetTentModeRequestActionH\x00\x12N\n\x1esetFrontZoneLightRequestAction\x18_ \x01(\x0b2$.CarServer.SetZoneLightRequestActionH\x00\x12M\n\x1dsetRearZoneLightRequestAction\x18` \x01(\x0b2$.CarServer.SetZoneLightRequestActionH\x00\x12<\n\x17addChargeScheduleAction\x18a \x01(\x0b2\x19.CarServer.ChargeScheduleH\x00\x12K\n\x1aremoveChargeScheduleAction\x18b \x01(\x0b2%.CarServer.RemoveChargeScheduleActionH\x00\x12H\n\x1daddPreconditionScheduleAction\x18c \x01(\x0b2\x1f.CarServer.PreconditionScheduleH\x00\x12W\n removePreconditionScheduleAction\x18d \x01(\x0b2+.CarServer.RemovePreconditionScheduleActionH\x00\x12M\n\x1bsetLightbarBrightnessAction\x18e \x01(\x0b2&.CarServer.SetLightbarBrightnessActionH\x00\x12E\n\x17setLightbarMiddleAction\x18f \x01(\x0b2".CarServer.SetLightbarMiddleActionH\x00\x12C\n\x16setLightbarDitchAction\x18g \x01(\x0b2!.CarServer.SetLightbarDitchActionH\x00\x129\n\x11getMessagesAction\x18h \x01(\x0b2\x1c.CarServer.GetMessagesActionH\x00\x12E\n\x17teslaAuthResponseAction\x18i \x01(\x0b2".CarServer.TeslaAuthResponseActionH\x00\x12U\n\x1fnavigationGpsDestinationRequest\x18j \x01(\x0b2*.CarServer.NavigationGpsDestinationRequestH\x00\x12c\n&batchRemovePreconditionSchedulesAction\x18k \x01(\x0b21.CarServer.BatchRemovePreconditionSchedulesActionH\x00\x12W\n batchRemoveChargeSchedulesAction\x18l \x01(\x0b2+.CarServer.BatchRemoveChargeSchedulesActionH\x00\x12S\n\x1eparentalControlsClearPinAction\x18m \x01(\x0b2).CarServer.ParentalControlsClearPinActionH\x00\x12]\n#parentalControlsClearPinAdminAction\x18n \x01(\x0b2..CarServer.ParentalControlsClearPinAdminActionH\x00\x12C\n\x16parentalControlsAction\x18o \x01(\x0b2!.CarServer.ParentalControlsActionH\x00\x12_\n$parentalControlsEnableSettingsAction\x18p \x01(\x0b2/.CarServer.ParentalControlsEnableSettingsActionH\x00\x12]\n#parentalControlsSetSpeedLimitAction\x18q \x01(\x0b2..CarServer.ParentalControlsSetSpeedLimitActionH\x00\x12=\n\x13cancelSohTestAction\x18r \x01(\x0b2\x1e.CarServer.CancelSohTestActionH\x00\x12=\n\x13stopLightShowAction\x18t \x01(\x0b2\x1e.CarServer.StopLightShowActionH\x00\x12?\n\x14startLightShowAction\x18u \x01(\x0b2\x1f.CarServer.StartLightShowActionH\x00\x12G\n\x18setSuspensionLevelAction\x18v \x01(\x0b2#.CarServer.SetSuspensionLevelActionH\x00\x12F\n\x17setDischargeLimitAction\x18\x81\x01 \x01(\x0b2".CarServer.SetDischargeLimitActionH\x00\x12B\n\x15setLowPowerModeAction\x18\x82\x01 \x01(\x0b2 .CarServer.SetLowPowerModeActionH\x00\x12H\n\x18setTemperatureUnitAction\x18\x84\x01 \x01(\x0b2#.CarServer.SetTemperatureUnitActionH\x00\x12B\n\x15setDistanceUnitAction\x18\x85\x01 \x01(\x0b2 .CarServer.SetDistanceUnitActionH\x00\x12L\n\x1asetTimeDisplayFormatAction\x18\x86\x01 \x01(\x0b2%.CarServer.SetTimeDisplayFormatActionH\x00\x12J\n\x19setTirePressureUnitAction\x18\x87\x01 \x01(\x0b2$.CarServer.SetTirePressureUnitActionH\x00\x12P\n\x1csetEnergyDisplayFormatAction\x18\x88\x01 \x01(\x0b2\'.CarServer.SetEnergyDisplayFormatActionH\x00\x12V\n\x1fsetKeepAccessoryPowerModeAction\x18\x8a\x01 \x01(\x0b2*.CarServer.SetKeepAccessoryPowerModeActionH\x00\x12n\n+setupCloudProfileWithLocalProfileUuidAction\x18\x8b\x01 \x01(\x0b26.CarServer.SetupCloudProfileWithLocalProfileUuidActionH\x00\x12\\\n"getLocalProfilesForVaultUuidAction\x18\x8c\x01 \x01(\x0b2-.CarServer.GetLocalProfilesForVaultUuidActionH\x00\x12>\n\x13fetchKeysInfoAction\x18\x8e\x01 \x01(\x0b2\x1e.CarServer.FetchKeysInfoActionH\x00\x12H\n\x18deleteDashcamClipsAction\x18\x90\x01 \x01(\x0b2#.CarServer.DeleteDashcamClipsActionH\x00\x126\n\x0fformatUsbAction\x18\x92\x01 \x01(\x0b2\x1a.CarServer.FormatUSBActionH\x00\x122\n\rbandwidthTest\x18\x95\x01 \x01(\x0b2\x18.CarServer.BandwidthTestH\x00\x12X\n setPhoneSettingPreferencesAction\x18\x97\x01 \x01(\x0b2+.CarServer.SetPhoneSettingPreferencesActionH\x00\x12R\n\x1dcancelVehicleDataSubscription\x18\xab\x01 \x01(\x0b2(.CarServer.CancelVehicleDataSubscriptionH\x00B\x14\n\x12vehicle_action_msgJ\x04\x08\x0b\x10\x0cJ\x04\x08<\x10=J\x04\x08L\x10M"\xb0\x0b\n\x0eGetVehicleData\x121\n\x0egetGuiSettings\x18\x01 \x01(\x0b2\x19.CarServer.GetGuiSettings\x121\n\x0egetChargeState\x18\x02 \x01(\x0b2\x19.CarServer.GetChargeState\x123\n\x0fgetClimateState\x18\x03 \x01(\x0b2\x1a.CarServer.GetClimateState\x12/\n\rgetDriveState\x18\x04 \x01(\x0b2\x18.CarServer.GetDriveState\x12?\n\x15getLegacyVehicleState\x18\x05 \x01(\x0b2 .CarServer.GetLegacyVehicleState\x125\n\x10getVehicleConfig\x18\x06 \x01(\x0b2\x1b.CarServer.GetVehicleConfig\x125\n\x10getLocationState\x18\x07 \x01(\x0b2\x1b.CarServer.GetLocationState\x125\n\x10getClosuresState\x18\x08 \x01(\x0b2\x1b.CarServer.GetClosuresState\x12C\n\x17getParkedAccessoryState\x18\t \x01(\x0b2".CarServer.GetParkedAccessoryState\x12A\n\x16getChargeScheduleState\x18\n \x01(\x0b2!.CarServer.GetChargeScheduleState\x12S\n\x1fgetPreconditioningScheduleState\x18\x0b \x01(\x0b2*.CarServer.GetPreconditioningScheduleState\x12+\n\x0bgetSohState\x18\x0c \x01(\x0b2\x16.CarServer.GetSohState\x12?\n\x15getVehicleDetailState\x18\r \x01(\x0b2 .CarServer.GetVehicleDetailState\x12=\n\x14getTirePressureState\x18\x0e \x01(\x0b2\x1f.CarServer.GetTirePressureState\x12/\n\rgetMediaState\x18\x0f \x01(\x0b2\x18.CarServer.GetMediaState\x12;\n\x13getMediaDetailState\x18\x10 \x01(\x0b2\x1e.CarServer.GetMediaDetailState\x12A\n\x16getSoftwareUpdateState\x18\x11 \x01(\x0b2!.CarServer.GetSoftwareUpdateState\x123\n\x0fgetVehicleState\x18\x12 \x01(\x0b2\x1a.CarServer.GetVehicleState\x12E\n\x18getParentalControlsState\x18\x13 \x01(\x0b2#.CarServer.GetParentalControlsState\x12/\n\rgetAlertState\x18\x14 \x01(\x0b2\x18.CarServer.GetAlertState\x127\n\x11getLightShowState\x18\x15 \x01(\x0b2\x1c.CarServer.GetLightShowState\x12=\n\x14getVehicleImageState\x18\x16 \x01(\x0b2\x1f.CarServer.GetVehicleImageState\x129\n\x12getSuspensionState\x18\x17 \x01(\x0b2\x1d.CarServer.GetSuspensionState\x12Q\n\x1egetChildPresenceDetectionState\x18\x19 \x01(\x0b2).CarServer.GetChildPresenceDetectionState"\x10\n\x0eGetGuiSettings"\x17\n\x15GetLegacyVehicleState"\x12\n\x10GetVehicleConfig"\r\n\x0bGetSohState"\x17\n\x15GetVehicleDetailState"\x19\n\x17GetParkedAccessoryState"\x11\n\x0fGetVehicleState"\x0f\n\rGetAlertState"\x13\n\x11GetLightShowState"M\n\x14GetVehicleImageState\x125\n\rimageRequests\x18\x01 \x03(\x0b2\x1e.CarServer.VehicleImageRequest"\x14\n\x12GetSuspensionState" \n\x1eGetChildPresenceDetectionState"H\n\x1cVehicleImageDataChunkRequest\x12\x14\n\x0cchunk_offset\x18\x01 \x01(\r\x12\x12\n\nchunk_size\x18\x02 \x01(\r"\xda\x01\n\x13VehicleImageRequest\x125\n\x08dataType\x18\x01 \x01(\x0e2#.CarServer.VehicleImageRequest.Type\x123\n\timageType\x18\x02 \x01(\x0e2 .CarServer.VehicleImageStateType\x12=\n\x0cchunkRequest\x18\x03 \x01(\x0b2\'.CarServer.VehicleImageDataChunkRequest"\x18\n\x04Type\x12\x06\n\x02ID\x10\x00\x12\x08\n\x04DATA\x10\x01"\x16\n\x14GetTirePressureState"\x0f\n\rGetMediaState"\x15\n\x13GetMediaDetailState"\x18\n\x16GetSoftwareUpdateState"\x10\n\x0eGetChargeState"\x11\n\x0fGetClimateState"\x0f\n\rGetDriveState"\x12\n\x10GetLocationState"\x12\n\x10GetClosuresState"\x18\n\x16GetChargeScheduleState"!\n\x1fGetPreconditioningScheduleState"\x1a\n\x18GetParentalControlsState">\n\x13EraseUserDataAction\x12\x0e\n\x06reason\x18\x01 \x01(\t\x12\x17\n\x0ftrigger_on_park\x18\x02 \x01(\x08"\x82\n\n\x08Response\x12-\n\x0cactionStatus\x18\x01 \x01(\x0b2\x17.CarServer.ActionStatus\x12-\n\x0bvehicleData\x18\x02 \x01(\x0b2\x16.CarServer.VehicleDataH\x00\x129\n\x16getSessionInfoResponse\x18\x03 \x01(\x0b2\x17.Signatures.SessionInfoH\x00\x121\n\rstreamMessage\x18\x04 \x01(\x0b2\x18.CarServer.StreamMessageH\x00\x12@\n\x16getNearbyChargingSites\x18\x05 \x01(\x0b2\x1e.CarServer.NearbyChargingSitesH\x00\x12U\n\x1fvehicleDataSubscriptionResponse\x18\x06 \x01(\x0b2*.CarServer.VehicleDataSubscriptionResponseH\x00\x12K\n\x1avitalsSubscriptionResponse\x18\x08 \x01(\x0b2%.CarServer.VitalsSubscriptionResponseH\x00\x12\x1f\n\x04ping\x18\t \x01(\x0b2\x0f.CarServer.PingH\x00\x123\n\x0epiiKeyResponse\x18\n \x01(\x0b2\x19.CarServer.PiiKeyResponseH\x00\x12A\n\x15pseudonymSyncResponse\x18\x0b \x01(\x0b2 .CarServer.PseudonymSyncResponseH\x00\x12A\n\x15getRateTariffResponse\x18\x0c \x01(\x0b2 .CarServer.GetRateTariffResponseH\x00\x12E\n\x17navigationRouteResponse\x18\r \x01(\x0b2".CarServer.NavigationRouteResponseH\x00\x12U\n\x1fgetManagedChargingSitesResponse\x18\x0e \x01(\x0b2*.CarServer.GetManagedChargingSitesResponseH\x00\x12U\n\x1fgetChargeOnSolarFeatureResponse\x18\x0f \x01(\x0b2*.CarServer.GetChargeOnSolarFeatureResponseH\x00\x12S\n\x1eaddManagedChargingSiteResponse\x18\x10 \x01(\x0b2).CarServer.AddManagedChargingSiteResponseH\x00\x12=\n\x13getMessagesResponse\x18\x12 \x01(\x0b2\x1e.CarServer.GetMessagesResponseH\x00\x12G\n\x18getLocalProfilesResponse\x18\x14 \x01(\x0b2#.CarServer.GetLocalProfilesResponseH\x00\x127\n\x10keysInfoResponse\x18\x18 \x01(\x0b2\x1b.CarServer.KeysInfoResponseH\x00\x12A\n\x15bandwidthTestResponse\x18\x19 \x01(\x0b2 .CarServer.BandwidthTestResponseH\x00B\x0e\n\x0cresponse_msgJ\x04\x08\x11\x10\x12J\x04\x08\x13\x10\x14"g\n\x1fVehicleDataSubscriptionResponse\x12\x0f\n\x07unknown\x18\x03 \x01(\t\x123\n\x10pii_key_response\x18\x04 \x01(\x0b2\x19.CarServer.PiiKeyResponse"A\n\x1aVitalsSubscriptionResponse\x12\x12\n\nsession_id\x18\x01 \x01(\x05\x12\x0f\n\x07unknown\x18\x02 \x01(\t"\xa9\x01\n\x0ePiiKeyResponse\x12\x19\n\x11encrypted_pii_key\x18\x02 \x01(\x0c\x126\n\x12pii_key_expiration\x18\x03 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12D\n subscriber_public_key_expiration\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp"(\n\x15PseudonymSyncResponse\x12\x0f\n\x07unknown\x18\x01 \x01(\t"\xd4\x02\n\x17NavigationRouteResponse\x12\x0f\n\x07unknown\x18\x01 \x01(\t\x12H\n\x0etraffic_detail\x18\x02 \x03(\x0b20.CarServer.NavigationRouteResponse.TrafficDetail\x1aq\n\rTrafficDetail\x12\x16\n\x0eoffset_to_dest\x18\x01 \x01(\x02\x12H\n\x0etraffic_status\x18\x02 \x01(\x0e20.CarServer.NavigationRouteResponse.TrafficStatus"k\n\rTrafficStatus\x12\x0e\n\nTS_NO_DATA\x10\x00\x12\x0c\n\x08TS_LIGHT\x10\x01\x12\x0f\n\x0bTS_MODERATE\x10\x02\x12\x11\n\rTS_CONGESTION\x10\x03\x12\x18\n\x14TS_SEVERE_CONGESTION\x10\x04"P\n\x1fGetManagedChargingSitesResponse\x12-\n\x05sites\x18\x01 \x03(\x0b2\x1e.CarServer.ManagedChargingSite"#\n!ManagedChargingSiteAddedOrUpdated"#\n!ExistingManagedChargingSiteNearby"\xb4\x01\n\x1eAddManagedChargingSiteResponse\x12F\n\x10added_or_updated\x18\x01 \x01(\x0b2,.CarServer.ManagedChargingSiteAddedOrUpdated\x12J\n\x14existing_site_nearby\x18\x02 \x01(\x0b2,.CarServer.ExistingManagedChargingSiteNearby"Z\n\x17RequestTeslaAuthCommand\x12\x11\n\tclient_id\x18\x01 \x01(\t\x12\x0f\n\x07unknown\x18\x02 \x01(\t\x12\x1b\n\x13return_scoped_token\x18\x03 \x01(\x08"Z\n\x10MobileAppMessage\x12F\n\x1arequest_tesla_auth_command\x18\x01 \x01(\x0b2".CarServer.RequestTeslaAuthCommand"O\n\x13GetMessagesResponse\x128\n\x13mobile_app_messages\x18\x01 \x03(\x0b2\x1b.CarServer.MobileAppMessage"/\n\x07Profile\x12\x11\n\tunknown_1\x18\x01 \x01(\t\x12\x11\n\tunknown_2\x18\x02 \x01(\t"@\n\x18GetLocalProfilesResponse\x12$\n\x08profiles\x18\x01 \x03(\x0b2\x12.CarServer.Profile"\xb7\x01\n\x07KeyInfo\x12\x11\n\tunknown_1\x18\x01 \x01(\t\x12\x11\n\tunknown_2\x18\x02 \x01(\t\x12\x12\n\npublic_key\x18\x03 \x01(\x0c\x12-\n\tlast_seen\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12\x18\n\x04role\x18\x05 \x01(\x0e2\n.Keys.Role\x12)\n\x0bform_factor\x18\x06 \x01(\x0e2\x14.VCSEC.KeyFormFactor"9\n\x10KeysInfoResponse\x12%\n\tkeys_info\x18\x01 \x03(\x0b2\x12.CarServer.KeyInfo"=\n\x15BandwidthTestResponse\x12\x0c\n\x04data\x18\x01 \x01(\x0c\x12\x16\n\x0erequested_size\x18\x02 \x01(\r"\x89\x01\n\x15GetRateTariffResponse\x128\n\x07seasons\x18\r \x01(\x0b2\'.CarServer.SetRateTariffRequest.Seasons\x126\n\x06tariff\x18\x0e \x01(\x0b2&.CarServer.SetRateTariffRequest.Tariff"l\n\x0cActionStatus\x12,\n\x06result\x18\x01 \x01(\x0e2\x1c.CarServer.OperationStatus_E\x12.\n\rresult_reason\x18\x02 \x01(\x0b2\x17.CarServer.ResultReason".\n\x0cResultReason\x12\x14\n\nplain_text\x18\x01 \x01(\tH\x00B\x08\n\x06reason"F\n\rEncryptedData\x12\x14\n\x0cfield_number\x18\x01 \x01(\x05\x12\x12\n\nciphertext\x18\x02 \x01(\x0c\x12\x0b\n\x03tag\x18\x03 \x01(\x0c";\n\x16ChargingSetLimitAction\x12\x0f\n\x07percent\x18\x01 \x01(\x05\x12\x10\n\x08one_time\x18\x02 \x01(\x08"\xea\x01\n\x17ChargingStartStopAction\x12"\n\x07unknown\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12 \n\x05start\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12)\n\x0estart_standard\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fstart_max_range\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12\x1f\n\x04stop\x18\x05 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x11\n\x0fcharging_action".\n\x1fDrivingClearSpeedLimitPinAction\x12\x0b\n\x03pin\x18\x01 \x01(\t"/\n\x1aDrivingSetSpeedLimitAction\x12\x11\n\tlimit_mph\x18\x01 \x01(\x01"8\n\x17DrivingSpeedLimitAction\x12\x10\n\x08activate\x18\x01 \x01(\x08\x12\x0b\n\x03pin\x18\x02 \x01(\t";\n\x0eHvacAutoAction\x12\x10\n\x08power_on\x18\x01 \x01(\x08\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08"\xfc\x06\n\x15HvacSeatHeaterActions\x12S\n\x14hvacSeatHeaterAction\x18\x01 \x03(\x0b25.CarServer.HvacSeatHeaterActions.HvacSeatHeaterAction\x1a\x8d\x06\n\x14HvacSeatHeaterAction\x12.\n\x13SEAT_HEATER_UNKNOWN\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fSEAT_HEATER_OFF\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fSEAT_HEATER_LOW\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fSEAT_HEATER_MED\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12+\n\x10SEAT_HEATER_HIGH\x18\x05 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12+\n\x10CAR_SEAT_UNKNOWN\x18\x06 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12.\n\x13CAR_SEAT_FRONT_LEFT\x18\x07 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12/\n\x14CAR_SEAT_FRONT_RIGHT\x18\x08 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12-\n\x12CAR_SEAT_REAR_LEFT\x18\t \x01(\x0b2\x0f.CarServer.VoidH\x01\x122\n\x17CAR_SEAT_REAR_LEFT_BACK\x18\n \x01(\x0b2\x0f.CarServer.VoidH\x01\x12/\n\x14CAR_SEAT_REAR_CENTER\x18\x0b \x01(\x0b2\x0f.CarServer.VoidH\x01\x12.\n\x13CAR_SEAT_REAR_RIGHT\x18\x0c \x01(\x0b2\x0f.CarServer.VoidH\x01\x123\n\x18CAR_SEAT_REAR_RIGHT_BACK\x18\r \x01(\x0b2\x0f.CarServer.VoidH\x01\x122\n\x17CAR_SEAT_THIRD_ROW_LEFT\x18\x0e \x01(\x0b2\x0f.CarServer.VoidH\x01\x123\n\x18CAR_SEAT_THIRD_ROW_RIGHT\x18\x0f \x01(\x0b2\x0f.CarServer.VoidH\x01B\x13\n\x11seat_heater_levelB\x0f\n\rseat_position"\xbd\x05\n\x15HvacSeatCoolerActions\x12S\n\x14hvacSeatCoolerAction\x18\x01 \x03(\x0b25.CarServer.HvacSeatCoolerActions.HvacSeatCoolerAction\x1a\xbb\x01\n\x14HvacSeatCoolerAction\x12Q\n\x11seat_cooler_level\x18\x01 \x01(\x0e26.CarServer.HvacSeatCoolerActions.HvacSeatCoolerLevel_E\x12P\n\rseat_position\x18\x02 \x01(\x0e29.CarServer.HvacSeatCoolerActions.HvacSeatCoolerPosition_E"\xad\x01\n\x15HvacSeatCoolerLevel_E\x12\x1f\n\x1bHvacSeatCoolerLevel_Unknown\x10\x00\x12\x1b\n\x17HvacSeatCoolerLevel_Off\x10\x01\x12\x1b\n\x17HvacSeatCoolerLevel_Low\x10\x02\x12\x1b\n\x17HvacSeatCoolerLevel_Med\x10\x03\x12\x1c\n\x18HvacSeatCoolerLevel_High\x10\x04"\xe0\x01\n\x18HvacSeatCoolerPosition_E\x12"\n\x1eHvacSeatCoolerPosition_Unknown\x10\x00\x12$\n HvacSeatCoolerPosition_FrontLeft\x10\x01\x12%\n!HvacSeatCoolerPosition_FrontRight\x10\x02\x12(\n$HvacSeatCoolerPosition_SecondRowLeft\x10\x03\x12)\n%HvacSeatCoolerPosition_SecondRowRight\x10\x04"\xde\x01\n\x1fHvacSetPreconditioningMaxAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08\x12]\n\x14manual_override_mode\x18\x03 \x03(\x0e2?.CarServer.HvacSetPreconditioningMaxAction.ManualOverrideMode_E"7\n\x14ManualOverrideMode_E\x12\x0b\n\x07DogMode\x10\x00\x12\x07\n\x03Soc\x10\x01\x12\t\n\x05Doors\x10\x02"1\n\x1dHvacSteeringWheelHeaterAction\x12\x10\n\x08power_on\x18\x01 \x01(\x08"\xb3\x05\n\x1fHvacTemperatureAdjustmentAction\x12\x15\n\rdelta_celsius\x18\x01 \x01(\x02\x12\x15\n\rdelta_percent\x18\x02 \x01(\x11\x12\x18\n\x10absolute_celsius\x18\x03 \x01(\x02\x12E\n\x05level\x18\x05 \x01(\x0b26.CarServer.HvacTemperatureAdjustmentAction.Temperature\x12]\n\x15hvac_temperature_zone\x18\x04 \x03(\x0b2>.CarServer.HvacTemperatureAdjustmentAction.HvacTemperatureZone\x12\x1b\n\x13driver_temp_celsius\x18\x06 \x01(\x02\x12\x1e\n\x16passenger_temp_celsius\x18\x07 \x01(\x02\x1a\x88\x01\n\x0bTemperature\x12\'\n\x0cTEMP_UNKNOWN\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12#\n\x08TEMP_MIN\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12#\n\x08TEMP_MAX\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x06\n\x04type\x1a\xd9\x01\n\x13HvacTemperatureZone\x12,\n\x11TEMP_ZONE_UNKNOWN\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12/\n\x14TEMP_ZONE_FRONT_LEFT\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x120\n\x15TEMP_ZONE_FRONT_RIGHT\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12)\n\x0eTEMP_ZONE_REAR\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x06\n\x04type"R\n\x16GetNearbyChargingSites\x12\x19\n\x11include_meta_data\x18\x01 \x01(\x08\x12\x0e\n\x06radius\x18\x02 \x01(\x05\x12\r\n\x05count\x18\x03 \x01(\x05"\xda\x01\n\x13NearbyChargingSites\x12-\n\ttimestamp\x18\x01 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x14destination_charging\x18\x02 \x03(\x0b2\x1e.CarServer.DestinationCharging\x12/\n\rsuperchargers\x18\x03 \x03(\x0b2\x18.CarServer.Superchargers\x12%\n\x1dcongestion_sync_time_utc_secs\x18\x04 \x01(\x03"p\n\x13DestinationCharging\x12\x16\n\x0edistance_miles\x18\x05 \x01(\x02\x12\x13\n\x0bpostal_code\x18\t \x01(\t\x12\x16\n\x0estreet_address\x18\x0b \x01(\t\x12\x14\n\x0cwithin_range\x18\x0c \x01(\x08"\xcb\x03\n\rSuperchargers\x12\n\n\x02id\x18\x01 \x01(\x03\x12\x11\n\tamenities\x18\x02 \x01(\t\x12\x18\n\x10available_stalls\x18\x03 \x01(\x05\x12\x14\n\x0cbilling_info\x18\x04 \x01(\t\x12\x14\n\x0cbilling_time\x18\x05 \x01(\t\x12\x0c\n\x04city\x18\x06 \x01(\t\x12\x0f\n\x07country\x18\x07 \x01(\t\x12\x16\n\x0edistance_miles\x18\x08 \x01(\x02\x12\x10\n\x08district\x18\t \x01(\t\x12$\n\x08location\x18\n \x01(\x0b2\x12.CarServer.LatLong\x12\x0c\n\x04name\x18\x0b \x01(\t\x12\x13\n\x0bpostal_code\x18\x0c \x01(\t\x12\x13\n\x0bsite_closed\x18\r \x01(\x08\x12\r\n\x05state\x18\x0e \x01(\t\x12\x16\n\x0estreet_address\x18\x0f \x01(\t\x12\x14\n\x0ctotal_stalls\x18\x10 \x01(\x05\x12\x14\n\x0cwithin_range\x18\x11 \x01(\x08\x12\x14\n\x0cmax_power_kw\x18\x12 \x01(\x05\x12"\n\x1aout_of_order_stalls_number\x18\x13 \x01(\x05\x12!\n\x19out_of_order_stalls_names\x18\x14 \x01(\t"\x11\n\x0fMediaPlayAction"b\n\x11MediaUpdateVolume\x12\x16\n\x0cvolume_delta\x18\x01 \x01(\x11H\x00\x12\x1f\n\x15volume_absolute_float\x18\x03 \x01(\x02H\x00B\x0e\n\x0cmedia_volumeJ\x04\x08\x02\x10\x03"\x13\n\x11MediaNextFavorite"\x17\n\x15MediaPreviousFavorite"\x10\n\x0eMediaNextTrack"\x14\n\x12MediaPreviousTrack"*\n(VehicleControlCancelSoftwareUpdateAction"!\n\x1fVehicleControlFlashLightsAction"\x1e\n\x1cVehicleControlHonkHornAction"#\n!VehicleControlResetValetPinAction"@\n*VehicleControlScheduleSoftwareUpdateAction\x12\x12\n\noffset_sec\x18\x01 \x01(\x05"/\n!VehicleControlSetSentryModeAction\x12\n\n\x02on\x18\x01 \x01(\x08"@\n VehicleControlSetValetModeAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x10\n\x08password\x18\x02 \x01(\t"\xd6\x01\n$VehicleControlSunroofOpenCloseAction\x12\x18\n\x0eabsolute_level\x18\x01 \x01(\x05H\x00\x12\x15\n\x0bdelta_level\x18\x02 \x01(\x11H\x00\x12\x1f\n\x04vent\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12 \n\x05close\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12\x1f\n\x04open\x18\x05 \x01(\x0b2\x0f.CarServer.VoidH\x01B\x0f\n\rsunroof_levelB\x08\n\x06action"Z\n#VehicleControlTriggerHomelinkAction\x12$\n\x08location\x18\x01 \x01(\x0b2\x12.CarServer.LatLong\x12\r\n\x05token\x18\x02 \x01(\t"\x93\x01\n\x1aVehicleControlWindowAction\x12"\n\x07unknown\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12\x1f\n\x04vent\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12 \n\x05close\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x08\n\x06actionJ\x04\x08\x01\x10\x02">\n\x17HvacBioweaponModeAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08"\xaa\x02\n\x15AutoSeatClimateAction\x129\n\x07carseat\x18\x01 \x03(\x0b2(.CarServer.AutoSeatClimateAction.CarSeat\x1aa\n\x07CarSeat\x12\n\n\x02on\x18\x01 \x01(\x08\x12J\n\rseat_position\x18\x02 \x01(\x0e23.CarServer.AutoSeatClimateAction.AutoSeatPosition_E"s\n\x12AutoSeatPosition_E\x12\x1c\n\x18AutoSeatPosition_Unknown\x10\x00\x12\x1e\n\x1aAutoSeatPosition_FrontLeft\x10\x01\x12\x1f\n\x1bAutoSeatPosition_FrontRight\x10\x02"\x87\x01\n\x04Ping\x12\x0f\n\x07ping_id\x18\x01 \x01(\x05\x123\n\x0flocal_timestamp\x18\x02 \x01(\x0b2\x1a.google.protobuf.Timestamp\x129\n\x15last_remote_timestamp\x18\x03 \x01(\x0b2\x1a.google.protobuf.Timestamp"A\n\x17ScheduledChargingAction\x12\x0f\n\x07enabled\x18\x01 \x01(\x08\x12\x15\n\rcharging_time\x18\x02 \x01(\x05"\xe6\x01\n\x18ScheduledDepartureAction\x12\x0f\n\x07enabled\x18\x01 \x01(\x08\x12\x16\n\x0edeparture_time\x18\x02 \x01(\x05\x12>\n\x15preconditioning_times\x18\x03 \x01(\x0b2\x1f.CarServer.PreconditioningTimes\x12@\n\x17off_peak_charging_times\x18\x04 \x01(\x0b2\x1f.CarServer.OffPeakChargingTimes\x12\x1f\n\x17off_peak_hours_end_time\x18\x05 \x01(\x05"\x98\x03\n\x17HvacClimateKeeperAction\x12U\n\x13ClimateKeeperAction\x18\x01 \x01(\x0e28.CarServer.HvacClimateKeeperAction.ClimateKeeperAction_E\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08\x12U\n\x14manual_override_mode\x18\x03 \x03(\x0e27.CarServer.HvacClimateKeeperAction.ManualOverrideMode_E"\x8b\x01\n\x15ClimateKeeperAction_E\x12\x1b\n\x17ClimateKeeperAction_Off\x10\x00\x12\x1a\n\x16ClimateKeeperAction_On\x10\x01\x12\x1b\n\x17ClimateKeeperAction_Dog\x10\x02\x12\x1c\n\x18ClimateKeeperAction_Camp\x10\x03"(\n\x14ManualOverrideMode_E\x12\x07\n\x03Soc\x10\x00\x12\x07\n\x03Cpd\x10\x01"%\n\x17HvacRecirculationAction\x12\n\n\x02on\x18\x01 \x01(\x08".\n\x15SetChargingAmpsAction\x12\x15\n\rcharging_amps\x18\x01 \x01(\x05"(\n\x1aRemoveChargeScheduleAction\x12\n\n\x02id\x18\x01 \x01(\x04"M\n BatchRemoveChargeSchedulesAction\x12\x0c\n\x04home\x18\x01 \x01(\x08\x12\x0c\n\x04work\x18\x02 \x01(\x08\x12\r\n\x05other\x18\x03 \x01(\x08"S\n&BatchRemovePreconditionSchedulesAction\x12\x0c\n\x04home\x18\x01 \x01(\x08\x12\x0c\n\x04work\x18\x02 \x01(\x08\x12\r\n\x05other\x18\x03 \x01(\x08".\n RemovePreconditionScheduleAction\x12\n\n\x02id\x18\x01 \x01(\x04"@\n SetCabinOverheatProtectionAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x10\n\x08fan_only\x18\x02 \x01(\x08"+\n\x14SetVehicleNameAction\x12\x13\n\x0bvehicleName\x18\x01 \x01(\t"\x15\n\x13ChargePortDoorClose"\x14\n\x12ChargePortDoorOpen"\x1e\n\rBoomboxAction\x12\r\n\x05sound\x18\x01 \x01(\r"X\n\x10SetCopTempAction\x12D\n\x11copActivationTemp\x18\x01 \x01(\x0e2).CarServer.ClimateState.CopActivationTemp"A\n!VehicleControlSetPinToDriveAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x10\n\x08password\x18\x02 \x01(\t"%\n#VehicleControlResetPinToDriveAction"\x12\n\x10RemoteStartDrive")\n\x13CreateStreamSession\x12\x12\n\nsession_id\x18\x01 \x01(\t"1\n\rStreamMessage\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x0c\n\x04data\x18\x02 \x01(\x0c"7\n\x11NavigationRequest\x12\x13\n\x0bdestination\x18\x01 \x01(\t\x12\r\n\x05order\x18\x02 \x01(\x05"\xaa\x02\n\x1dNavigationSuperchargerRequest\x12Z\n\x15remote_nav_trip_order\x18\x02 \x01(\x0e2;.CarServer.NavigationSuperchargerRequest.RemoteNavTripOrder"\x9f\x01\n\x12RemoteNavTripOrder\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_UNKNOWN\x10\x00\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_REPLACE\x10\x01\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_PREPEND\x10\x02\x12 \n\x1cREMOTE_NAV_TRIP_ORDER_APPEND\x10\x03J\x04\x08\x01\x10\x02R\x05order"5\n\x1cUiSetUpcomingCalendarEntries\x12\x15\n\rcalendar_data\x18\x01 \x01(\t"\xd1\x06\n\x17VehicleDataSubscription\x12I\n\x0fpii_key_request\x18\r \x01(\x0b20.CarServer.VehicleDataSubscription.PiiKeyRequest\x12\x1f\n\x17subscription_duration_s\x18\x03 \x01(\x05\x12\x1b\n\x13subscription_ping_s\x18\x0c \x01(\x05\x12\'\n\x1fgui_settings_max_update_rate_ms\x18\x04 \x01(\x05\x12\'\n\x1fcharge_state_max_update_rate_ms\x18\x05 \x01(\x05\x12(\n climate_state_max_update_rate_ms\x18\x06 \x01(\x05\x12&\n\x1edrive_state_max_update_rate_ms\x18\x07 \x01(\x05\x12(\n vehicle_state_max_update_rate_ms\x18\x08 \x01(\x05\x12)\n!vehicle_config_max_update_rate_ms\x18\t \x01(\x05\x12)\n!location_state_max_update_rate_ms\x18\n \x01(\x05\x12)\n!closures_state_max_update_rate_ms\x18\x0b \x01(\x05\x121\n)parked_accessory_state_max_update_rate_ms\x18\x0e \x01(\x05\x120\n(charge_schedule_state_max_update_rate_ms\x18\x0f \x01(\x05\x129\n1preconditioning_schedule_state_max_update_rate_ms\x18\x10 \x01(\x05\x12&\n\x1ealert_state_max_update_rate_ms\x18\x11 \x01(\x05\x12+\n#suspension_state_max_update_rate_ms\x18\x12 \x01(\x05\x129\n1child_presence_detection_state_max_update_rate_ms\x18\x13 \x01(\x05\x1a.\n\rPiiKeyRequest\x12\x1d\n\x15subscriber_public_key\x18\x01 \x01(\t"\xef\x06\n\x0eVehicleDataAck\x12:\n\x16charge_state_timestamp\x18\x02 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12;\n\x17climate_state_timestamp\x18\x03 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x18closures_state_timestamp\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp\x129\n\x15drive_state_timestamp\x18\x05 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12:\n\x16gui_settings_timestamp\x18\x06 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x18location_state_timestamp\x18\x07 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x18vehicle_config_timestamp\x18\x08 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12;\n\x17vehicle_state_timestamp\x18\t \x01(\x0b2\x1a.google.protobuf.Timestamp\x12D\n parked_accessory_state_timestamp\x18\x0b \x01(\x0b2\x1a.google.protobuf.Timestamp\x12C\n\x1fcharge_schedule_state_timestamp\x18\x0c \x01(\x0b2\x1a.google.protobuf.Timestamp\x12L\n(preconditioning_schedule_state_timestamp\x18\r \x01(\x0b2\x1a.google.protobuf.Timestamp\x129\n\x15alert_state_timestamp\x18\x0e \x01(\x0b2\x1a.google.protobuf.Timestamp\x12>\n\x1asuspension_state_timestamp\x18\x0f \x01(\x0b2\x1a.google.protobuf.Timestamp\x12"\n\x16decryption_error_field\x18\n \x03(\x05B\x02\x10\x01"(\n\x12VitalsSubscription\x12\x12\n\nsession_id\x18\x01 \x01(\x05"\x0b\n\tVitalsAck"\x17\n\x15DashcamSaveClipAction"f\n\rPiiKeyRequest\x12\x1d\n\x15subscriber_public_key\x18\x02 \x01(\t\x126\n\x12pii_key_expiration\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp";\n\x14PseudonymSyncRequest\x12#\n\x1blast_known_pseudonym_hashed\x18\x01 \x01(\x0c"\x95\x02\n\x14NavigationGpsRequest\x12\x0b\n\x03lat\x18\x01 \x01(\x01\x12\x0b\n\x03lon\x18\x02 \x01(\x01\x12A\n\x05order\x18\x03 \x01(\x0e22.CarServer.NavigationGpsRequest.RemoteNavTripOrder"\x9f\x01\n\x12RemoteNavTripOrder\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_UNKNOWN\x10\x00\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_REPLACE\x10\x01\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_PREPEND\x10\x02\x12 \n\x1cREMOTE_NAV_TRIP_ORDER_APPEND\x10\x03"\x90\x0c\n\x14SetRateTariffRequest\x128\n\x07seasons\x18\r \x01(\x0b2\'.CarServer.SetRateTariffRequest.Seasons\x126\n\x06tariff\x18\x0e \x01(\x0b2&.CarServer.SetRateTariffRequest.Tariff\x1a\x89\x01\n\tTOUPeriod\x12\x18\n\x10from_day_of_week\x18\x01 \x01(\x05\x12\x16\n\x0eto_day_of_week\x18\x02 \x01(\x05\x12\x11\n\tfrom_hour\x18\x03 \x01(\x05\x12\x13\n\x0bfrom_minute\x18\x04 \x01(\x05\x12\x0f\n\x07to_hour\x18\x05 \x01(\x05\x12\x11\n\tto_minute\x18\x06 \x01(\x05\x1a\x89\x02\n\nTOUPeriods\x12:\n\x07ON_PEAK\x18\x01 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x12?\n\x0cPARTIAL_PEAK\x18\x02 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x12;\n\x08OFF_PEAK\x18\x03 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x12A\n\x0eSUPER_OFF_PEAK\x18\x04 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x1a\x91\x01\n\x06Season\x12\x10\n\x08from_day\x18\x01 \x01(\x05\x12\x0e\n\x06to_day\x18\x02 \x01(\x05\x12\x12\n\nfrom_month\x18\x03 \x01(\x05\x12\x10\n\x08to_month\x18\x04 \x01(\x05\x12?\n\x0btou_periods\x18\x05 \x01(\x0b2*.CarServer.SetRateTariffRequest.TOUPeriods\x1a\xa4\x02\n\x07Seasons\x126\n\x06Summer\x18\x01 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x126\n\x06Winter\x18\x02 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x127\n\x07Season3\x18\x03 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x127\n\x07Season4\x18\x04 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x127\n\x07Season5\x18\x05 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x1a\x1a\n\x0bFixedCharge\x12\x0b\n\x03ALL\x18\x01 \x01(\x01\x1ah\n\x08RateBand\x12\x0b\n\x03ALL\x18\x01 \x01(\x01\x12\x0f\n\x07ON_PEAK\x18\x02 \x01(\x01\x12\x14\n\x0cPARTIAL_PEAK\x18\x03 \x01(\x01\x12\x10\n\x08OFF_PEAK\x18\x04 \x01(\x01\x12\x16\n\x0eSUPER_OFF_PEAK\x18\x05 \x01(\x01\x1a\xe8\x02\n\x07Charges\x128\n\x03ALL\x18\x01 \x01(\x0b2+.CarServer.SetRateTariffRequest.FixedCharge\x128\n\x06Summer\x18\x02 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x128\n\x06Winter\x18\x03 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x129\n\x07Season3\x18\x04 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x129\n\x07Season4\x18\x05 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x129\n\x07Season5\x18\x06 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x1aB\n\x06Tariff\x128\n\x07seasons\x18\r \x01(\x0b2\'.CarServer.SetRateTariffRequest.Seasons"\x16\n\x14GetRateTariffRequest"!\n\x12VideoRequestAction\x12\x0b\n\x03url\x18\x01 \x01(\t"#\n\x13TakeDrivenoteAction\x12\x0c\n\x04note\x18\x01 \x01(\t"H\n\x1eBluetoothClassicPairingRequest\x12\x11\n\tutf8_name\x18\x01 \x01(\t\x12\x13\n\x0bmac_address\x18\x02 \x01(\x0c"M\n\x1dAddManagedChargingSiteRequest\x12,\n\x04site\x18\x01 \x01(\x0b2\x1e.CarServer.ManagedChargingSite"|\n\x13ManagedChargingSite\x12\x12\n\npublic_key\x18\x01 \x01(\t\x12,\n\x0cmanager_type\x18\x02 \x01(\x0b2\x16.CarServer.ManagerType\x12#\n\x07lat_lon\x18\x03 \x01(\x0b2\x12.CarServer.LatLong"A\n\x0bManagerType\x122\n\x0fsite_controller\x18\x01 \x01(\x0b2\x19.CarServer.SiteController"\x10\n\x0eSiteController"6\n RemoveManagedChargingSiteRequest\x12\x12\n\npublic_key\x18\x01 \x01(\t"\x17\n\x15NavigationRouteAction"\x1f\n\x11AutoStwHeatAction\x12\n\n\x02on\x18\x01 \x01(\x08"E\n\x12StwHeatLevelAction\x12/\n\x0estw_heat_level\x18\x01 \x01(\x0e2\x17.CarServer.StwHeatLevel" \n\x1eGetManagedChargingSitesRequest"]\n!UpdateChargeOnSolarFeatureRequest\x128\n\x0fcharge_on_solar\x18\x01 \x01(\x0b2\x1f.CarServer.ChargeOnSolarFeature" \n\x1eGetChargeOnSolarFeatureRequest"[\n\x1fGetChargeOnSolarFeatureResponse\x128\n\x0fcharge_on_solar\x18\x01 \x01(\x0b2\x1f.CarServer.ChargeOnSolarFeature"_\n\x14ChargeOnSolarFeature\x12\x0f\n\x07enabled\x18\x01 \x01(\x08\x12\x1a\n\x12lower_charge_limit\x18\x02 \x01(\x02\x12\x1a\n\x12upper_charge_limit\x18\x03 \x01(\x02"&\n$DrivingClearSpeedLimitPinAdminAction"\xe0\x01\n\x15SetOutletsOnOffAction\x12F\n\x0eoutlet_request\x18\x01 \x01(\x0e2..CarServer.SetOutletsOnOffAction.OutletRequest"\x7f\n\rOutletRequest\x12\x1a\n\x16OUTLET_REQUEST_UNKNOWN\x10\x00\x12\x16\n\x12OUTLET_REQUEST_OFF\x10\x01\x12 \n\x1cOUTLET_REQUEST_CABIN_AND_BED\x10\x02\x12\x18\n\x14OUTLET_REQUEST_CABIN\x10\x03"+\n\x14SetOutletTimerAction\x12\x13\n\x0bnum_minutes\x18\x01 \x01(\x05"*\n\x17SetOutletSocLimitAction\x12\x0f\n\x07percent\x18\x01 \x01(\x05"\xa3\x02\n\x17SetPowerFeedOnOffAction\x12O\n\x12power_feed_request\x18\x01 \x01(\x0e23.CarServer.SetPowerFeedOnOffAction.PowerFeedRequest"\xb6\x01\n\x10PowerFeedRequest\x12\x1e\n\x1aPOWER_FEED_REQUEST_UNKNOWN\x10\x00\x12\x1a\n\x16POWER_FEED_REQUEST_OFF\x10\x01\x12\x1d\n\x19POWER_FEED_REQUEST_FEED_1\x10\x02\x12\x1d\n\x19POWER_FEED_REQUEST_FEED_2\x10\x03\x12(\n$POWER_FEED_REQUEST_FEED_1_AND_FEED_2\x10\x04".\n\x17SetPowerFeedTimerAction\x12\x13\n\x0bnum_minutes\x18\x01 \x01(\x05"-\n\x1aSetPowerFeedSocLimitAction\x12\x0f\n\x07percent\x18\x01 \x01(\x05"8\n"SetTrailerLightTestStartStopAction\x12\x12\n\nstart_stop\x18\x01 \x01(\x08"6\n\x1fSetTruckBedLightAutoStateAction\x12\x13\n\x0bpower_state\x18\x01 \x01(\x08"6\n SetTruckBedLightBrightnessAction\x12\x12\n\nbrightness\x18\x01 \x01(\r"*\n(VehicleControlResetPinToDriveAdminAction"\xd4\x01\n\x1aNavigationWaypointsRequest\x12\x11\n\twaypoints\x18\x01 \x01(\t\x12P\n\x11trip_plan_options\x18\x02 \x01(\x0b25.CarServer.NavigationWaypointsRequest.TripPlanOptions\x1aQ\n\x0fTripPlanOptions\x12\x1d\n\x15destination_start_soe\x18\x01 \x01(\x05\x12\x1f\n\x17destination_arrival_soe\x18\x02 \x01(\x05"\x8c\x02\n\x1aSetPowershareFeatureAction\x12b\n\x1apowershare_feature_request\x18\x01 \x01(\x0e2>.CarServer.SetPowershareFeatureAction.PowershareFeatureRequest"\x89\x01\n\x18PowershareFeatureRequest\x12&\n"POWERSHARE_FEATURE_REQUEST_UNKNOWN\x10\x00\x12"\n\x1ePOWERSHARE_FEATURE_REQUEST_OFF\x10\x01\x12!\n\x1dPOWERSHARE_FEATURE_REQUEST_ON\x10\x02"G\n!SetPowershareDischargeLimitAction\x12"\n\x1apowershare_discharge_limit\x18\x01 \x01(\x05"\xdd\x01\n\x1aSetPowershareRequestAction\x12S\n\x12powershare_request\x18\x01 \x01(\x0e27.CarServer.SetPowershareRequestAction.PowershareRequest"j\n\x11PowershareRequest\x12\x1e\n\x1aPOWERSHARE_REQUEST_UNKNOWN\x10\x00\x12\x1a\n\x16POWERSHARE_REQUEST_OFF\x10\x01\x12\x19\n\x15POWERSHARE_REQUEST_ON\x10\x02"&\n\x18SetTentModeRequestAction\x12\n\n\x02on\x18\x01 \x01(\x08"\xf4\x01\n\x19SetZoneLightRequestAction\x12Q\n\x12zone_light_request\x18\x01 \x01(\x0e25.CarServer.SetZoneLightRequestAction.ZoneLightRequest"\x83\x01\n\x10ZoneLightRequest\x12\x1a\n\x16ZONE_LIGHT_REQUEST_OFF\x10\x00\x12\x1a\n\x16ZONE_LIGHT_REQUEST_LOW\x10\x01\x12\x1a\n\x16ZONE_LIGHT_REQUEST_MED\x10\x02\x12\x1b\n\x17ZONE_LIGHT_REQUEST_HIGH\x10\x03"9\n\x1bSetLightbarBrightnessAction\x12\x1a\n\x12brightness_request\x18\x01 \x01(\r"7\n\x17SetLightbarMiddleAction\x12\x1c\n\x14middle_light_request\x18\x01 \x01(\x08"6\n\x16SetLightbarDitchAction\x12\x1c\n\x14ditch_lights_request\x18\x01 \x01(\x08"\x13\n\x11GetMessagesAction"\xa7\x01\n\x17TeslaAuthResponseAction\x12\x11\n\tclient_id\x18\x01 \x01(\t\x12\r\n\x05scope\x18\x02 \x01(\t\x12\x14\n\x0caccess_token\x18\x03 \x01(\t\x12\x15\n\rrefresh_token\x18\x04 \x01(\t\x12\x18\n\x10expiry_timestamp\x18\x05 \x01(\x03\x12\r\n\x05error\x18\x06 \x01(\t\x12\x14\n\x0cscoped_token\x18\x07 \x01(\t"\xc0\x02\n\x1fNavigationGpsDestinationRequest\x12\x0b\n\x03lat\x18\x01 \x01(\x01\x12\x0b\n\x03lon\x18\x02 \x01(\x01\x12\x13\n\x0bdestination\x18\x03 \x01(\t\x12L\n\x05order\x18\x04 \x01(\x0e2=.CarServer.NavigationGpsDestinationRequest.RemoteNavTripOrder"\x9f\x01\n\x12RemoteNavTripOrder\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_UNKNOWN\x10\x00\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_REPLACE\x10\x01\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_PREPEND\x10\x02\x12 \n\x1cREMOTE_NAV_TRIP_ORDER_APPEND\x10\x03"-\n\x1eParentalControlsClearPinAction\x12\x0b\n\x03pin\x18\x01 \x01(\t"%\n#ParentalControlsClearPinAdminAction"7\n\x16ParentalControlsAction\x12\x10\n\x08activate\x18\x01 \x01(\x08\x12\x0b\n\x03pin\x18\x02 \x01(\t"\xad\x02\n$ParentalControlsEnableSettingsAction\x12Z\n\x07setting\x18\x01 \x01(\x0e2I.CarServer.ParentalControlsEnableSettingsAction.ParentalControlsSetting_E\x12\x0e\n\x06enable\x18\x02 \x01(\x08"\x98\x01\n\x19ParentalControlsSetting_E\x12\x0e\n\nSpeedLimit\x10\x00\x12\x10\n\x0cAcceleration\x10\x01\x12\x12\n\x0eSafetyFeatures\x10\x02\x12\n\n\x06Curfew\x10\x03\x12\x12\n\x0eBrowserBlocked\x10\x04\x12\x12\n\x0eTheaterBlocked\x10\x05\x12\x11\n\rArcadeBlocked\x10\x06"8\n#ParentalControlsSetSpeedLimitAction\x12\x11\n\tlimit_mph\x18\x01 \x01(\x01"\x15\n\x13CancelSohTestAction"\x15\n\x13StopLightShowAction"c\n\x14StartLightShowAction\x12\x12\n\nshow_index\x18\x01 \x01(\x05\x12\x12\n\nstart_time\x18\x02 \x01(\x03\x12\x0e\n\x06volume\x18\x03 \x01(\x02\x12\x13\n\x0bdance_moves\x18\x04 \x01(\x08"\xc7\x02\n\x18SetSuspensionLevelAction\x12M\n\x10suspension_level\x18\x01 \x01(\x0e23.CarServer.SetSuspensionLevelAction.SuspensionLevel"\xdb\x01\n\x0fSuspensionLevel\x12\x1c\n\x18SUSPENSION_LEVEL_INVALID\x10\x00\x12\x1a\n\x16SUSPENSION_LEVEL_ENTRY\x10\x01\x12\x18\n\x14SUSPENSION_LEVEL_LOW\x10\x02\x12\x1b\n\x17SUSPENSION_LEVEL_MEDIUM\x10\x03\x12\x19\n\x15SUSPENSION_LEVEL_HIGH\x10\x04\x12\x1e\n\x1aSUSPENSION_LEVEL_VERY_HIGH\x10\x05\x12\x1c\n\x18SUSPENSION_LEVEL_EXTRACT\x10\x06"2\n\x17SetDischargeLimitAction\x12\x17\n\x0fdischarge_limit\x18\x01 \x01(\x05"/\n\x15SetLowPowerModeAction\x12\x16\n\x0elow_power_mode\x18\x01 \x01(\x08"\x81\x01\n\x18SetTemperatureUnitAction\x126\n\x04unit\x18\x01 \x01(\x0e2(.CarServer.SetTemperatureUnitAction.Unit"-\n\x04Unit\x12\x13\n\x0fUNIT_FAHRENHEIT\x10\x00\x12\x10\n\x0cUNIT_CELSIUS\x10\x01"y\n\x15SetDistanceUnitAction\x123\n\x04unit\x18\x01 \x01(\x0e2%.CarServer.SetDistanceUnitAction.Unit"+\n\x04Unit\x12\x0e\n\nUNIT_MILES\x10\x00\x12\x13\n\x0fUNIT_KILOMETERS\x10\x01"\x8c\x01\n\x1aSetTimeDisplayFormatAction\x12<\n\x06format\x18\x01 \x01(\x0e2,.CarServer.SetTimeDisplayFormatAction.Format"0\n\x06Format\x12\x12\n\x0eFORMAT_12_HOUR\x10\x00\x12\x12\n\x0eFORMAT_24_HOUR\x10\x01"x\n\x19SetTirePressureUnitAction\x127\n\x04unit\x18\x01 \x01(\x0e2).CarServer.SetTirePressureUnitAction.Unit""\n\x04Unit\x12\x0c\n\x08UNIT_PSI\x10\x00\x12\x0c\n\x08UNIT_BAR\x10\x01"\x94\x01\n\x1cSetEnergyDisplayFormatAction\x12>\n\x06format\x18\x01 \x01(\x0e2..CarServer.SetEnergyDisplayFormatAction.Format"4\n\x06Format\x12\x15\n\x11FORMAT_PERCENTAGE\x10\x00\x12\x13\n\x0fFORMAT_DISTANCE\x10\x01"D\n\x1fSetKeepAccessoryPowerModeAction\x12!\n\x19keep_accessory_power_mode\x18\x01 \x01(\x08"\x8d\x01\n+SetupCloudProfileWithLocalProfileUuidAction\x12\x18\n\x10cloud_vault_uuid\x18\x01 \x01(\t\x12\x1a\n\x12local_profile_uuid\x18\x02 \x01(\t\x12(\n delete_local_profile_after_setup\x18\x03 \x01(\x08"8\n"GetLocalProfilesForVaultUuidAction\x12\x12\n\nvault_uuid\x18\x01 \x01(\t"\x15\n\x13FetchKeysInfoAction"0\n\x18DeleteDashcamClipsAction\x12\x14\n\x0cdelete_clips\x18\x01 \x01(\x08"%\n\x0fFormatUSBAction\x12\x12\n\nformat_usb\x18\x01 \x01(\x08"\'\n\rBandwidthTest\x12\x16\n\x0erequested_size\x18\x01 \x01(\r"\x98\x01\n\x14PhoneUnitPreferences\x12<\n\rdistance_unit\x18\x01 \x01(\x0e2%.CarServer.SetDistanceUnitAction.Unit\x12B\n\x10temperature_unit\x18\x02 \x01(\x0e2(.CarServer.SetTemperatureUnitAction.Unit"\xdf\x01\n SetPhoneSettingPreferencesAction\x12G\n\tfont_size\x18\x01 \x01(\x0e24.CarServer.SetPhoneSettingPreferencesAction.FontSize\x129\n\x10unit_preferences\x18\x03 \x01(\x0b2\x1f.CarServer.PhoneUnitPreferences"7\n\x08FontSize\x12\x16\n\x12FONT_SIZE_STANDARD\x10\x00\x12\x13\n\x0fFONT_SIZE_LARGE\x10\x01"\x1f\n\x1dCancelVehicleDataSubscription*F\n\x11OperationStatus_E\x12\x16\n\x12OPERATIONSTATUS_OK\x10\x00\x12\x19\n\x15OPERATIONSTATUS_ERROR\x10\x01Bn\n$com.tesla.generated.carserver.serverZFgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/carserverb\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x10car_server.proto\x12\tCarServer\x1a\x0ccommon.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\nkeys.proto\x1a\x10signatures.proto\x1a\x0bvcsec.proto\x1a\rvehicle.proto"O\n\x06Action\x121\n\rvehicleAction\x18\x02 \x01(\x0b2\x18.CarServer.VehicleActionH\x00B\x0c\n\naction_msgJ\x04\x08\x03\x10\x06"\xa2K\n\rVehicleAction\x123\n\x0egetVehicleData\x18\x01 \x01(\x0b2\x19.CarServer.GetVehicleDataH\x00\x127\n\x10remoteStartDrive\x18\x02 \x01(\x0b2\x1b.CarServer.RemoteStartDriveH\x00\x12=\n\x13createStreamSession\x18\x03 \x01(\x0b2\x1e.CarServer.CreateStreamSessionH\x00\x121\n\rstreamMessage\x18\x04 \x01(\x0b2\x18.CarServer.StreamMessageH\x00\x12C\n\x16chargingSetLimitAction\x18\x05 \x01(\x0b2!.CarServer.ChargingSetLimitActionH\x00\x12E\n\x17chargingStartStopAction\x18\x06 \x01(\x0b2".CarServer.ChargingStartStopActionH\x00\x12U\n\x1fdrivingClearSpeedLimitPinAction\x18\x07 \x01(\x0b2*.CarServer.DrivingClearSpeedLimitPinActionH\x00\x12K\n\x1adrivingSetSpeedLimitAction\x18\x08 \x01(\x0b2%.CarServer.DrivingSetSpeedLimitActionH\x00\x12E\n\x17drivingSpeedLimitAction\x18\t \x01(\x0b2".CarServer.DrivingSpeedLimitActionH\x00\x123\n\x0ehvacAutoAction\x18\n \x01(\x0b2\x19.CarServer.HvacAutoActionH\x00\x12U\n\x1fhvacSetPreconditioningMaxAction\x18\x0c \x01(\x0b2*.CarServer.HvacSetPreconditioningMaxActionH\x00\x12Q\n\x1dhvacSteeringWheelHeaterAction\x18\r \x01(\x0b2(.CarServer.HvacSteeringWheelHeaterActionH\x00\x12U\n\x1fhvacTemperatureAdjustmentAction\x18\x0e \x01(\x0b2*.CarServer.HvacTemperatureAdjustmentActionH\x00\x125\n\x0fmediaPlayAction\x18\x0f \x01(\x0b2\x1a.CarServer.MediaPlayActionH\x00\x129\n\x11mediaUpdateVolume\x18\x10 \x01(\x0b2\x1c.CarServer.MediaUpdateVolumeH\x00\x129\n\x11mediaNextFavorite\x18\x11 \x01(\x0b2\x1c.CarServer.MediaNextFavoriteH\x00\x12A\n\x15mediaPreviousFavorite\x18\x12 \x01(\x0b2 .CarServer.MediaPreviousFavoriteH\x00\x123\n\x0emediaNextTrack\x18\x13 \x01(\x0b2\x19.CarServer.MediaNextTrackH\x00\x12;\n\x12mediaPreviousTrack\x18\x14 \x01(\x0b2\x1d.CarServer.MediaPreviousTrackH\x00\x129\n\x11navigationRequest\x18\x15 \x01(\x0b2\x1c.CarServer.NavigationRequestH\x00\x12Q\n\x1dnavigationSuperchargerRequest\x18\x16 \x01(\x0b2(.CarServer.NavigationSuperchargerRequestH\x00\x12C\n\x16getNearbyChargingSites\x18\x17 \x01(\x0b2!.CarServer.GetNearbyChargingSitesH\x00\x12O\n\x1cuiSetUpcomingCalendarEntries\x18\x18 \x01(\x0b2\'.CarServer.UiSetUpcomingCalendarEntriesH\x00\x12g\n(vehicleControlCancelSoftwareUpdateAction\x18\x19 \x01(\x0b23.CarServer.VehicleControlCancelSoftwareUpdateActionH\x00\x12U\n\x1fvehicleControlFlashLightsAction\x18\x1a \x01(\x0b2*.CarServer.VehicleControlFlashLightsActionH\x00\x12O\n\x1cvehicleControlHonkHornAction\x18\x1b \x01(\x0b2\'.CarServer.VehicleControlHonkHornActionH\x00\x12Y\n!vehicleControlResetValetPinAction\x18\x1c \x01(\x0b2,.CarServer.VehicleControlResetValetPinActionH\x00\x12k\n*vehicleControlScheduleSoftwareUpdateAction\x18\x1d \x01(\x0b25.CarServer.VehicleControlScheduleSoftwareUpdateActionH\x00\x12Y\n!vehicleControlSetSentryModeAction\x18\x1e \x01(\x0b2,.CarServer.VehicleControlSetSentryModeActionH\x00\x12W\n vehicleControlSetValetModeAction\x18\x1f \x01(\x0b2+.CarServer.VehicleControlSetValetModeActionH\x00\x12_\n$vehicleControlSunroofOpenCloseAction\x18 \x01(\x0b2/.CarServer.VehicleControlSunroofOpenCloseActionH\x00\x12]\n#vehicleControlTriggerHomelinkAction\x18! \x01(\x0b2..CarServer.VehicleControlTriggerHomelinkActionH\x00\x12K\n\x1avehicleControlWindowAction\x18" \x01(\x0b2%.CarServer.VehicleControlWindowActionH\x00\x12E\n\x17hvacBioweaponModeAction\x18# \x01(\x0b2".CarServer.HvacBioweaponModeActionH\x00\x12A\n\x15hvacSeatHeaterActions\x18$ \x01(\x0b2 .CarServer.HvacSeatHeaterActionsH\x00\x12E\n\x17vehicleDataSubscription\x18% \x01(\x0b2".CarServer.VehicleDataSubscriptionH\x00\x123\n\x0evehicleDataAck\x18& \x01(\x0b2\x19.CarServer.VehicleDataAckH\x00\x12;\n\x12vitalsSubscription\x18\' \x01(\x0b2\x1d.CarServer.VitalsSubscriptionH\x00\x12)\n\tvitalsAck\x18( \x01(\x0b2\x14.CarServer.VitalsAckH\x00\x12E\n\x17scheduledChargingAction\x18) \x01(\x0b2".CarServer.ScheduledChargingActionH\x00\x12G\n\x18scheduledDepartureAction\x18* \x01(\x0b2#.CarServer.ScheduledDepartureActionH\x00\x12A\n\x15setChargingAmpsAction\x18+ \x01(\x0b2 .CarServer.SetChargingAmpsActionH\x00\x12E\n\x17hvacClimateKeeperAction\x18, \x01(\x0b2".CarServer.HvacClimateKeeperActionH\x00\x12E\n\x17hvacRecirculationAction\x18- \x01(\x0b2".CarServer.HvacRecirculationActionH\x00\x12\x1f\n\x04ping\x18. \x01(\x0b2\x0f.CarServer.PingH\x00\x12A\n\x15dashcamSaveClipAction\x18/ \x01(\x0b2 .CarServer.DashcamSaveClipActionH\x00\x12A\n\x15autoSeatClimateAction\x180 \x01(\x0b2 .CarServer.AutoSeatClimateActionH\x00\x12A\n\x15hvacSeatCoolerActions\x181 \x01(\x0b2 .CarServer.HvacSeatCoolerActionsH\x00\x12W\n setCabinOverheatProtectionAction\x182 \x01(\x0b2+.CarServer.SetCabinOverheatProtectionActionH\x00\x121\n\rpiiKeyRequest\x183 \x01(\x0b2\x18.CarServer.PiiKeyRequestH\x00\x12?\n\x14pseudonymSyncRequest\x184 \x01(\x0b2\x1f.CarServer.PseudonymSyncRequestH\x00\x12?\n\x14navigationGpsRequest\x185 \x01(\x0b2\x1f.CarServer.NavigationGpsRequestH\x00\x12?\n\x14setVehicleNameAction\x186 \x01(\x0b2\x1f.CarServer.SetVehicleNameActionH\x00\x12?\n\x14setRateTariffRequest\x187 \x01(\x0b2\x1f.CarServer.SetRateTariffRequestH\x00\x12?\n\x14getRateTariffRequest\x188 \x01(\x0b2\x1f.CarServer.GetRateTariffRequestH\x00\x12;\n\x12videoRequestAction\x189 \x01(\x0b2\x1d.CarServer.VideoRequestActionH\x00\x12=\n\x13takeDrivenoteAction\x18: \x01(\x0b2\x1e.CarServer.TakeDrivenoteActionH\x00\x12=\n\x13chargePortDoorClose\x18= \x01(\x0b2\x1e.CarServer.ChargePortDoorCloseH\x00\x12;\n\x12chargePortDoorOpen\x18> \x01(\x0b2\x1d.CarServer.ChargePortDoorOpenH\x00\x12S\n\x1ebluetoothClassicPairingRequest\x18? \x01(\x0b2).CarServer.BluetoothClassicPairingRequestH\x00\x121\n\rboomboxAction\x18@ \x01(\x0b2\x18.CarServer.BoomboxActionH\x00\x12<\n\x0fguestModeAction\x18A \x01(\x0b2!.CarServer.VehicleState.GuestModeH\x00\x127\n\x10setCopTempAction\x18B \x01(\x0b2\x1b.CarServer.SetCopTempActionH\x00\x12Q\n\x1daddManagedChargingSiteRequest\x18C \x01(\x0b2(.CarServer.AddManagedChargingSiteRequestH\x00\x12W\n removeManagedChargingSiteRequest\x18D \x01(\x0b2+.CarServer.RemoveManagedChargingSiteRequestH\x00\x12A\n\x15navigationRouteAction\x18E \x01(\x0b2 .CarServer.NavigationRouteActionH\x00\x129\n\x11autoStwHeatAction\x18F \x01(\x0b2\x1c.CarServer.AutoStwHeatActionH\x00\x12;\n\x12stwHeatLevelAction\x18G \x01(\x0b2\x1d.CarServer.StwHeatLevelActionH\x00\x12=\n\x13eraseUserDataAction\x18H \x01(\x0b2\x1e.CarServer.EraseUserDataActionH\x00\x12S\n\x1egetManagedChargingSitesRequest\x18I \x01(\x0b2).CarServer.GetManagedChargingSitesRequestH\x00\x12Y\n!updateChargeOnSolarFeatureRequest\x18J \x01(\x0b2,.CarServer.UpdateChargeOnSolarFeatureRequestH\x00\x12S\n\x1egetChargeOnSolarFeatureRequest\x18K \x01(\x0b2).CarServer.GetChargeOnSolarFeatureRequestH\x00\x12Y\n!vehicleControlSetPinToDriveAction\x18M \x01(\x0b2,.CarServer.VehicleControlSetPinToDriveActionH\x00\x12]\n#vehicleControlResetPinToDriveAction\x18N \x01(\x0b2..CarServer.VehicleControlResetPinToDriveActionH\x00\x12_\n$drivingClearSpeedLimitPinAdminAction\x18O \x01(\x0b2/.CarServer.DrivingClearSpeedLimitPinAdminActionH\x00\x12A\n\x15setOutletsOnOffAction\x18P \x01(\x0b2 .CarServer.SetOutletsOnOffActionH\x00\x12?\n\x14setOutletTimerAction\x18Q \x01(\x0b2\x1f.CarServer.SetOutletTimerActionH\x00\x12E\n\x17setOutletSocLimitAction\x18R \x01(\x0b2".CarServer.SetOutletSocLimitActionH\x00\x12E\n\x17setPowerFeedOnOffAction\x18S \x01(\x0b2".CarServer.SetPowerFeedOnOffActionH\x00\x12E\n\x17setPowerFeedTimerAction\x18T \x01(\x0b2".CarServer.SetPowerFeedTimerActionH\x00\x12K\n\x1asetPowerFeedSocLimitAction\x18U \x01(\x0b2%.CarServer.SetPowerFeedSocLimitActionH\x00\x12[\n"setTrailerLightTestStartStopAction\x18V \x01(\x0b2-.CarServer.SetTrailerLightTestStartStopActionH\x00\x12U\n\x1fsetTruckBedLightAutoStateAction\x18W \x01(\x0b2*.CarServer.SetTruckBedLightAutoStateActionH\x00\x12W\n setTruckBedLightBrightnessAction\x18X \x01(\x0b2+.CarServer.SetTruckBedLightBrightnessActionH\x00\x12g\n(vehicleControlResetPinToDriveAdminAction\x18Y \x01(\x0b23.CarServer.VehicleControlResetPinToDriveAdminActionH\x00\x12K\n\x1anavigationWaypointsRequest\x18Z \x01(\x0b2%.CarServer.NavigationWaypointsRequestH\x00\x12K\n\x1asetPowershareFeatureAction\x18[ \x01(\x0b2%.CarServer.SetPowershareFeatureActionH\x00\x12Y\n!setPowershareDischargeLimitAction\x18\\ \x01(\x0b2,.CarServer.SetPowershareDischargeLimitActionH\x00\x12K\n\x1asetPowershareRequestAction\x18] \x01(\x0b2%.CarServer.SetPowershareRequestActionH\x00\x12G\n\x18setTentModeRequestAction\x18^ \x01(\x0b2#.CarServer.SetTentModeRequestActionH\x00\x12N\n\x1esetFrontZoneLightRequestAction\x18_ \x01(\x0b2$.CarServer.SetZoneLightRequestActionH\x00\x12M\n\x1dsetRearZoneLightRequestAction\x18` \x01(\x0b2$.CarServer.SetZoneLightRequestActionH\x00\x12<\n\x17addChargeScheduleAction\x18a \x01(\x0b2\x19.CarServer.ChargeScheduleH\x00\x12K\n\x1aremoveChargeScheduleAction\x18b \x01(\x0b2%.CarServer.RemoveChargeScheduleActionH\x00\x12H\n\x1daddPreconditionScheduleAction\x18c \x01(\x0b2\x1f.CarServer.PreconditionScheduleH\x00\x12W\n removePreconditionScheduleAction\x18d \x01(\x0b2+.CarServer.RemovePreconditionScheduleActionH\x00\x12M\n\x1bsetLightbarBrightnessAction\x18e \x01(\x0b2&.CarServer.SetLightbarBrightnessActionH\x00\x12E\n\x17setLightbarMiddleAction\x18f \x01(\x0b2".CarServer.SetLightbarMiddleActionH\x00\x12C\n\x16setLightbarDitchAction\x18g \x01(\x0b2!.CarServer.SetLightbarDitchActionH\x00\x129\n\x11getMessagesAction\x18h \x01(\x0b2\x1c.CarServer.GetMessagesActionH\x00\x12E\n\x17teslaAuthResponseAction\x18i \x01(\x0b2".CarServer.TeslaAuthResponseActionH\x00\x12U\n\x1fnavigationGpsDestinationRequest\x18j \x01(\x0b2*.CarServer.NavigationGpsDestinationRequestH\x00\x12c\n&batchRemovePreconditionSchedulesAction\x18k \x01(\x0b21.CarServer.BatchRemovePreconditionSchedulesActionH\x00\x12W\n batchRemoveChargeSchedulesAction\x18l \x01(\x0b2+.CarServer.BatchRemoveChargeSchedulesActionH\x00\x12S\n\x1eparentalControlsClearPinAction\x18m \x01(\x0b2).CarServer.ParentalControlsClearPinActionH\x00\x12]\n#parentalControlsClearPinAdminAction\x18n \x01(\x0b2..CarServer.ParentalControlsClearPinAdminActionH\x00\x12C\n\x16parentalControlsAction\x18o \x01(\x0b2!.CarServer.ParentalControlsActionH\x00\x12_\n$parentalControlsEnableSettingsAction\x18p \x01(\x0b2/.CarServer.ParentalControlsEnableSettingsActionH\x00\x12]\n#parentalControlsSetSpeedLimitAction\x18q \x01(\x0b2..CarServer.ParentalControlsSetSpeedLimitActionH\x00\x12=\n\x13cancelSohTestAction\x18r \x01(\x0b2\x1e.CarServer.CancelSohTestActionH\x00\x12=\n\x13stopLightShowAction\x18t \x01(\x0b2\x1e.CarServer.StopLightShowActionH\x00\x12?\n\x14startLightShowAction\x18u \x01(\x0b2\x1f.CarServer.StartLightShowActionH\x00\x12G\n\x18setSuspensionLevelAction\x18v \x01(\x0b2#.CarServer.SetSuspensionLevelActionH\x00\x12F\n\x17setDischargeLimitAction\x18\x81\x01 \x01(\x0b2".CarServer.SetDischargeLimitActionH\x00\x12B\n\x15setLowPowerModeAction\x18\x82\x01 \x01(\x0b2 .CarServer.SetLowPowerModeActionH\x00\x12H\n\x18setTemperatureUnitAction\x18\x84\x01 \x01(\x0b2#.CarServer.SetTemperatureUnitActionH\x00\x12B\n\x15setDistanceUnitAction\x18\x85\x01 \x01(\x0b2 .CarServer.SetDistanceUnitActionH\x00\x12L\n\x1asetTimeDisplayFormatAction\x18\x86\x01 \x01(\x0b2%.CarServer.SetTimeDisplayFormatActionH\x00\x12J\n\x19setTirePressureUnitAction\x18\x87\x01 \x01(\x0b2$.CarServer.SetTirePressureUnitActionH\x00\x12P\n\x1csetEnergyDisplayFormatAction\x18\x88\x01 \x01(\x0b2\'.CarServer.SetEnergyDisplayFormatActionH\x00\x12V\n\x1fsetKeepAccessoryPowerModeAction\x18\x8a\x01 \x01(\x0b2*.CarServer.SetKeepAccessoryPowerModeActionH\x00\x12n\n+setupCloudProfileWithLocalProfileUuidAction\x18\x8b\x01 \x01(\x0b26.CarServer.SetupCloudProfileWithLocalProfileUuidActionH\x00\x12\\\n"getLocalProfilesForVaultUuidAction\x18\x8c\x01 \x01(\x0b2-.CarServer.GetLocalProfilesForVaultUuidActionH\x00\x12>\n\x13fetchKeysInfoAction\x18\x8e\x01 \x01(\x0b2\x1e.CarServer.FetchKeysInfoActionH\x00\x12H\n\x18deleteDashcamClipsAction\x18\x90\x01 \x01(\x0b2#.CarServer.DeleteDashcamClipsActionH\x00\x126\n\x0fformatUsbAction\x18\x92\x01 \x01(\x0b2\x1a.CarServer.FormatUSBActionH\x00\x122\n\rbandwidthTest\x18\x95\x01 \x01(\x0b2\x18.CarServer.BandwidthTestH\x00\x12X\n setPhoneSettingPreferencesAction\x18\x97\x01 \x01(\x0b2+.CarServer.SetPhoneSettingPreferencesActionH\x00\x12R\n\x1dcancelVehicleDataSubscription\x18\xab\x01 \x01(\x0b2(.CarServer.CancelVehicleDataSubscriptionH\x00B\x14\n\x12vehicle_action_msgJ\x04\x08\x0b\x10\x0cJ\x04\x08<\x10=J\x04\x08L\x10M"\xb0\x0b\n\x0eGetVehicleData\x121\n\x0egetGuiSettings\x18\x01 \x01(\x0b2\x19.CarServer.GetGuiSettings\x121\n\x0egetChargeState\x18\x02 \x01(\x0b2\x19.CarServer.GetChargeState\x123\n\x0fgetClimateState\x18\x03 \x01(\x0b2\x1a.CarServer.GetClimateState\x12/\n\rgetDriveState\x18\x04 \x01(\x0b2\x18.CarServer.GetDriveState\x12?\n\x15getLegacyVehicleState\x18\x05 \x01(\x0b2 .CarServer.GetLegacyVehicleState\x125\n\x10getVehicleConfig\x18\x06 \x01(\x0b2\x1b.CarServer.GetVehicleConfig\x125\n\x10getLocationState\x18\x07 \x01(\x0b2\x1b.CarServer.GetLocationState\x125\n\x10getClosuresState\x18\x08 \x01(\x0b2\x1b.CarServer.GetClosuresState\x12C\n\x17getParkedAccessoryState\x18\t \x01(\x0b2".CarServer.GetParkedAccessoryState\x12A\n\x16getChargeScheduleState\x18\n \x01(\x0b2!.CarServer.GetChargeScheduleState\x12S\n\x1fgetPreconditioningScheduleState\x18\x0b \x01(\x0b2*.CarServer.GetPreconditioningScheduleState\x12+\n\x0bgetSohState\x18\x0c \x01(\x0b2\x16.CarServer.GetSohState\x12?\n\x15getVehicleDetailState\x18\r \x01(\x0b2 .CarServer.GetVehicleDetailState\x12=\n\x14getTirePressureState\x18\x0e \x01(\x0b2\x1f.CarServer.GetTirePressureState\x12/\n\rgetMediaState\x18\x0f \x01(\x0b2\x18.CarServer.GetMediaState\x12;\n\x13getMediaDetailState\x18\x10 \x01(\x0b2\x1e.CarServer.GetMediaDetailState\x12A\n\x16getSoftwareUpdateState\x18\x11 \x01(\x0b2!.CarServer.GetSoftwareUpdateState\x123\n\x0fgetVehicleState\x18\x12 \x01(\x0b2\x1a.CarServer.GetVehicleState\x12E\n\x18getParentalControlsState\x18\x13 \x01(\x0b2#.CarServer.GetParentalControlsState\x12/\n\rgetAlertState\x18\x14 \x01(\x0b2\x18.CarServer.GetAlertState\x127\n\x11getLightShowState\x18\x15 \x01(\x0b2\x1c.CarServer.GetLightShowState\x12=\n\x14getVehicleImageState\x18\x16 \x01(\x0b2\x1f.CarServer.GetVehicleImageState\x129\n\x12getSuspensionState\x18\x17 \x01(\x0b2\x1d.CarServer.GetSuspensionState\x12Q\n\x1egetChildPresenceDetectionState\x18\x19 \x01(\x0b2).CarServer.GetChildPresenceDetectionState"\x10\n\x0eGetGuiSettings"\x17\n\x15GetLegacyVehicleState"\x12\n\x10GetVehicleConfig"\r\n\x0bGetSohState"\x17\n\x15GetVehicleDetailState"\x19\n\x17GetParkedAccessoryState"\x11\n\x0fGetVehicleState"\x0f\n\rGetAlertState"\x13\n\x11GetLightShowState"M\n\x14GetVehicleImageState\x125\n\rimageRequests\x18\x01 \x03(\x0b2\x1e.CarServer.VehicleImageRequest"\x14\n\x12GetSuspensionState" \n\x1eGetChildPresenceDetectionState"H\n\x1cVehicleImageDataChunkRequest\x12\x14\n\x0cchunk_offset\x18\x01 \x01(\r\x12\x12\n\nchunk_size\x18\x02 \x01(\r"\xda\x01\n\x13VehicleImageRequest\x125\n\x08dataType\x18\x01 \x01(\x0e2#.CarServer.VehicleImageRequest.Type\x123\n\timageType\x18\x02 \x01(\x0e2 .CarServer.VehicleImageStateType\x12=\n\x0cchunkRequest\x18\x03 \x01(\x0b2\'.CarServer.VehicleImageDataChunkRequest"\x18\n\x04Type\x12\x06\n\x02ID\x10\x00\x12\x08\n\x04DATA\x10\x01"\x16\n\x14GetTirePressureState"\x0f\n\rGetMediaState"\x15\n\x13GetMediaDetailState"\x18\n\x16GetSoftwareUpdateState"\x10\n\x0eGetChargeState"\x11\n\x0fGetClimateState"\x0f\n\rGetDriveState"\x12\n\x10GetLocationState"\x12\n\x10GetClosuresState"\x18\n\x16GetChargeScheduleState"!\n\x1fGetPreconditioningScheduleState"\x1a\n\x18GetParentalControlsState">\n\x13EraseUserDataAction\x12\x0e\n\x06reason\x18\x01 \x01(\t\x12\x17\n\x0ftrigger_on_park\x18\x02 \x01(\x08"\x82\n\n\x08Response\x12-\n\x0cactionStatus\x18\x01 \x01(\x0b2\x17.CarServer.ActionStatus\x12-\n\x0bvehicleData\x18\x02 \x01(\x0b2\x16.CarServer.VehicleDataH\x00\x129\n\x16getSessionInfoResponse\x18\x03 \x01(\x0b2\x17.Signatures.SessionInfoH\x00\x121\n\rstreamMessage\x18\x04 \x01(\x0b2\x18.CarServer.StreamMessageH\x00\x12@\n\x16getNearbyChargingSites\x18\x05 \x01(\x0b2\x1e.CarServer.NearbyChargingSitesH\x00\x12U\n\x1fvehicleDataSubscriptionResponse\x18\x06 \x01(\x0b2*.CarServer.VehicleDataSubscriptionResponseH\x00\x12K\n\x1avitalsSubscriptionResponse\x18\x08 \x01(\x0b2%.CarServer.VitalsSubscriptionResponseH\x00\x12\x1f\n\x04ping\x18\t \x01(\x0b2\x0f.CarServer.PingH\x00\x123\n\x0epiiKeyResponse\x18\n \x01(\x0b2\x19.CarServer.PiiKeyResponseH\x00\x12A\n\x15pseudonymSyncResponse\x18\x0b \x01(\x0b2 .CarServer.PseudonymSyncResponseH\x00\x12A\n\x15getRateTariffResponse\x18\x0c \x01(\x0b2 .CarServer.GetRateTariffResponseH\x00\x12E\n\x17navigationRouteResponse\x18\r \x01(\x0b2".CarServer.NavigationRouteResponseH\x00\x12U\n\x1fgetManagedChargingSitesResponse\x18\x0e \x01(\x0b2*.CarServer.GetManagedChargingSitesResponseH\x00\x12U\n\x1fgetChargeOnSolarFeatureResponse\x18\x0f \x01(\x0b2*.CarServer.GetChargeOnSolarFeatureResponseH\x00\x12S\n\x1eaddManagedChargingSiteResponse\x18\x10 \x01(\x0b2).CarServer.AddManagedChargingSiteResponseH\x00\x12=\n\x13getMessagesResponse\x18\x12 \x01(\x0b2\x1e.CarServer.GetMessagesResponseH\x00\x12G\n\x18getLocalProfilesResponse\x18\x14 \x01(\x0b2#.CarServer.GetLocalProfilesResponseH\x00\x127\n\x10keysInfoResponse\x18\x18 \x01(\x0b2\x1b.CarServer.KeysInfoResponseH\x00\x12A\n\x15bandwidthTestResponse\x18\x19 \x01(\x0b2 .CarServer.BandwidthTestResponseH\x00B\x0e\n\x0cresponse_msgJ\x04\x08\x11\x10\x12J\x04\x08\x13\x10\x14"g\n\x1fVehicleDataSubscriptionResponse\x12\x0f\n\x07unknown\x18\x03 \x01(\t\x123\n\x10pii_key_response\x18\x04 \x01(\x0b2\x19.CarServer.PiiKeyResponse"A\n\x1aVitalsSubscriptionResponse\x12\x12\n\nsession_id\x18\x01 \x01(\x05\x12\x0f\n\x07unknown\x18\x02 \x01(\t"\xa9\x01\n\x0ePiiKeyResponse\x12\x19\n\x11encrypted_pii_key\x18\x02 \x01(\x0c\x126\n\x12pii_key_expiration\x18\x03 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12D\n subscriber_public_key_expiration\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp"(\n\x15PseudonymSyncResponse\x12\x0f\n\x07unknown\x18\x01 \x01(\t"\xd4\x02\n\x17NavigationRouteResponse\x12\x0f\n\x07unknown\x18\x01 \x01(\t\x12H\n\x0etraffic_detail\x18\x02 \x03(\x0b20.CarServer.NavigationRouteResponse.TrafficDetail\x1aq\n\rTrafficDetail\x12\x16\n\x0eoffset_to_dest\x18\x01 \x01(\x02\x12H\n\x0etraffic_status\x18\x02 \x01(\x0e20.CarServer.NavigationRouteResponse.TrafficStatus"k\n\rTrafficStatus\x12\x0e\n\nTS_NO_DATA\x10\x00\x12\x0c\n\x08TS_LIGHT\x10\x01\x12\x0f\n\x0bTS_MODERATE\x10\x02\x12\x11\n\rTS_CONGESTION\x10\x03\x12\x18\n\x14TS_SEVERE_CONGESTION\x10\x04"P\n\x1fGetManagedChargingSitesResponse\x12-\n\x05sites\x18\x01 \x03(\x0b2\x1e.CarServer.ManagedChargingSite"#\n!ManagedChargingSiteAddedOrUpdated"#\n!ExistingManagedChargingSiteNearby"\xb4\x01\n\x1eAddManagedChargingSiteResponse\x12F\n\x10added_or_updated\x18\x01 \x01(\x0b2,.CarServer.ManagedChargingSiteAddedOrUpdated\x12J\n\x14existing_site_nearby\x18\x02 \x01(\x0b2,.CarServer.ExistingManagedChargingSiteNearby"Z\n\x17RequestTeslaAuthCommand\x12\x11\n\tclient_id\x18\x01 \x01(\t\x12\x0f\n\x07unknown\x18\x02 \x01(\t\x12\x1b\n\x13return_scoped_token\x18\x03 \x01(\x08"Z\n\x10MobileAppMessage\x12F\n\x1arequest_tesla_auth_command\x18\x01 \x01(\x0b2".CarServer.RequestTeslaAuthCommand"O\n\x13GetMessagesResponse\x128\n\x13mobile_app_messages\x18\x01 \x03(\x0b2\x1b.CarServer.MobileAppMessage"/\n\x07Profile\x12\x11\n\tunknown_1\x18\x01 \x01(\t\x12\x11\n\tunknown_2\x18\x02 \x01(\t"@\n\x18GetLocalProfilesResponse\x12$\n\x08profiles\x18\x01 \x03(\x0b2\x12.CarServer.Profile"\xb7\x01\n\x07KeyInfo\x12\x11\n\tunknown_1\x18\x01 \x01(\t\x12\x11\n\tunknown_2\x18\x02 \x01(\t\x12\x12\n\npublic_key\x18\x03 \x01(\x0c\x12-\n\tlast_seen\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12\x18\n\x04role\x18\x05 \x01(\x0e2\n.Keys.Role\x12)\n\x0bform_factor\x18\x06 \x01(\x0e2\x14.VCSEC.KeyFormFactor"9\n\x10KeysInfoResponse\x12%\n\tkeys_info\x18\x01 \x03(\x0b2\x12.CarServer.KeyInfo"=\n\x15BandwidthTestResponse\x12\x0c\n\x04data\x18\x01 \x01(\x0c\x12\x16\n\x0erequested_size\x18\x02 \x01(\r"\x89\x01\n\x15GetRateTariffResponse\x128\n\x07seasons\x18\r \x01(\x0b2\'.CarServer.SetRateTariffRequest.Seasons\x126\n\x06tariff\x18\x0e \x01(\x0b2&.CarServer.SetRateTariffRequest.Tariff"l\n\x0cActionStatus\x12,\n\x06result\x18\x01 \x01(\x0e2\x1c.CarServer.OperationStatus_E\x12.\n\rresult_reason\x18\x02 \x01(\x0b2\x17.CarServer.ResultReason".\n\x0cResultReason\x12\x14\n\nplain_text\x18\x01 \x01(\tH\x00B\x08\n\x06reason"F\n\rEncryptedData\x12\x14\n\x0cfield_number\x18\x01 \x01(\x05\x12\x12\n\nciphertext\x18\x02 \x01(\x0c\x12\x0b\n\x03tag\x18\x03 \x01(\x0c";\n\x16ChargingSetLimitAction\x12\x0f\n\x07percent\x18\x01 \x01(\x05\x12\x10\n\x08one_time\x18\x02 \x01(\x08"\xea\x01\n\x17ChargingStartStopAction\x12"\n\x07unknown\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12 \n\x05start\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12)\n\x0estart_standard\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fstart_max_range\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12\x1f\n\x04stop\x18\x05 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x11\n\x0fcharging_action".\n\x1fDrivingClearSpeedLimitPinAction\x12\x0b\n\x03pin\x18\x01 \x01(\t"/\n\x1aDrivingSetSpeedLimitAction\x12\x11\n\tlimit_mph\x18\x01 \x01(\x01"8\n\x17DrivingSpeedLimitAction\x12\x10\n\x08activate\x18\x01 \x01(\x08\x12\x0b\n\x03pin\x18\x02 \x01(\t";\n\x0eHvacAutoAction\x12\x10\n\x08power_on\x18\x01 \x01(\x08\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08"\xfc\x06\n\x15HvacSeatHeaterActions\x12S\n\x14hvacSeatHeaterAction\x18\x01 \x03(\x0b25.CarServer.HvacSeatHeaterActions.HvacSeatHeaterAction\x1a\x8d\x06\n\x14HvacSeatHeaterAction\x12.\n\x13SEAT_HEATER_UNKNOWN\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fSEAT_HEATER_OFF\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fSEAT_HEATER_LOW\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12*\n\x0fSEAT_HEATER_MED\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12+\n\x10SEAT_HEATER_HIGH\x18\x05 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12+\n\x10CAR_SEAT_UNKNOWN\x18\x06 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12.\n\x13CAR_SEAT_FRONT_LEFT\x18\x07 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12/\n\x14CAR_SEAT_FRONT_RIGHT\x18\x08 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12-\n\x12CAR_SEAT_REAR_LEFT\x18\t \x01(\x0b2\x0f.CarServer.VoidH\x01\x122\n\x17CAR_SEAT_REAR_LEFT_BACK\x18\n \x01(\x0b2\x0f.CarServer.VoidH\x01\x12/\n\x14CAR_SEAT_REAR_CENTER\x18\x0b \x01(\x0b2\x0f.CarServer.VoidH\x01\x12.\n\x13CAR_SEAT_REAR_RIGHT\x18\x0c \x01(\x0b2\x0f.CarServer.VoidH\x01\x123\n\x18CAR_SEAT_REAR_RIGHT_BACK\x18\r \x01(\x0b2\x0f.CarServer.VoidH\x01\x122\n\x17CAR_SEAT_THIRD_ROW_LEFT\x18\x0e \x01(\x0b2\x0f.CarServer.VoidH\x01\x123\n\x18CAR_SEAT_THIRD_ROW_RIGHT\x18\x0f \x01(\x0b2\x0f.CarServer.VoidH\x01B\x13\n\x11seat_heater_levelB\x0f\n\rseat_position"\xbd\x05\n\x15HvacSeatCoolerActions\x12S\n\x14hvacSeatCoolerAction\x18\x01 \x03(\x0b25.CarServer.HvacSeatCoolerActions.HvacSeatCoolerAction\x1a\xbb\x01\n\x14HvacSeatCoolerAction\x12Q\n\x11seat_cooler_level\x18\x01 \x01(\x0e26.CarServer.HvacSeatCoolerActions.HvacSeatCoolerLevel_E\x12P\n\rseat_position\x18\x02 \x01(\x0e29.CarServer.HvacSeatCoolerActions.HvacSeatCoolerPosition_E"\xad\x01\n\x15HvacSeatCoolerLevel_E\x12\x1f\n\x1bHvacSeatCoolerLevel_Unknown\x10\x00\x12\x1b\n\x17HvacSeatCoolerLevel_Off\x10\x01\x12\x1b\n\x17HvacSeatCoolerLevel_Low\x10\x02\x12\x1b\n\x17HvacSeatCoolerLevel_Med\x10\x03\x12\x1c\n\x18HvacSeatCoolerLevel_High\x10\x04"\xe0\x01\n\x18HvacSeatCoolerPosition_E\x12"\n\x1eHvacSeatCoolerPosition_Unknown\x10\x00\x12$\n HvacSeatCoolerPosition_FrontLeft\x10\x01\x12%\n!HvacSeatCoolerPosition_FrontRight\x10\x02\x12(\n$HvacSeatCoolerPosition_SecondRowLeft\x10\x03\x12)\n%HvacSeatCoolerPosition_SecondRowRight\x10\x04"\xde\x01\n\x1fHvacSetPreconditioningMaxAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08\x12]\n\x14manual_override_mode\x18\x03 \x03(\x0e2?.CarServer.HvacSetPreconditioningMaxAction.ManualOverrideMode_E"7\n\x14ManualOverrideMode_E\x12\x0b\n\x07DogMode\x10\x00\x12\x07\n\x03Soc\x10\x01\x12\t\n\x05Doors\x10\x02"1\n\x1dHvacSteeringWheelHeaterAction\x12\x10\n\x08power_on\x18\x01 \x01(\x08"\xb3\x05\n\x1fHvacTemperatureAdjustmentAction\x12\x15\n\rdelta_celsius\x18\x01 \x01(\x02\x12\x15\n\rdelta_percent\x18\x02 \x01(\x11\x12\x18\n\x10absolute_celsius\x18\x03 \x01(\x02\x12E\n\x05level\x18\x05 \x01(\x0b26.CarServer.HvacTemperatureAdjustmentAction.Temperature\x12]\n\x15hvac_temperature_zone\x18\x04 \x03(\x0b2>.CarServer.HvacTemperatureAdjustmentAction.HvacTemperatureZone\x12\x1b\n\x13driver_temp_celsius\x18\x06 \x01(\x02\x12\x1e\n\x16passenger_temp_celsius\x18\x07 \x01(\x02\x1a\x88\x01\n\x0bTemperature\x12\'\n\x0cTEMP_UNKNOWN\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12#\n\x08TEMP_MIN\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12#\n\x08TEMP_MAX\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x06\n\x04type\x1a\xd9\x01\n\x13HvacTemperatureZone\x12,\n\x11TEMP_ZONE_UNKNOWN\x18\x01 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12/\n\x14TEMP_ZONE_FRONT_LEFT\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x120\n\x15TEMP_ZONE_FRONT_RIGHT\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12)\n\x0eTEMP_ZONE_REAR\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x06\n\x04type"R\n\x16GetNearbyChargingSites\x12\x19\n\x11include_meta_data\x18\x01 \x01(\x08\x12\x0e\n\x06radius\x18\x02 \x01(\x05\x12\r\n\x05count\x18\x03 \x01(\x05"\xda\x01\n\x13NearbyChargingSites\x12-\n\ttimestamp\x18\x01 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x14destination_charging\x18\x02 \x03(\x0b2\x1e.CarServer.DestinationCharging\x12/\n\rsuperchargers\x18\x03 \x03(\x0b2\x18.CarServer.Superchargers\x12%\n\x1dcongestion_sync_time_utc_secs\x18\x04 \x01(\x03"p\n\x13DestinationCharging\x12\x16\n\x0edistance_miles\x18\x05 \x01(\x02\x12\x13\n\x0bpostal_code\x18\t \x01(\t\x12\x16\n\x0estreet_address\x18\x0b \x01(\t\x12\x14\n\x0cwithin_range\x18\x0c \x01(\x08"\xcb\x03\n\rSuperchargers\x12\n\n\x02id\x18\x01 \x01(\x03\x12\x11\n\tamenities\x18\x02 \x01(\t\x12\x18\n\x10available_stalls\x18\x03 \x01(\x05\x12\x14\n\x0cbilling_info\x18\x04 \x01(\t\x12\x14\n\x0cbilling_time\x18\x05 \x01(\t\x12\x0c\n\x04city\x18\x06 \x01(\t\x12\x0f\n\x07country\x18\x07 \x01(\t\x12\x16\n\x0edistance_miles\x18\x08 \x01(\x02\x12\x10\n\x08district\x18\t \x01(\t\x12$\n\x08location\x18\n \x01(\x0b2\x12.CarServer.LatLong\x12\x0c\n\x04name\x18\x0b \x01(\t\x12\x13\n\x0bpostal_code\x18\x0c \x01(\t\x12\x13\n\x0bsite_closed\x18\r \x01(\x08\x12\r\n\x05state\x18\x0e \x01(\t\x12\x16\n\x0estreet_address\x18\x0f \x01(\t\x12\x14\n\x0ctotal_stalls\x18\x10 \x01(\x05\x12\x14\n\x0cwithin_range\x18\x11 \x01(\x08\x12\x14\n\x0cmax_power_kw\x18\x12 \x01(\x05\x12"\n\x1aout_of_order_stalls_number\x18\x13 \x01(\x05\x12!\n\x19out_of_order_stalls_names\x18\x14 \x01(\t"\x11\n\x0fMediaPlayAction"b\n\x11MediaUpdateVolume\x12\x16\n\x0cvolume_delta\x18\x01 \x01(\x11H\x00\x12\x1f\n\x15volume_absolute_float\x18\x03 \x01(\x02H\x00B\x0e\n\x0cmedia_volumeJ\x04\x08\x02\x10\x03"\x13\n\x11MediaNextFavorite"\x17\n\x15MediaPreviousFavorite"\x10\n\x0eMediaNextTrack"\x14\n\x12MediaPreviousTrack"*\n(VehicleControlCancelSoftwareUpdateAction"!\n\x1fVehicleControlFlashLightsAction"\x1e\n\x1cVehicleControlHonkHornAction"#\n!VehicleControlResetValetPinAction"@\n*VehicleControlScheduleSoftwareUpdateAction\x12\x12\n\noffset_sec\x18\x01 \x01(\x05"/\n!VehicleControlSetSentryModeAction\x12\n\n\x02on\x18\x01 \x01(\x08"@\n VehicleControlSetValetModeAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x10\n\x08password\x18\x02 \x01(\t"\xd6\x01\n$VehicleControlSunroofOpenCloseAction\x12\x18\n\x0eabsolute_level\x18\x01 \x01(\x05H\x00\x12\x15\n\x0bdelta_level\x18\x02 \x01(\x11H\x00\x12\x1f\n\x04vent\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12 \n\x05close\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x01\x12\x1f\n\x04open\x18\x05 \x01(\x0b2\x0f.CarServer.VoidH\x01B\x0f\n\rsunroof_levelB\x08\n\x06action"Z\n#VehicleControlTriggerHomelinkAction\x12$\n\x08location\x18\x01 \x01(\x0b2\x12.CarServer.LatLong\x12\r\n\x05token\x18\x02 \x01(\t"\x93\x01\n\x1aVehicleControlWindowAction\x12"\n\x07unknown\x18\x02 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12\x1f\n\x04vent\x18\x03 \x01(\x0b2\x0f.CarServer.VoidH\x00\x12 \n\x05close\x18\x04 \x01(\x0b2\x0f.CarServer.VoidH\x00B\x08\n\x06actionJ\x04\x08\x01\x10\x02">\n\x17HvacBioweaponModeAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08"\xaa\x02\n\x15AutoSeatClimateAction\x129\n\x07carseat\x18\x01 \x03(\x0b2(.CarServer.AutoSeatClimateAction.CarSeat\x1aa\n\x07CarSeat\x12\n\n\x02on\x18\x01 \x01(\x08\x12J\n\rseat_position\x18\x02 \x01(\x0e23.CarServer.AutoSeatClimateAction.AutoSeatPosition_E"s\n\x12AutoSeatPosition_E\x12\x1c\n\x18AutoSeatPosition_Unknown\x10\x00\x12\x1e\n\x1aAutoSeatPosition_FrontLeft\x10\x01\x12\x1f\n\x1bAutoSeatPosition_FrontRight\x10\x02"\x87\x01\n\x04Ping\x12\x0f\n\x07ping_id\x18\x01 \x01(\x05\x123\n\x0flocal_timestamp\x18\x02 \x01(\x0b2\x1a.google.protobuf.Timestamp\x129\n\x15last_remote_timestamp\x18\x03 \x01(\x0b2\x1a.google.protobuf.Timestamp"A\n\x17ScheduledChargingAction\x12\x0f\n\x07enabled\x18\x01 \x01(\x08\x12\x15\n\rcharging_time\x18\x02 \x01(\x05"\xe6\x01\n\x18ScheduledDepartureAction\x12\x0f\n\x07enabled\x18\x01 \x01(\x08\x12\x16\n\x0edeparture_time\x18\x02 \x01(\x05\x12>\n\x15preconditioning_times\x18\x03 \x01(\x0b2\x1f.CarServer.PreconditioningTimes\x12@\n\x17off_peak_charging_times\x18\x04 \x01(\x0b2\x1f.CarServer.OffPeakChargingTimes\x12\x1f\n\x17off_peak_hours_end_time\x18\x05 \x01(\x05"\x98\x03\n\x17HvacClimateKeeperAction\x12U\n\x13ClimateKeeperAction\x18\x01 \x01(\x0e28.CarServer.HvacClimateKeeperAction.ClimateKeeperAction_E\x12\x17\n\x0fmanual_override\x18\x02 \x01(\x08\x12U\n\x14manual_override_mode\x18\x03 \x03(\x0e27.CarServer.HvacClimateKeeperAction.ManualOverrideMode_E"\x8b\x01\n\x15ClimateKeeperAction_E\x12\x1b\n\x17ClimateKeeperAction_Off\x10\x00\x12\x1a\n\x16ClimateKeeperAction_On\x10\x01\x12\x1b\n\x17ClimateKeeperAction_Dog\x10\x02\x12\x1c\n\x18ClimateKeeperAction_Camp\x10\x03"(\n\x14ManualOverrideMode_E\x12\x07\n\x03Soc\x10\x00\x12\x07\n\x03Cpd\x10\x01"%\n\x17HvacRecirculationAction\x12\n\n\x02on\x18\x01 \x01(\x08".\n\x15SetChargingAmpsAction\x12\x15\n\rcharging_amps\x18\x01 \x01(\x05"(\n\x1aRemoveChargeScheduleAction\x12\n\n\x02id\x18\x01 \x01(\x04"M\n BatchRemoveChargeSchedulesAction\x12\x0c\n\x04home\x18\x01 \x01(\x08\x12\x0c\n\x04work\x18\x02 \x01(\x08\x12\r\n\x05other\x18\x03 \x01(\x08"S\n&BatchRemovePreconditionSchedulesAction\x12\x0c\n\x04home\x18\x01 \x01(\x08\x12\x0c\n\x04work\x18\x02 \x01(\x08\x12\r\n\x05other\x18\x03 \x01(\x08".\n RemovePreconditionScheduleAction\x12\n\n\x02id\x18\x01 \x01(\x04"@\n SetCabinOverheatProtectionAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x10\n\x08fan_only\x18\x02 \x01(\x08"+\n\x14SetVehicleNameAction\x12\x13\n\x0bvehicleName\x18\x01 \x01(\t"\x15\n\x13ChargePortDoorClose"\x14\n\x12ChargePortDoorOpen"\x1e\n\rBoomboxAction\x12\r\n\x05sound\x18\x01 \x01(\r"X\n\x10SetCopTempAction\x12D\n\x11copActivationTemp\x18\x01 \x01(\x0e2).CarServer.ClimateState.CopActivationTemp"A\n!VehicleControlSetPinToDriveAction\x12\n\n\x02on\x18\x01 \x01(\x08\x12\x10\n\x08password\x18\x02 \x01(\t"%\n#VehicleControlResetPinToDriveAction"\x12\n\x10RemoteStartDrive")\n\x13CreateStreamSession\x12\x12\n\nsession_id\x18\x01 \x01(\t"1\n\rStreamMessage\x12\x12\n\nsession_id\x18\x01 \x01(\t\x12\x0c\n\x04data\x18\x02 \x01(\x0c"7\n\x11NavigationRequest\x12\x13\n\x0bdestination\x18\x01 \x01(\t\x12\r\n\x05order\x18\x02 \x01(\x05"\xb0\x02\n\x1dNavigationSuperchargerRequest\x12\n\n\x02id\x18\x01 \x01(\x03\x12Z\n\x15remote_nav_trip_order\x18\x02 \x01(\x0e2;.CarServer.NavigationSuperchargerRequest.RemoteNavTripOrder"\x9f\x01\n\x12RemoteNavTripOrder\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_UNKNOWN\x10\x00\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_REPLACE\x10\x01\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_PREPEND\x10\x02\x12 \n\x1cREMOTE_NAV_TRIP_ORDER_APPEND\x10\x03R\x05order"5\n\x1cUiSetUpcomingCalendarEntries\x12\x15\n\rcalendar_data\x18\x01 \x01(\t"\xd1\x06\n\x17VehicleDataSubscription\x12I\n\x0fpii_key_request\x18\r \x01(\x0b20.CarServer.VehicleDataSubscription.PiiKeyRequest\x12\x1f\n\x17subscription_duration_s\x18\x03 \x01(\x05\x12\x1b\n\x13subscription_ping_s\x18\x0c \x01(\x05\x12\'\n\x1fgui_settings_max_update_rate_ms\x18\x04 \x01(\x05\x12\'\n\x1fcharge_state_max_update_rate_ms\x18\x05 \x01(\x05\x12(\n climate_state_max_update_rate_ms\x18\x06 \x01(\x05\x12&\n\x1edrive_state_max_update_rate_ms\x18\x07 \x01(\x05\x12(\n vehicle_state_max_update_rate_ms\x18\x08 \x01(\x05\x12)\n!vehicle_config_max_update_rate_ms\x18\t \x01(\x05\x12)\n!location_state_max_update_rate_ms\x18\n \x01(\x05\x12)\n!closures_state_max_update_rate_ms\x18\x0b \x01(\x05\x121\n)parked_accessory_state_max_update_rate_ms\x18\x0e \x01(\x05\x120\n(charge_schedule_state_max_update_rate_ms\x18\x0f \x01(\x05\x129\n1preconditioning_schedule_state_max_update_rate_ms\x18\x10 \x01(\x05\x12&\n\x1ealert_state_max_update_rate_ms\x18\x11 \x01(\x05\x12+\n#suspension_state_max_update_rate_ms\x18\x12 \x01(\x05\x129\n1child_presence_detection_state_max_update_rate_ms\x18\x13 \x01(\x05\x1a.\n\rPiiKeyRequest\x12\x1d\n\x15subscriber_public_key\x18\x01 \x01(\t"\xef\x06\n\x0eVehicleDataAck\x12:\n\x16charge_state_timestamp\x18\x02 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12;\n\x17climate_state_timestamp\x18\x03 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x18closures_state_timestamp\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp\x129\n\x15drive_state_timestamp\x18\x05 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12:\n\x16gui_settings_timestamp\x18\x06 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x18location_state_timestamp\x18\x07 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12<\n\x18vehicle_config_timestamp\x18\x08 \x01(\x0b2\x1a.google.protobuf.Timestamp\x12;\n\x17vehicle_state_timestamp\x18\t \x01(\x0b2\x1a.google.protobuf.Timestamp\x12D\n parked_accessory_state_timestamp\x18\x0b \x01(\x0b2\x1a.google.protobuf.Timestamp\x12C\n\x1fcharge_schedule_state_timestamp\x18\x0c \x01(\x0b2\x1a.google.protobuf.Timestamp\x12L\n(preconditioning_schedule_state_timestamp\x18\r \x01(\x0b2\x1a.google.protobuf.Timestamp\x129\n\x15alert_state_timestamp\x18\x0e \x01(\x0b2\x1a.google.protobuf.Timestamp\x12>\n\x1asuspension_state_timestamp\x18\x0f \x01(\x0b2\x1a.google.protobuf.Timestamp\x12"\n\x16decryption_error_field\x18\n \x03(\x05B\x02\x10\x01"(\n\x12VitalsSubscription\x12\x12\n\nsession_id\x18\x01 \x01(\x05"\x0b\n\tVitalsAck"\x17\n\x15DashcamSaveClipAction"f\n\rPiiKeyRequest\x12\x1d\n\x15subscriber_public_key\x18\x02 \x01(\t\x126\n\x12pii_key_expiration\x18\x04 \x01(\x0b2\x1a.google.protobuf.Timestamp";\n\x14PseudonymSyncRequest\x12#\n\x1blast_known_pseudonym_hashed\x18\x01 \x01(\x0c"\x95\x02\n\x14NavigationGpsRequest\x12\x0b\n\x03lat\x18\x01 \x01(\x01\x12\x0b\n\x03lon\x18\x02 \x01(\x01\x12A\n\x05order\x18\x03 \x01(\x0e22.CarServer.NavigationGpsRequest.RemoteNavTripOrder"\x9f\x01\n\x12RemoteNavTripOrder\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_UNKNOWN\x10\x00\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_REPLACE\x10\x01\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_PREPEND\x10\x02\x12 \n\x1cREMOTE_NAV_TRIP_ORDER_APPEND\x10\x03"\x90\x0c\n\x14SetRateTariffRequest\x128\n\x07seasons\x18\r \x01(\x0b2\'.CarServer.SetRateTariffRequest.Seasons\x126\n\x06tariff\x18\x0e \x01(\x0b2&.CarServer.SetRateTariffRequest.Tariff\x1a\x89\x01\n\tTOUPeriod\x12\x18\n\x10from_day_of_week\x18\x01 \x01(\x05\x12\x16\n\x0eto_day_of_week\x18\x02 \x01(\x05\x12\x11\n\tfrom_hour\x18\x03 \x01(\x05\x12\x13\n\x0bfrom_minute\x18\x04 \x01(\x05\x12\x0f\n\x07to_hour\x18\x05 \x01(\x05\x12\x11\n\tto_minute\x18\x06 \x01(\x05\x1a\x89\x02\n\nTOUPeriods\x12:\n\x07ON_PEAK\x18\x01 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x12?\n\x0cPARTIAL_PEAK\x18\x02 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x12;\n\x08OFF_PEAK\x18\x03 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x12A\n\x0eSUPER_OFF_PEAK\x18\x04 \x03(\x0b2).CarServer.SetRateTariffRequest.TOUPeriod\x1a\x91\x01\n\x06Season\x12\x10\n\x08from_day\x18\x01 \x01(\x05\x12\x0e\n\x06to_day\x18\x02 \x01(\x05\x12\x12\n\nfrom_month\x18\x03 \x01(\x05\x12\x10\n\x08to_month\x18\x04 \x01(\x05\x12?\n\x0btou_periods\x18\x05 \x01(\x0b2*.CarServer.SetRateTariffRequest.TOUPeriods\x1a\xa4\x02\n\x07Seasons\x126\n\x06Summer\x18\x01 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x126\n\x06Winter\x18\x02 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x127\n\x07Season3\x18\x03 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x127\n\x07Season4\x18\x04 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x127\n\x07Season5\x18\x05 \x01(\x0b2&.CarServer.SetRateTariffRequest.Season\x1a\x1a\n\x0bFixedCharge\x12\x0b\n\x03ALL\x18\x01 \x01(\x01\x1ah\n\x08RateBand\x12\x0b\n\x03ALL\x18\x01 \x01(\x01\x12\x0f\n\x07ON_PEAK\x18\x02 \x01(\x01\x12\x14\n\x0cPARTIAL_PEAK\x18\x03 \x01(\x01\x12\x10\n\x08OFF_PEAK\x18\x04 \x01(\x01\x12\x16\n\x0eSUPER_OFF_PEAK\x18\x05 \x01(\x01\x1a\xe8\x02\n\x07Charges\x128\n\x03ALL\x18\x01 \x01(\x0b2+.CarServer.SetRateTariffRequest.FixedCharge\x128\n\x06Summer\x18\x02 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x128\n\x06Winter\x18\x03 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x129\n\x07Season3\x18\x04 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x129\n\x07Season4\x18\x05 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x129\n\x07Season5\x18\x06 \x01(\x0b2(.CarServer.SetRateTariffRequest.RateBand\x1aB\n\x06Tariff\x128\n\x07seasons\x18\r \x01(\x0b2\'.CarServer.SetRateTariffRequest.Seasons"\x16\n\x14GetRateTariffRequest"!\n\x12VideoRequestAction\x12\x0b\n\x03url\x18\x01 \x01(\t"#\n\x13TakeDrivenoteAction\x12\x0c\n\x04note\x18\x01 \x01(\t"H\n\x1eBluetoothClassicPairingRequest\x12\x11\n\tutf8_name\x18\x01 \x01(\t\x12\x13\n\x0bmac_address\x18\x02 \x01(\x0c"M\n\x1dAddManagedChargingSiteRequest\x12,\n\x04site\x18\x01 \x01(\x0b2\x1e.CarServer.ManagedChargingSite"|\n\x13ManagedChargingSite\x12\x12\n\npublic_key\x18\x01 \x01(\t\x12,\n\x0cmanager_type\x18\x02 \x01(\x0b2\x16.CarServer.ManagerType\x12#\n\x07lat_lon\x18\x03 \x01(\x0b2\x12.CarServer.LatLong"A\n\x0bManagerType\x122\n\x0fsite_controller\x18\x01 \x01(\x0b2\x19.CarServer.SiteController"\x10\n\x0eSiteController"6\n RemoveManagedChargingSiteRequest\x12\x12\n\npublic_key\x18\x01 \x01(\t"\x17\n\x15NavigationRouteAction"\x1f\n\x11AutoStwHeatAction\x12\n\n\x02on\x18\x01 \x01(\x08"E\n\x12StwHeatLevelAction\x12/\n\x0estw_heat_level\x18\x01 \x01(\x0e2\x17.CarServer.StwHeatLevel" \n\x1eGetManagedChargingSitesRequest"]\n!UpdateChargeOnSolarFeatureRequest\x128\n\x0fcharge_on_solar\x18\x01 \x01(\x0b2\x1f.CarServer.ChargeOnSolarFeature" \n\x1eGetChargeOnSolarFeatureRequest"[\n\x1fGetChargeOnSolarFeatureResponse\x128\n\x0fcharge_on_solar\x18\x01 \x01(\x0b2\x1f.CarServer.ChargeOnSolarFeature"_\n\x14ChargeOnSolarFeature\x12\x0f\n\x07enabled\x18\x01 \x01(\x08\x12\x1a\n\x12lower_charge_limit\x18\x02 \x01(\x02\x12\x1a\n\x12upper_charge_limit\x18\x03 \x01(\x02"&\n$DrivingClearSpeedLimitPinAdminAction"\xe0\x01\n\x15SetOutletsOnOffAction\x12F\n\x0eoutlet_request\x18\x01 \x01(\x0e2..CarServer.SetOutletsOnOffAction.OutletRequest"\x7f\n\rOutletRequest\x12\x1a\n\x16OUTLET_REQUEST_UNKNOWN\x10\x00\x12\x16\n\x12OUTLET_REQUEST_OFF\x10\x01\x12 \n\x1cOUTLET_REQUEST_CABIN_AND_BED\x10\x02\x12\x18\n\x14OUTLET_REQUEST_CABIN\x10\x03"+\n\x14SetOutletTimerAction\x12\x13\n\x0bnum_minutes\x18\x01 \x01(\x05"*\n\x17SetOutletSocLimitAction\x12\x0f\n\x07percent\x18\x01 \x01(\x05"\xa3\x02\n\x17SetPowerFeedOnOffAction\x12O\n\x12power_feed_request\x18\x01 \x01(\x0e23.CarServer.SetPowerFeedOnOffAction.PowerFeedRequest"\xb6\x01\n\x10PowerFeedRequest\x12\x1e\n\x1aPOWER_FEED_REQUEST_UNKNOWN\x10\x00\x12\x1a\n\x16POWER_FEED_REQUEST_OFF\x10\x01\x12\x1d\n\x19POWER_FEED_REQUEST_FEED_1\x10\x02\x12\x1d\n\x19POWER_FEED_REQUEST_FEED_2\x10\x03\x12(\n$POWER_FEED_REQUEST_FEED_1_AND_FEED_2\x10\x04".\n\x17SetPowerFeedTimerAction\x12\x13\n\x0bnum_minutes\x18\x01 \x01(\x05"-\n\x1aSetPowerFeedSocLimitAction\x12\x0f\n\x07percent\x18\x01 \x01(\x05"8\n"SetTrailerLightTestStartStopAction\x12\x12\n\nstart_stop\x18\x01 \x01(\x08"6\n\x1fSetTruckBedLightAutoStateAction\x12\x13\n\x0bpower_state\x18\x01 \x01(\x08"6\n SetTruckBedLightBrightnessAction\x12\x12\n\nbrightness\x18\x01 \x01(\r"*\n(VehicleControlResetPinToDriveAdminAction"\xd4\x01\n\x1aNavigationWaypointsRequest\x12\x11\n\twaypoints\x18\x01 \x01(\t\x12P\n\x11trip_plan_options\x18\x02 \x01(\x0b25.CarServer.NavigationWaypointsRequest.TripPlanOptions\x1aQ\n\x0fTripPlanOptions\x12\x1d\n\x15destination_start_soe\x18\x01 \x01(\x05\x12\x1f\n\x17destination_arrival_soe\x18\x02 \x01(\x05"\x8c\x02\n\x1aSetPowershareFeatureAction\x12b\n\x1apowershare_feature_request\x18\x01 \x01(\x0e2>.CarServer.SetPowershareFeatureAction.PowershareFeatureRequest"\x89\x01\n\x18PowershareFeatureRequest\x12&\n"POWERSHARE_FEATURE_REQUEST_UNKNOWN\x10\x00\x12"\n\x1ePOWERSHARE_FEATURE_REQUEST_OFF\x10\x01\x12!\n\x1dPOWERSHARE_FEATURE_REQUEST_ON\x10\x02"G\n!SetPowershareDischargeLimitAction\x12"\n\x1apowershare_discharge_limit\x18\x01 \x01(\x05"\xdd\x01\n\x1aSetPowershareRequestAction\x12S\n\x12powershare_request\x18\x01 \x01(\x0e27.CarServer.SetPowershareRequestAction.PowershareRequest"j\n\x11PowershareRequest\x12\x1e\n\x1aPOWERSHARE_REQUEST_UNKNOWN\x10\x00\x12\x1a\n\x16POWERSHARE_REQUEST_OFF\x10\x01\x12\x19\n\x15POWERSHARE_REQUEST_ON\x10\x02"&\n\x18SetTentModeRequestAction\x12\n\n\x02on\x18\x01 \x01(\x08"\xf4\x01\n\x19SetZoneLightRequestAction\x12Q\n\x12zone_light_request\x18\x01 \x01(\x0e25.CarServer.SetZoneLightRequestAction.ZoneLightRequest"\x83\x01\n\x10ZoneLightRequest\x12\x1a\n\x16ZONE_LIGHT_REQUEST_OFF\x10\x00\x12\x1a\n\x16ZONE_LIGHT_REQUEST_LOW\x10\x01\x12\x1a\n\x16ZONE_LIGHT_REQUEST_MED\x10\x02\x12\x1b\n\x17ZONE_LIGHT_REQUEST_HIGH\x10\x03"9\n\x1bSetLightbarBrightnessAction\x12\x1a\n\x12brightness_request\x18\x01 \x01(\r"7\n\x17SetLightbarMiddleAction\x12\x1c\n\x14middle_light_request\x18\x01 \x01(\x08"6\n\x16SetLightbarDitchAction\x12\x1c\n\x14ditch_lights_request\x18\x01 \x01(\x08"\x13\n\x11GetMessagesAction"\xa7\x01\n\x17TeslaAuthResponseAction\x12\x11\n\tclient_id\x18\x01 \x01(\t\x12\r\n\x05scope\x18\x02 \x01(\t\x12\x14\n\x0caccess_token\x18\x03 \x01(\t\x12\x15\n\rrefresh_token\x18\x04 \x01(\t\x12\x18\n\x10expiry_timestamp\x18\x05 \x01(\x03\x12\r\n\x05error\x18\x06 \x01(\t\x12\x14\n\x0cscoped_token\x18\x07 \x01(\t"\xc0\x02\n\x1fNavigationGpsDestinationRequest\x12\x0b\n\x03lat\x18\x01 \x01(\x01\x12\x0b\n\x03lon\x18\x02 \x01(\x01\x12\x13\n\x0bdestination\x18\x03 \x01(\t\x12L\n\x05order\x18\x04 \x01(\x0e2=.CarServer.NavigationGpsDestinationRequest.RemoteNavTripOrder"\x9f\x01\n\x12RemoteNavTripOrder\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_UNKNOWN\x10\x00\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_REPLACE\x10\x01\x12!\n\x1dREMOTE_NAV_TRIP_ORDER_PREPEND\x10\x02\x12 \n\x1cREMOTE_NAV_TRIP_ORDER_APPEND\x10\x03"-\n\x1eParentalControlsClearPinAction\x12\x0b\n\x03pin\x18\x01 \x01(\t"%\n#ParentalControlsClearPinAdminAction"7\n\x16ParentalControlsAction\x12\x10\n\x08activate\x18\x01 \x01(\x08\x12\x0b\n\x03pin\x18\x02 \x01(\t"\xad\x02\n$ParentalControlsEnableSettingsAction\x12Z\n\x07setting\x18\x01 \x01(\x0e2I.CarServer.ParentalControlsEnableSettingsAction.ParentalControlsSetting_E\x12\x0e\n\x06enable\x18\x02 \x01(\x08"\x98\x01\n\x19ParentalControlsSetting_E\x12\x0e\n\nSpeedLimit\x10\x00\x12\x10\n\x0cAcceleration\x10\x01\x12\x12\n\x0eSafetyFeatures\x10\x02\x12\n\n\x06Curfew\x10\x03\x12\x12\n\x0eBrowserBlocked\x10\x04\x12\x12\n\x0eTheaterBlocked\x10\x05\x12\x11\n\rArcadeBlocked\x10\x06"8\n#ParentalControlsSetSpeedLimitAction\x12\x11\n\tlimit_mph\x18\x01 \x01(\x01"\x15\n\x13CancelSohTestAction"\x15\n\x13StopLightShowAction"c\n\x14StartLightShowAction\x12\x12\n\nshow_index\x18\x01 \x01(\x05\x12\x12\n\nstart_time\x18\x02 \x01(\x03\x12\x0e\n\x06volume\x18\x03 \x01(\x02\x12\x13\n\x0bdance_moves\x18\x04 \x01(\x08"\xc7\x02\n\x18SetSuspensionLevelAction\x12M\n\x10suspension_level\x18\x01 \x01(\x0e23.CarServer.SetSuspensionLevelAction.SuspensionLevel"\xdb\x01\n\x0fSuspensionLevel\x12\x1c\n\x18SUSPENSION_LEVEL_INVALID\x10\x00\x12\x1a\n\x16SUSPENSION_LEVEL_ENTRY\x10\x01\x12\x18\n\x14SUSPENSION_LEVEL_LOW\x10\x02\x12\x1b\n\x17SUSPENSION_LEVEL_MEDIUM\x10\x03\x12\x19\n\x15SUSPENSION_LEVEL_HIGH\x10\x04\x12\x1e\n\x1aSUSPENSION_LEVEL_VERY_HIGH\x10\x05\x12\x1c\n\x18SUSPENSION_LEVEL_EXTRACT\x10\x06"2\n\x17SetDischargeLimitAction\x12\x17\n\x0fdischarge_limit\x18\x01 \x01(\x05"/\n\x15SetLowPowerModeAction\x12\x16\n\x0elow_power_mode\x18\x01 \x01(\x08"\x81\x01\n\x18SetTemperatureUnitAction\x126\n\x04unit\x18\x01 \x01(\x0e2(.CarServer.SetTemperatureUnitAction.Unit"-\n\x04Unit\x12\x13\n\x0fUNIT_FAHRENHEIT\x10\x00\x12\x10\n\x0cUNIT_CELSIUS\x10\x01"y\n\x15SetDistanceUnitAction\x123\n\x04unit\x18\x01 \x01(\x0e2%.CarServer.SetDistanceUnitAction.Unit"+\n\x04Unit\x12\x0e\n\nUNIT_MILES\x10\x00\x12\x13\n\x0fUNIT_KILOMETERS\x10\x01"\x8c\x01\n\x1aSetTimeDisplayFormatAction\x12<\n\x06format\x18\x01 \x01(\x0e2,.CarServer.SetTimeDisplayFormatAction.Format"0\n\x06Format\x12\x12\n\x0eFORMAT_12_HOUR\x10\x00\x12\x12\n\x0eFORMAT_24_HOUR\x10\x01"x\n\x19SetTirePressureUnitAction\x127\n\x04unit\x18\x01 \x01(\x0e2).CarServer.SetTirePressureUnitAction.Unit""\n\x04Unit\x12\x0c\n\x08UNIT_PSI\x10\x00\x12\x0c\n\x08UNIT_BAR\x10\x01"\x94\x01\n\x1cSetEnergyDisplayFormatAction\x12>\n\x06format\x18\x01 \x01(\x0e2..CarServer.SetEnergyDisplayFormatAction.Format"4\n\x06Format\x12\x15\n\x11FORMAT_PERCENTAGE\x10\x00\x12\x13\n\x0fFORMAT_DISTANCE\x10\x01"D\n\x1fSetKeepAccessoryPowerModeAction\x12!\n\x19keep_accessory_power_mode\x18\x01 \x01(\x08"\x8d\x01\n+SetupCloudProfileWithLocalProfileUuidAction\x12\x18\n\x10cloud_vault_uuid\x18\x01 \x01(\t\x12\x1a\n\x12local_profile_uuid\x18\x02 \x01(\t\x12(\n delete_local_profile_after_setup\x18\x03 \x01(\x08"8\n"GetLocalProfilesForVaultUuidAction\x12\x12\n\nvault_uuid\x18\x01 \x01(\t"\x15\n\x13FetchKeysInfoAction"0\n\x18DeleteDashcamClipsAction\x12\x14\n\x0cdelete_clips\x18\x01 \x01(\x08"%\n\x0fFormatUSBAction\x12\x12\n\nformat_usb\x18\x01 \x01(\x08"\'\n\rBandwidthTest\x12\x16\n\x0erequested_size\x18\x01 \x01(\r"\x98\x01\n\x14PhoneUnitPreferences\x12<\n\rdistance_unit\x18\x01 \x01(\x0e2%.CarServer.SetDistanceUnitAction.Unit\x12B\n\x10temperature_unit\x18\x02 \x01(\x0e2(.CarServer.SetTemperatureUnitAction.Unit"\xdf\x01\n SetPhoneSettingPreferencesAction\x12G\n\tfont_size\x18\x01 \x01(\x0e24.CarServer.SetPhoneSettingPreferencesAction.FontSize\x129\n\x10unit_preferences\x18\x03 \x01(\x0b2\x1f.CarServer.PhoneUnitPreferences"7\n\x08FontSize\x12\x16\n\x12FONT_SIZE_STANDARD\x10\x00\x12\x13\n\x0fFONT_SIZE_LARGE\x10\x01"\x1f\n\x1dCancelVehicleDataSubscription*F\n\x11OperationStatus_E\x12\x16\n\x12OPERATIONSTATUS_OK\x10\x00\x12\x19\n\x15OPERATIONSTATUS_ERROR\x10\x01Bn\n$com.tesla.generated.carserver.serverZFgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/carserverb\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'car_server_pb2', _globals) @@ -21,8 +21,8 @@ _globals['DESCRIPTOR']._serialized_options = b'\n$com.tesla.generated.carserver.serverZFgithub.com/teslamotors/vehicle-command/pkg/protocol/protobuf/carserver' _globals['_VEHICLEDATAACK'].fields_by_name['decryption_error_field']._loaded_options = None _globals['_VEHICLEDATAACK'].fields_by_name['decryption_error_field']._serialized_options = b'\x10\x01' - _globals['_OPERATIONSTATUS_E']._serialized_start = 33221 - _globals['_OPERATIONSTATUS_E']._serialized_end = 33291 + _globals['_OPERATIONSTATUS_E']._serialized_start = 33227 + _globals['_OPERATIONSTATUS_E']._serialized_end = 33297 _globals['_ACTION']._serialized_start = 136 _globals['_ACTION']._serialized_end = 215 _globals['_VEHICLEACTION']._serialized_start = 218 @@ -266,208 +266,208 @@ _globals['_NAVIGATIONREQUEST']._serialized_start = 22688 _globals['_NAVIGATIONREQUEST']._serialized_end = 22743 _globals['_NAVIGATIONSUPERCHARGERREQUEST']._serialized_start = 22746 - _globals['_NAVIGATIONSUPERCHARGERREQUEST']._serialized_end = 23044 - _globals['_NAVIGATIONSUPERCHARGERREQUEST_REMOTENAVTRIPORDER']._serialized_start = 22872 - _globals['_NAVIGATIONSUPERCHARGERREQUEST_REMOTENAVTRIPORDER']._serialized_end = 23031 - _globals['_UISETUPCOMINGCALENDARENTRIES']._serialized_start = 23046 - _globals['_UISETUPCOMINGCALENDARENTRIES']._serialized_end = 23099 - _globals['_VEHICLEDATASUBSCRIPTION']._serialized_start = 23102 - _globals['_VEHICLEDATASUBSCRIPTION']._serialized_end = 23951 - _globals['_VEHICLEDATASUBSCRIPTION_PIIKEYREQUEST']._serialized_start = 23905 - _globals['_VEHICLEDATASUBSCRIPTION_PIIKEYREQUEST']._serialized_end = 23951 - _globals['_VEHICLEDATAACK']._serialized_start = 23954 - _globals['_VEHICLEDATAACK']._serialized_end = 24833 - _globals['_VITALSSUBSCRIPTION']._serialized_start = 24835 - _globals['_VITALSSUBSCRIPTION']._serialized_end = 24875 - _globals['_VITALSACK']._serialized_start = 24877 - _globals['_VITALSACK']._serialized_end = 24888 - _globals['_DASHCAMSAVECLIPACTION']._serialized_start = 24890 - _globals['_DASHCAMSAVECLIPACTION']._serialized_end = 24913 - _globals['_PIIKEYREQUEST']._serialized_start = 24915 - _globals['_PIIKEYREQUEST']._serialized_end = 25017 - _globals['_PSEUDONYMSYNCREQUEST']._serialized_start = 25019 - _globals['_PSEUDONYMSYNCREQUEST']._serialized_end = 25078 - _globals['_NAVIGATIONGPSREQUEST']._serialized_start = 25081 - _globals['_NAVIGATIONGPSREQUEST']._serialized_end = 25358 - _globals['_NAVIGATIONGPSREQUEST_REMOTENAVTRIPORDER']._serialized_start = 22872 - _globals['_NAVIGATIONGPSREQUEST_REMOTENAVTRIPORDER']._serialized_end = 23031 - _globals['_SETRATETARIFFREQUEST']._serialized_start = 25361 - _globals['_SETRATETARIFFREQUEST']._serialized_end = 26913 - _globals['_SETRATETARIFFREQUEST_TOUPERIOD']._serialized_start = 25500 - _globals['_SETRATETARIFFREQUEST_TOUPERIOD']._serialized_end = 25637 - _globals['_SETRATETARIFFREQUEST_TOUPERIODS']._serialized_start = 25640 - _globals['_SETRATETARIFFREQUEST_TOUPERIODS']._serialized_end = 25905 - _globals['_SETRATETARIFFREQUEST_SEASON']._serialized_start = 25908 - _globals['_SETRATETARIFFREQUEST_SEASON']._serialized_end = 26053 - _globals['_SETRATETARIFFREQUEST_SEASONS']._serialized_start = 26056 - _globals['_SETRATETARIFFREQUEST_SEASONS']._serialized_end = 26348 - _globals['_SETRATETARIFFREQUEST_FIXEDCHARGE']._serialized_start = 26350 - _globals['_SETRATETARIFFREQUEST_FIXEDCHARGE']._serialized_end = 26376 - _globals['_SETRATETARIFFREQUEST_RATEBAND']._serialized_start = 26378 - _globals['_SETRATETARIFFREQUEST_RATEBAND']._serialized_end = 26482 - _globals['_SETRATETARIFFREQUEST_CHARGES']._serialized_start = 26485 - _globals['_SETRATETARIFFREQUEST_CHARGES']._serialized_end = 26845 - _globals['_SETRATETARIFFREQUEST_TARIFF']._serialized_start = 26847 - _globals['_SETRATETARIFFREQUEST_TARIFF']._serialized_end = 26913 - _globals['_GETRATETARIFFREQUEST']._serialized_start = 26915 - _globals['_GETRATETARIFFREQUEST']._serialized_end = 26937 - _globals['_VIDEOREQUESTACTION']._serialized_start = 26939 - _globals['_VIDEOREQUESTACTION']._serialized_end = 26972 - _globals['_TAKEDRIVENOTEACTION']._serialized_start = 26974 - _globals['_TAKEDRIVENOTEACTION']._serialized_end = 27009 - _globals['_BLUETOOTHCLASSICPAIRINGREQUEST']._serialized_start = 27011 - _globals['_BLUETOOTHCLASSICPAIRINGREQUEST']._serialized_end = 27083 - _globals['_ADDMANAGEDCHARGINGSITEREQUEST']._serialized_start = 27085 - _globals['_ADDMANAGEDCHARGINGSITEREQUEST']._serialized_end = 27162 - _globals['_MANAGEDCHARGINGSITE']._serialized_start = 27164 - _globals['_MANAGEDCHARGINGSITE']._serialized_end = 27288 - _globals['_MANAGERTYPE']._serialized_start = 27290 - _globals['_MANAGERTYPE']._serialized_end = 27355 - _globals['_SITECONTROLLER']._serialized_start = 27357 - _globals['_SITECONTROLLER']._serialized_end = 27373 - _globals['_REMOVEMANAGEDCHARGINGSITEREQUEST']._serialized_start = 27375 - _globals['_REMOVEMANAGEDCHARGINGSITEREQUEST']._serialized_end = 27429 - _globals['_NAVIGATIONROUTEACTION']._serialized_start = 27431 - _globals['_NAVIGATIONROUTEACTION']._serialized_end = 27454 - _globals['_AUTOSTWHEATACTION']._serialized_start = 27456 - _globals['_AUTOSTWHEATACTION']._serialized_end = 27487 - _globals['_STWHEATLEVELACTION']._serialized_start = 27489 - _globals['_STWHEATLEVELACTION']._serialized_end = 27558 - _globals['_GETMANAGEDCHARGINGSITESREQUEST']._serialized_start = 27560 - _globals['_GETMANAGEDCHARGINGSITESREQUEST']._serialized_end = 27592 - _globals['_UPDATECHARGEONSOLARFEATUREREQUEST']._serialized_start = 27594 - _globals['_UPDATECHARGEONSOLARFEATUREREQUEST']._serialized_end = 27687 - _globals['_GETCHARGEONSOLARFEATUREREQUEST']._serialized_start = 27689 - _globals['_GETCHARGEONSOLARFEATUREREQUEST']._serialized_end = 27721 - _globals['_GETCHARGEONSOLARFEATURERESPONSE']._serialized_start = 27723 - _globals['_GETCHARGEONSOLARFEATURERESPONSE']._serialized_end = 27814 - _globals['_CHARGEONSOLARFEATURE']._serialized_start = 27816 - _globals['_CHARGEONSOLARFEATURE']._serialized_end = 27911 - _globals['_DRIVINGCLEARSPEEDLIMITPINADMINACTION']._serialized_start = 27913 - _globals['_DRIVINGCLEARSPEEDLIMITPINADMINACTION']._serialized_end = 27951 - _globals['_SETOUTLETSONOFFACTION']._serialized_start = 27954 - _globals['_SETOUTLETSONOFFACTION']._serialized_end = 28178 - _globals['_SETOUTLETSONOFFACTION_OUTLETREQUEST']._serialized_start = 28051 - _globals['_SETOUTLETSONOFFACTION_OUTLETREQUEST']._serialized_end = 28178 - _globals['_SETOUTLETTIMERACTION']._serialized_start = 28180 - _globals['_SETOUTLETTIMERACTION']._serialized_end = 28223 - _globals['_SETOUTLETSOCLIMITACTION']._serialized_start = 28225 - _globals['_SETOUTLETSOCLIMITACTION']._serialized_end = 28267 - _globals['_SETPOWERFEEDONOFFACTION']._serialized_start = 28270 - _globals['_SETPOWERFEEDONOFFACTION']._serialized_end = 28561 - _globals['_SETPOWERFEEDONOFFACTION_POWERFEEDREQUEST']._serialized_start = 28379 - _globals['_SETPOWERFEEDONOFFACTION_POWERFEEDREQUEST']._serialized_end = 28561 - _globals['_SETPOWERFEEDTIMERACTION']._serialized_start = 28563 - _globals['_SETPOWERFEEDTIMERACTION']._serialized_end = 28609 - _globals['_SETPOWERFEEDSOCLIMITACTION']._serialized_start = 28611 - _globals['_SETPOWERFEEDSOCLIMITACTION']._serialized_end = 28656 - _globals['_SETTRAILERLIGHTTESTSTARTSTOPACTION']._serialized_start = 28658 - _globals['_SETTRAILERLIGHTTESTSTARTSTOPACTION']._serialized_end = 28714 - _globals['_SETTRUCKBEDLIGHTAUTOSTATEACTION']._serialized_start = 28716 - _globals['_SETTRUCKBEDLIGHTAUTOSTATEACTION']._serialized_end = 28770 - _globals['_SETTRUCKBEDLIGHTBRIGHTNESSACTION']._serialized_start = 28772 - _globals['_SETTRUCKBEDLIGHTBRIGHTNESSACTION']._serialized_end = 28826 - _globals['_VEHICLECONTROLRESETPINTODRIVEADMINACTION']._serialized_start = 28828 - _globals['_VEHICLECONTROLRESETPINTODRIVEADMINACTION']._serialized_end = 28870 - _globals['_NAVIGATIONWAYPOINTSREQUEST']._serialized_start = 28873 - _globals['_NAVIGATIONWAYPOINTSREQUEST']._serialized_end = 29085 - _globals['_NAVIGATIONWAYPOINTSREQUEST_TRIPPLANOPTIONS']._serialized_start = 29004 - _globals['_NAVIGATIONWAYPOINTSREQUEST_TRIPPLANOPTIONS']._serialized_end = 29085 - _globals['_SETPOWERSHAREFEATUREACTION']._serialized_start = 29088 - _globals['_SETPOWERSHAREFEATUREACTION']._serialized_end = 29356 - _globals['_SETPOWERSHAREFEATUREACTION_POWERSHAREFEATUREREQUEST']._serialized_start = 29219 - _globals['_SETPOWERSHAREFEATUREACTION_POWERSHAREFEATUREREQUEST']._serialized_end = 29356 - _globals['_SETPOWERSHAREDISCHARGELIMITACTION']._serialized_start = 29358 - _globals['_SETPOWERSHAREDISCHARGELIMITACTION']._serialized_end = 29429 - _globals['_SETPOWERSHAREREQUESTACTION']._serialized_start = 29432 - _globals['_SETPOWERSHAREREQUESTACTION']._serialized_end = 29653 - _globals['_SETPOWERSHAREREQUESTACTION_POWERSHAREREQUEST']._serialized_start = 29547 - _globals['_SETPOWERSHAREREQUESTACTION_POWERSHAREREQUEST']._serialized_end = 29653 - _globals['_SETTENTMODEREQUESTACTION']._serialized_start = 29655 - _globals['_SETTENTMODEREQUESTACTION']._serialized_end = 29693 - _globals['_SETZONELIGHTREQUESTACTION']._serialized_start = 29696 - _globals['_SETZONELIGHTREQUESTACTION']._serialized_end = 29940 - _globals['_SETZONELIGHTREQUESTACTION_ZONELIGHTREQUEST']._serialized_start = 29809 - _globals['_SETZONELIGHTREQUESTACTION_ZONELIGHTREQUEST']._serialized_end = 29940 - _globals['_SETLIGHTBARBRIGHTNESSACTION']._serialized_start = 29942 - _globals['_SETLIGHTBARBRIGHTNESSACTION']._serialized_end = 29999 - _globals['_SETLIGHTBARMIDDLEACTION']._serialized_start = 30001 - _globals['_SETLIGHTBARMIDDLEACTION']._serialized_end = 30056 - _globals['_SETLIGHTBARDITCHACTION']._serialized_start = 30058 - _globals['_SETLIGHTBARDITCHACTION']._serialized_end = 30112 - _globals['_GETMESSAGESACTION']._serialized_start = 30114 - _globals['_GETMESSAGESACTION']._serialized_end = 30133 - _globals['_TESLAAUTHRESPONSEACTION']._serialized_start = 30136 - _globals['_TESLAAUTHRESPONSEACTION']._serialized_end = 30303 - _globals['_NAVIGATIONGPSDESTINATIONREQUEST']._serialized_start = 30306 - _globals['_NAVIGATIONGPSDESTINATIONREQUEST']._serialized_end = 30626 - _globals['_NAVIGATIONGPSDESTINATIONREQUEST_REMOTENAVTRIPORDER']._serialized_start = 22872 - _globals['_NAVIGATIONGPSDESTINATIONREQUEST_REMOTENAVTRIPORDER']._serialized_end = 23031 - _globals['_PARENTALCONTROLSCLEARPINACTION']._serialized_start = 30628 - _globals['_PARENTALCONTROLSCLEARPINACTION']._serialized_end = 30673 - _globals['_PARENTALCONTROLSCLEARPINADMINACTION']._serialized_start = 30675 - _globals['_PARENTALCONTROLSCLEARPINADMINACTION']._serialized_end = 30712 - _globals['_PARENTALCONTROLSACTION']._serialized_start = 30714 - _globals['_PARENTALCONTROLSACTION']._serialized_end = 30769 - _globals['_PARENTALCONTROLSENABLESETTINGSACTION']._serialized_start = 30772 - _globals['_PARENTALCONTROLSENABLESETTINGSACTION']._serialized_end = 31073 - _globals['_PARENTALCONTROLSENABLESETTINGSACTION_PARENTALCONTROLSSETTING_E']._serialized_start = 30921 - _globals['_PARENTALCONTROLSENABLESETTINGSACTION_PARENTALCONTROLSSETTING_E']._serialized_end = 31073 - _globals['_PARENTALCONTROLSSETSPEEDLIMITACTION']._serialized_start = 31075 - _globals['_PARENTALCONTROLSSETSPEEDLIMITACTION']._serialized_end = 31131 - _globals['_CANCELSOHTESTACTION']._serialized_start = 31133 - _globals['_CANCELSOHTESTACTION']._serialized_end = 31154 - _globals['_STOPLIGHTSHOWACTION']._serialized_start = 31156 - _globals['_STOPLIGHTSHOWACTION']._serialized_end = 31177 - _globals['_STARTLIGHTSHOWACTION']._serialized_start = 31179 - _globals['_STARTLIGHTSHOWACTION']._serialized_end = 31278 - _globals['_SETSUSPENSIONLEVELACTION']._serialized_start = 31281 - _globals['_SETSUSPENSIONLEVELACTION']._serialized_end = 31608 - _globals['_SETSUSPENSIONLEVELACTION_SUSPENSIONLEVEL']._serialized_start = 31389 - _globals['_SETSUSPENSIONLEVELACTION_SUSPENSIONLEVEL']._serialized_end = 31608 - _globals['_SETDISCHARGELIMITACTION']._serialized_start = 31610 - _globals['_SETDISCHARGELIMITACTION']._serialized_end = 31660 - _globals['_SETLOWPOWERMODEACTION']._serialized_start = 31662 - _globals['_SETLOWPOWERMODEACTION']._serialized_end = 31709 - _globals['_SETTEMPERATUREUNITACTION']._serialized_start = 31712 - _globals['_SETTEMPERATUREUNITACTION']._serialized_end = 31841 - _globals['_SETTEMPERATUREUNITACTION_UNIT']._serialized_start = 31796 - _globals['_SETTEMPERATUREUNITACTION_UNIT']._serialized_end = 31841 - _globals['_SETDISTANCEUNITACTION']._serialized_start = 31843 - _globals['_SETDISTANCEUNITACTION']._serialized_end = 31964 - _globals['_SETDISTANCEUNITACTION_UNIT']._serialized_start = 31921 - _globals['_SETDISTANCEUNITACTION_UNIT']._serialized_end = 31964 - _globals['_SETTIMEDISPLAYFORMATACTION']._serialized_start = 31967 - _globals['_SETTIMEDISPLAYFORMATACTION']._serialized_end = 32107 - _globals['_SETTIMEDISPLAYFORMATACTION_FORMAT']._serialized_start = 32059 - _globals['_SETTIMEDISPLAYFORMATACTION_FORMAT']._serialized_end = 32107 - _globals['_SETTIREPRESSUREUNITACTION']._serialized_start = 32109 - _globals['_SETTIREPRESSUREUNITACTION']._serialized_end = 32229 - _globals['_SETTIREPRESSUREUNITACTION_UNIT']._serialized_start = 32195 - _globals['_SETTIREPRESSUREUNITACTION_UNIT']._serialized_end = 32229 - _globals['_SETENERGYDISPLAYFORMATACTION']._serialized_start = 32232 - _globals['_SETENERGYDISPLAYFORMATACTION']._serialized_end = 32380 - _globals['_SETENERGYDISPLAYFORMATACTION_FORMAT']._serialized_start = 32328 - _globals['_SETENERGYDISPLAYFORMATACTION_FORMAT']._serialized_end = 32380 - _globals['_SETKEEPACCESSORYPOWERMODEACTION']._serialized_start = 32382 - _globals['_SETKEEPACCESSORYPOWERMODEACTION']._serialized_end = 32450 - _globals['_SETUPCLOUDPROFILEWITHLOCALPROFILEUUIDACTION']._serialized_start = 32453 - _globals['_SETUPCLOUDPROFILEWITHLOCALPROFILEUUIDACTION']._serialized_end = 32594 - _globals['_GETLOCALPROFILESFORVAULTUUIDACTION']._serialized_start = 32596 - _globals['_GETLOCALPROFILESFORVAULTUUIDACTION']._serialized_end = 32652 - _globals['_FETCHKEYSINFOACTION']._serialized_start = 32654 - _globals['_FETCHKEYSINFOACTION']._serialized_end = 32675 - _globals['_DELETEDASHCAMCLIPSACTION']._serialized_start = 32677 - _globals['_DELETEDASHCAMCLIPSACTION']._serialized_end = 32725 - _globals['_FORMATUSBACTION']._serialized_start = 32727 - _globals['_FORMATUSBACTION']._serialized_end = 32764 - _globals['_BANDWIDTHTEST']._serialized_start = 32766 - _globals['_BANDWIDTHTEST']._serialized_end = 32805 - _globals['_PHONEUNITPREFERENCES']._serialized_start = 32808 - _globals['_PHONEUNITPREFERENCES']._serialized_end = 32960 - _globals['_SETPHONESETTINGPREFERENCESACTION']._serialized_start = 32963 - _globals['_SETPHONESETTINGPREFERENCESACTION']._serialized_end = 33186 - _globals['_SETPHONESETTINGPREFERENCESACTION_FONTSIZE']._serialized_start = 33131 - _globals['_SETPHONESETTINGPREFERENCESACTION_FONTSIZE']._serialized_end = 33186 - _globals['_CANCELVEHICLEDATASUBSCRIPTION']._serialized_start = 33188 - _globals['_CANCELVEHICLEDATASUBSCRIPTION']._serialized_end = 33219 \ No newline at end of file + _globals['_NAVIGATIONSUPERCHARGERREQUEST']._serialized_end = 23050 + _globals['_NAVIGATIONSUPERCHARGERREQUEST_REMOTENAVTRIPORDER']._serialized_start = 22884 + _globals['_NAVIGATIONSUPERCHARGERREQUEST_REMOTENAVTRIPORDER']._serialized_end = 23043 + _globals['_UISETUPCOMINGCALENDARENTRIES']._serialized_start = 23052 + _globals['_UISETUPCOMINGCALENDARENTRIES']._serialized_end = 23105 + _globals['_VEHICLEDATASUBSCRIPTION']._serialized_start = 23108 + _globals['_VEHICLEDATASUBSCRIPTION']._serialized_end = 23957 + _globals['_VEHICLEDATASUBSCRIPTION_PIIKEYREQUEST']._serialized_start = 23911 + _globals['_VEHICLEDATASUBSCRIPTION_PIIKEYREQUEST']._serialized_end = 23957 + _globals['_VEHICLEDATAACK']._serialized_start = 23960 + _globals['_VEHICLEDATAACK']._serialized_end = 24839 + _globals['_VITALSSUBSCRIPTION']._serialized_start = 24841 + _globals['_VITALSSUBSCRIPTION']._serialized_end = 24881 + _globals['_VITALSACK']._serialized_start = 24883 + _globals['_VITALSACK']._serialized_end = 24894 + _globals['_DASHCAMSAVECLIPACTION']._serialized_start = 24896 + _globals['_DASHCAMSAVECLIPACTION']._serialized_end = 24919 + _globals['_PIIKEYREQUEST']._serialized_start = 24921 + _globals['_PIIKEYREQUEST']._serialized_end = 25023 + _globals['_PSEUDONYMSYNCREQUEST']._serialized_start = 25025 + _globals['_PSEUDONYMSYNCREQUEST']._serialized_end = 25084 + _globals['_NAVIGATIONGPSREQUEST']._serialized_start = 25087 + _globals['_NAVIGATIONGPSREQUEST']._serialized_end = 25364 + _globals['_NAVIGATIONGPSREQUEST_REMOTENAVTRIPORDER']._serialized_start = 22884 + _globals['_NAVIGATIONGPSREQUEST_REMOTENAVTRIPORDER']._serialized_end = 23043 + _globals['_SETRATETARIFFREQUEST']._serialized_start = 25367 + _globals['_SETRATETARIFFREQUEST']._serialized_end = 26919 + _globals['_SETRATETARIFFREQUEST_TOUPERIOD']._serialized_start = 25506 + _globals['_SETRATETARIFFREQUEST_TOUPERIOD']._serialized_end = 25643 + _globals['_SETRATETARIFFREQUEST_TOUPERIODS']._serialized_start = 25646 + _globals['_SETRATETARIFFREQUEST_TOUPERIODS']._serialized_end = 25911 + _globals['_SETRATETARIFFREQUEST_SEASON']._serialized_start = 25914 + _globals['_SETRATETARIFFREQUEST_SEASON']._serialized_end = 26059 + _globals['_SETRATETARIFFREQUEST_SEASONS']._serialized_start = 26062 + _globals['_SETRATETARIFFREQUEST_SEASONS']._serialized_end = 26354 + _globals['_SETRATETARIFFREQUEST_FIXEDCHARGE']._serialized_start = 26356 + _globals['_SETRATETARIFFREQUEST_FIXEDCHARGE']._serialized_end = 26382 + _globals['_SETRATETARIFFREQUEST_RATEBAND']._serialized_start = 26384 + _globals['_SETRATETARIFFREQUEST_RATEBAND']._serialized_end = 26488 + _globals['_SETRATETARIFFREQUEST_CHARGES']._serialized_start = 26491 + _globals['_SETRATETARIFFREQUEST_CHARGES']._serialized_end = 26851 + _globals['_SETRATETARIFFREQUEST_TARIFF']._serialized_start = 26853 + _globals['_SETRATETARIFFREQUEST_TARIFF']._serialized_end = 26919 + _globals['_GETRATETARIFFREQUEST']._serialized_start = 26921 + _globals['_GETRATETARIFFREQUEST']._serialized_end = 26943 + _globals['_VIDEOREQUESTACTION']._serialized_start = 26945 + _globals['_VIDEOREQUESTACTION']._serialized_end = 26978 + _globals['_TAKEDRIVENOTEACTION']._serialized_start = 26980 + _globals['_TAKEDRIVENOTEACTION']._serialized_end = 27015 + _globals['_BLUETOOTHCLASSICPAIRINGREQUEST']._serialized_start = 27017 + _globals['_BLUETOOTHCLASSICPAIRINGREQUEST']._serialized_end = 27089 + _globals['_ADDMANAGEDCHARGINGSITEREQUEST']._serialized_start = 27091 + _globals['_ADDMANAGEDCHARGINGSITEREQUEST']._serialized_end = 27168 + _globals['_MANAGEDCHARGINGSITE']._serialized_start = 27170 + _globals['_MANAGEDCHARGINGSITE']._serialized_end = 27294 + _globals['_MANAGERTYPE']._serialized_start = 27296 + _globals['_MANAGERTYPE']._serialized_end = 27361 + _globals['_SITECONTROLLER']._serialized_start = 27363 + _globals['_SITECONTROLLER']._serialized_end = 27379 + _globals['_REMOVEMANAGEDCHARGINGSITEREQUEST']._serialized_start = 27381 + _globals['_REMOVEMANAGEDCHARGINGSITEREQUEST']._serialized_end = 27435 + _globals['_NAVIGATIONROUTEACTION']._serialized_start = 27437 + _globals['_NAVIGATIONROUTEACTION']._serialized_end = 27460 + _globals['_AUTOSTWHEATACTION']._serialized_start = 27462 + _globals['_AUTOSTWHEATACTION']._serialized_end = 27493 + _globals['_STWHEATLEVELACTION']._serialized_start = 27495 + _globals['_STWHEATLEVELACTION']._serialized_end = 27564 + _globals['_GETMANAGEDCHARGINGSITESREQUEST']._serialized_start = 27566 + _globals['_GETMANAGEDCHARGINGSITESREQUEST']._serialized_end = 27598 + _globals['_UPDATECHARGEONSOLARFEATUREREQUEST']._serialized_start = 27600 + _globals['_UPDATECHARGEONSOLARFEATUREREQUEST']._serialized_end = 27693 + _globals['_GETCHARGEONSOLARFEATUREREQUEST']._serialized_start = 27695 + _globals['_GETCHARGEONSOLARFEATUREREQUEST']._serialized_end = 27727 + _globals['_GETCHARGEONSOLARFEATURERESPONSE']._serialized_start = 27729 + _globals['_GETCHARGEONSOLARFEATURERESPONSE']._serialized_end = 27820 + _globals['_CHARGEONSOLARFEATURE']._serialized_start = 27822 + _globals['_CHARGEONSOLARFEATURE']._serialized_end = 27917 + _globals['_DRIVINGCLEARSPEEDLIMITPINADMINACTION']._serialized_start = 27919 + _globals['_DRIVINGCLEARSPEEDLIMITPINADMINACTION']._serialized_end = 27957 + _globals['_SETOUTLETSONOFFACTION']._serialized_start = 27960 + _globals['_SETOUTLETSONOFFACTION']._serialized_end = 28184 + _globals['_SETOUTLETSONOFFACTION_OUTLETREQUEST']._serialized_start = 28057 + _globals['_SETOUTLETSONOFFACTION_OUTLETREQUEST']._serialized_end = 28184 + _globals['_SETOUTLETTIMERACTION']._serialized_start = 28186 + _globals['_SETOUTLETTIMERACTION']._serialized_end = 28229 + _globals['_SETOUTLETSOCLIMITACTION']._serialized_start = 28231 + _globals['_SETOUTLETSOCLIMITACTION']._serialized_end = 28273 + _globals['_SETPOWERFEEDONOFFACTION']._serialized_start = 28276 + _globals['_SETPOWERFEEDONOFFACTION']._serialized_end = 28567 + _globals['_SETPOWERFEEDONOFFACTION_POWERFEEDREQUEST']._serialized_start = 28385 + _globals['_SETPOWERFEEDONOFFACTION_POWERFEEDREQUEST']._serialized_end = 28567 + _globals['_SETPOWERFEEDTIMERACTION']._serialized_start = 28569 + _globals['_SETPOWERFEEDTIMERACTION']._serialized_end = 28615 + _globals['_SETPOWERFEEDSOCLIMITACTION']._serialized_start = 28617 + _globals['_SETPOWERFEEDSOCLIMITACTION']._serialized_end = 28662 + _globals['_SETTRAILERLIGHTTESTSTARTSTOPACTION']._serialized_start = 28664 + _globals['_SETTRAILERLIGHTTESTSTARTSTOPACTION']._serialized_end = 28720 + _globals['_SETTRUCKBEDLIGHTAUTOSTATEACTION']._serialized_start = 28722 + _globals['_SETTRUCKBEDLIGHTAUTOSTATEACTION']._serialized_end = 28776 + _globals['_SETTRUCKBEDLIGHTBRIGHTNESSACTION']._serialized_start = 28778 + _globals['_SETTRUCKBEDLIGHTBRIGHTNESSACTION']._serialized_end = 28832 + _globals['_VEHICLECONTROLRESETPINTODRIVEADMINACTION']._serialized_start = 28834 + _globals['_VEHICLECONTROLRESETPINTODRIVEADMINACTION']._serialized_end = 28876 + _globals['_NAVIGATIONWAYPOINTSREQUEST']._serialized_start = 28879 + _globals['_NAVIGATIONWAYPOINTSREQUEST']._serialized_end = 29091 + _globals['_NAVIGATIONWAYPOINTSREQUEST_TRIPPLANOPTIONS']._serialized_start = 29010 + _globals['_NAVIGATIONWAYPOINTSREQUEST_TRIPPLANOPTIONS']._serialized_end = 29091 + _globals['_SETPOWERSHAREFEATUREACTION']._serialized_start = 29094 + _globals['_SETPOWERSHAREFEATUREACTION']._serialized_end = 29362 + _globals['_SETPOWERSHAREFEATUREACTION_POWERSHAREFEATUREREQUEST']._serialized_start = 29225 + _globals['_SETPOWERSHAREFEATUREACTION_POWERSHAREFEATUREREQUEST']._serialized_end = 29362 + _globals['_SETPOWERSHAREDISCHARGELIMITACTION']._serialized_start = 29364 + _globals['_SETPOWERSHAREDISCHARGELIMITACTION']._serialized_end = 29435 + _globals['_SETPOWERSHAREREQUESTACTION']._serialized_start = 29438 + _globals['_SETPOWERSHAREREQUESTACTION']._serialized_end = 29659 + _globals['_SETPOWERSHAREREQUESTACTION_POWERSHAREREQUEST']._serialized_start = 29553 + _globals['_SETPOWERSHAREREQUESTACTION_POWERSHAREREQUEST']._serialized_end = 29659 + _globals['_SETTENTMODEREQUESTACTION']._serialized_start = 29661 + _globals['_SETTENTMODEREQUESTACTION']._serialized_end = 29699 + _globals['_SETZONELIGHTREQUESTACTION']._serialized_start = 29702 + _globals['_SETZONELIGHTREQUESTACTION']._serialized_end = 29946 + _globals['_SETZONELIGHTREQUESTACTION_ZONELIGHTREQUEST']._serialized_start = 29815 + _globals['_SETZONELIGHTREQUESTACTION_ZONELIGHTREQUEST']._serialized_end = 29946 + _globals['_SETLIGHTBARBRIGHTNESSACTION']._serialized_start = 29948 + _globals['_SETLIGHTBARBRIGHTNESSACTION']._serialized_end = 30005 + _globals['_SETLIGHTBARMIDDLEACTION']._serialized_start = 30007 + _globals['_SETLIGHTBARMIDDLEACTION']._serialized_end = 30062 + _globals['_SETLIGHTBARDITCHACTION']._serialized_start = 30064 + _globals['_SETLIGHTBARDITCHACTION']._serialized_end = 30118 + _globals['_GETMESSAGESACTION']._serialized_start = 30120 + _globals['_GETMESSAGESACTION']._serialized_end = 30139 + _globals['_TESLAAUTHRESPONSEACTION']._serialized_start = 30142 + _globals['_TESLAAUTHRESPONSEACTION']._serialized_end = 30309 + _globals['_NAVIGATIONGPSDESTINATIONREQUEST']._serialized_start = 30312 + _globals['_NAVIGATIONGPSDESTINATIONREQUEST']._serialized_end = 30632 + _globals['_NAVIGATIONGPSDESTINATIONREQUEST_REMOTENAVTRIPORDER']._serialized_start = 22884 + _globals['_NAVIGATIONGPSDESTINATIONREQUEST_REMOTENAVTRIPORDER']._serialized_end = 23043 + _globals['_PARENTALCONTROLSCLEARPINACTION']._serialized_start = 30634 + _globals['_PARENTALCONTROLSCLEARPINACTION']._serialized_end = 30679 + _globals['_PARENTALCONTROLSCLEARPINADMINACTION']._serialized_start = 30681 + _globals['_PARENTALCONTROLSCLEARPINADMINACTION']._serialized_end = 30718 + _globals['_PARENTALCONTROLSACTION']._serialized_start = 30720 + _globals['_PARENTALCONTROLSACTION']._serialized_end = 30775 + _globals['_PARENTALCONTROLSENABLESETTINGSACTION']._serialized_start = 30778 + _globals['_PARENTALCONTROLSENABLESETTINGSACTION']._serialized_end = 31079 + _globals['_PARENTALCONTROLSENABLESETTINGSACTION_PARENTALCONTROLSSETTING_E']._serialized_start = 30927 + _globals['_PARENTALCONTROLSENABLESETTINGSACTION_PARENTALCONTROLSSETTING_E']._serialized_end = 31079 + _globals['_PARENTALCONTROLSSETSPEEDLIMITACTION']._serialized_start = 31081 + _globals['_PARENTALCONTROLSSETSPEEDLIMITACTION']._serialized_end = 31137 + _globals['_CANCELSOHTESTACTION']._serialized_start = 31139 + _globals['_CANCELSOHTESTACTION']._serialized_end = 31160 + _globals['_STOPLIGHTSHOWACTION']._serialized_start = 31162 + _globals['_STOPLIGHTSHOWACTION']._serialized_end = 31183 + _globals['_STARTLIGHTSHOWACTION']._serialized_start = 31185 + _globals['_STARTLIGHTSHOWACTION']._serialized_end = 31284 + _globals['_SETSUSPENSIONLEVELACTION']._serialized_start = 31287 + _globals['_SETSUSPENSIONLEVELACTION']._serialized_end = 31614 + _globals['_SETSUSPENSIONLEVELACTION_SUSPENSIONLEVEL']._serialized_start = 31395 + _globals['_SETSUSPENSIONLEVELACTION_SUSPENSIONLEVEL']._serialized_end = 31614 + _globals['_SETDISCHARGELIMITACTION']._serialized_start = 31616 + _globals['_SETDISCHARGELIMITACTION']._serialized_end = 31666 + _globals['_SETLOWPOWERMODEACTION']._serialized_start = 31668 + _globals['_SETLOWPOWERMODEACTION']._serialized_end = 31715 + _globals['_SETTEMPERATUREUNITACTION']._serialized_start = 31718 + _globals['_SETTEMPERATUREUNITACTION']._serialized_end = 31847 + _globals['_SETTEMPERATUREUNITACTION_UNIT']._serialized_start = 31802 + _globals['_SETTEMPERATUREUNITACTION_UNIT']._serialized_end = 31847 + _globals['_SETDISTANCEUNITACTION']._serialized_start = 31849 + _globals['_SETDISTANCEUNITACTION']._serialized_end = 31970 + _globals['_SETDISTANCEUNITACTION_UNIT']._serialized_start = 31927 + _globals['_SETDISTANCEUNITACTION_UNIT']._serialized_end = 31970 + _globals['_SETTIMEDISPLAYFORMATACTION']._serialized_start = 31973 + _globals['_SETTIMEDISPLAYFORMATACTION']._serialized_end = 32113 + _globals['_SETTIMEDISPLAYFORMATACTION_FORMAT']._serialized_start = 32065 + _globals['_SETTIMEDISPLAYFORMATACTION_FORMAT']._serialized_end = 32113 + _globals['_SETTIREPRESSUREUNITACTION']._serialized_start = 32115 + _globals['_SETTIREPRESSUREUNITACTION']._serialized_end = 32235 + _globals['_SETTIREPRESSUREUNITACTION_UNIT']._serialized_start = 32201 + _globals['_SETTIREPRESSUREUNITACTION_UNIT']._serialized_end = 32235 + _globals['_SETENERGYDISPLAYFORMATACTION']._serialized_start = 32238 + _globals['_SETENERGYDISPLAYFORMATACTION']._serialized_end = 32386 + _globals['_SETENERGYDISPLAYFORMATACTION_FORMAT']._serialized_start = 32334 + _globals['_SETENERGYDISPLAYFORMATACTION_FORMAT']._serialized_end = 32386 + _globals['_SETKEEPACCESSORYPOWERMODEACTION']._serialized_start = 32388 + _globals['_SETKEEPACCESSORYPOWERMODEACTION']._serialized_end = 32456 + _globals['_SETUPCLOUDPROFILEWITHLOCALPROFILEUUIDACTION']._serialized_start = 32459 + _globals['_SETUPCLOUDPROFILEWITHLOCALPROFILEUUIDACTION']._serialized_end = 32600 + _globals['_GETLOCALPROFILESFORVAULTUUIDACTION']._serialized_start = 32602 + _globals['_GETLOCALPROFILESFORVAULTUUIDACTION']._serialized_end = 32658 + _globals['_FETCHKEYSINFOACTION']._serialized_start = 32660 + _globals['_FETCHKEYSINFOACTION']._serialized_end = 32681 + _globals['_DELETEDASHCAMCLIPSACTION']._serialized_start = 32683 + _globals['_DELETEDASHCAMCLIPSACTION']._serialized_end = 32731 + _globals['_FORMATUSBACTION']._serialized_start = 32733 + _globals['_FORMATUSBACTION']._serialized_end = 32770 + _globals['_BANDWIDTHTEST']._serialized_start = 32772 + _globals['_BANDWIDTHTEST']._serialized_end = 32811 + _globals['_PHONEUNITPREFERENCES']._serialized_start = 32814 + _globals['_PHONEUNITPREFERENCES']._serialized_end = 32966 + _globals['_SETPHONESETTINGPREFERENCESACTION']._serialized_start = 32969 + _globals['_SETPHONESETTINGPREFERENCESACTION']._serialized_end = 33192 + _globals['_SETPHONESETTINGPREFERENCESACTION_FONTSIZE']._serialized_start = 33137 + _globals['_SETPHONESETTINGPREFERENCESACTION_FONTSIZE']._serialized_end = 33192 + _globals['_CANCELVEHICLEDATASUBSCRIPTION']._serialized_start = 33194 + _globals['_CANCELVEHICLEDATASUBSCRIPTION']._serialized_end = 33225 \ No newline at end of file diff --git a/packages/python/tesla_protocol/command/car_server_pb2.pyi b/packages/python/tesla_protocol/command/car_server_pb2.pyi index 06d7988..1e134b1 100644 --- a/packages/python/tesla_protocol/command/car_server_pb2.pyi +++ b/packages/python/tesla_protocol/command/car_server_pb2.pyi @@ -1497,7 +1497,7 @@ class NavigationRequest(_message.Message): ... class NavigationSuperchargerRequest(_message.Message): - __slots__ = ('remote_nav_trip_order',) + __slots__ = ('id', 'remote_nav_trip_order') class RemoteNavTripOrder(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): __slots__ = () @@ -1509,10 +1509,12 @@ class NavigationSuperchargerRequest(_message.Message): REMOTE_NAV_TRIP_ORDER_REPLACE: NavigationSuperchargerRequest.RemoteNavTripOrder REMOTE_NAV_TRIP_ORDER_PREPEND: NavigationSuperchargerRequest.RemoteNavTripOrder REMOTE_NAV_TRIP_ORDER_APPEND: NavigationSuperchargerRequest.RemoteNavTripOrder + ID_FIELD_NUMBER: _ClassVar[int] REMOTE_NAV_TRIP_ORDER_FIELD_NUMBER: _ClassVar[int] + id: int remote_nav_trip_order: NavigationSuperchargerRequest.RemoteNavTripOrder - def __init__(self, remote_nav_trip_order: _Optional[_Union[NavigationSuperchargerRequest.RemoteNavTripOrder, str]]=...) -> None: + def __init__(self, id: _Optional[int]=..., remote_nav_trip_order: _Optional[_Union[NavigationSuperchargerRequest.RemoteNavTripOrder, str]]=...) -> None: ... class UiSetUpcomingCalendarEntries(_message.Message): diff --git a/packages/python/tests/test_navigation_supercharger_id.py b/packages/python/tests/test_navigation_supercharger_id.py new file mode 100644 index 0000000..16f20e5 --- /dev/null +++ b/packages/python/tests/test_navigation_supercharger_id.py @@ -0,0 +1,48 @@ +import json +import unittest +from pathlib import Path + +from tesla_protocol.command.car_server_pb2 import Action, NavigationSuperchargerRequest + +FIXTURE = json.loads( + ( + Path(__file__).parents[3] / "fixtures" / "golden" / "navigation_supercharger_id.json" + ).read_text() +) + + +class GoldenFixtureTests(unittest.TestCase): + def test_outer_vehicle_action_wrapper_is_tag_2(self): + self.assertEqual(FIXTURE["outer_field"]["tag"], 2) + self.assertEqual(FIXTURE["outer_field"]["name"], "vehicleAction") + + def test_fixtures_round_trip_to_golden_bytes(self): + for case in FIXTURE["cases"]: + with self.subTest(case=case["name"]): + action = Action( + vehicleAction={ + "navigationSuperchargerRequest": NavigationSuperchargerRequest( + id=case["payload"]["id"], + remote_nav_trip_order=case["payload"][ + "remote_nav_trip_order_number" + ], + ) + } + ) + + encoded = action.SerializeToString() + self.assertEqual(encoded.hex(), case["hex"]) + + decoded = Action.FromString(encoded) + self.assertEqual( + decoded.vehicleAction.navigationSuperchargerRequest.id, + case["payload"]["id"], + ) + self.assertEqual( + decoded.vehicleAction.navigationSuperchargerRequest.remote_nav_trip_order, + case["payload"]["remote_nav_trip_order_number"], + ) + + +if __name__ == "__main__": + unittest.main() diff --git a/packages/typescript/src/command/car_server.ts b/packages/typescript/src/command/car_server.ts index f3a8d75..a9d60ac 100644 --- a/packages/typescript/src/command/car_server.ts +++ b/packages/typescript/src/command/car_server.ts @@ -1444,6 +1444,8 @@ export interface NavigationRequest { } export interface NavigationSuperchargerRequest { + /** Supercharger location, identified as in Superchargers.id. */ + id: number; remoteNavTripOrder: NavigationSuperchargerRequest_RemoteNavTripOrder; } @@ -14660,11 +14662,14 @@ export const NavigationRequest: MessageFns = { }; function createBaseNavigationSuperchargerRequest(): NavigationSuperchargerRequest { - return { remoteNavTripOrder: 0 }; + return { id: 0, remoteNavTripOrder: 0 }; } export const NavigationSuperchargerRequest: MessageFns = { encode(message: NavigationSuperchargerRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { + if (message.id !== 0) { + writer.uint32(8).int64(message.id); + } if (message.remoteNavTripOrder !== 0) { writer.uint32(16).int32(message.remoteNavTripOrder); } @@ -14678,6 +14683,14 @@ export const NavigationSuperchargerRequest: MessageFns>> 3) { + case 1: { + if (tag !== 8) { + break; + } + + message.id = longToNumber(reader.int64()); + continue; + } case 2: { if (tag !== 16) { break; @@ -14697,6 +14710,7 @@ export const NavigationSuperchargerRequest: MessageFns { + assert.equal(fixture.outer_field.tag, 2); + assert.equal(fixture.outer_field.name, "vehicleAction"); +}); + +for (const c of fixture.cases) { + test(`golden fixture: ${c.name}`, () => { + const action = Action.fromJSON({ + vehicleAction: { + navigationSuperchargerRequest: { + id: c.payload.id, + remoteNavTripOrder: c.payload.remote_nav_trip_order_number, + }, + }, + }); + + const encoded = Action.encode(action).finish(); + assert.equal(hex(encoded), c.hex, `encode mismatch for ${c.name}`); + + const decoded = Action.decode(encoded); + assert.equal( + decoded.vehicleAction?.navigationSuperchargerRequest?.id ?? 0, + c.payload.id, + ); + assert.equal( + decoded.vehicleAction?.navigationSuperchargerRequest?.remoteNavTripOrder ?? 0, + c.payload.remote_nav_trip_order_number, + ); + }); +} diff --git a/proto/command/car_server.proto b/proto/command/car_server.proto index 193d4b7..94a1cc1 100644 --- a/proto/command/car_server.proto +++ b/proto/command/car_server.proto @@ -773,8 +773,7 @@ message NavigationRequest { } message NavigationSuperchargerRequest { - // order was misdeclared at tag 1; reserved to block reuse, see AGENTS.md. - reserved 1; + // The trip order lives at tag 2, so the name stays blocked here, see AGENTS.md. reserved "order"; enum RemoteNavTripOrder { REMOTE_NAV_TRIP_ORDER_UNKNOWN = 0; @@ -782,6 +781,8 @@ message NavigationSuperchargerRequest { REMOTE_NAV_TRIP_ORDER_PREPEND = 2; REMOTE_NAV_TRIP_ORDER_APPEND = 3; } + // Supercharger location, identified as in Superchargers.id. + int64 id = 1; RemoteNavTripOrder remote_nav_trip_order = 2; } diff --git a/scripts/test_build_catalog.py b/scripts/test_build_catalog.py index c5e7a71..d675568 100644 --- a/scripts/test_build_catalog.py +++ b/scripts/test_build_catalog.py @@ -179,15 +179,14 @@ def test_files_within_each_group_are_sorted_by_path(self): self.assertEqual(paths, sorted(paths)) def test_baseline_totals(self): - # Reproduces the E4.1 breakdown report's baseline counts at main 1df2336b. - # If proto/ has changed since, the current tree is authoritative - this - # assertion documents that baseline, it doesn't freeze it. + # proto/ is authoritative: these document the current surface size so an + # unintended change shows up, they don't freeze it. Update on purpose. totals = self.catalog["totals"] self.assertEqual(totals["source_files"], 38) self.assertEqual(totals["groups"], 7) self.assertEqual(totals["messages"], 868) self.assertEqual(totals["enums"], 237) - self.assertEqual(totals["fields"], 2804) + self.assertEqual(totals["fields"], 2805) def test_rebuild_is_deterministic(self): second = build_catalog.build_catalog()