Get desktop application:
View/edit binary Protocol Buffers messages
(message has no fields)
Used in:
, ,(DEPRECATED)
(DEPRECATED)
RESET TRIPCOMP
(TEST COMMAND)
(DC2+)
(TEST COMMAND)
(DEPRECATED)
(DEPRECATED)
reset tripcomp
(test command)
(DC2+)
(test command)
Used in:
Sending direction: App -> BFF -> AppTwin
Used in:
Used in:
(message has no fields)
Acknowledge the CommandRequest reached the apptwin actor Websocket <- Apptwin
Used in:
Used in:
Used in:
Used in:
Ack for the UpdateUserJWTRequest
(message has no fields)
Used in:
Used in:
Used in:
Used in:
acknowledge that the VEP updates of up to `sequenceNumber` have been received Sending direction: App -> BFF -> AppTwin
Used in:
acknowledge that the VEP updates by vin of up to `sequenceNumber` have been received Sending direction: App -> BFF -> AppTwin This message should replace the AcknowledgeVEPRequest
Used in:
Used in:
Used in:
Sending direction: App <- BFF <- AppTwin as part of an AppTwinCommandStatusUpdatesByPID
Used in:
The remote vehicleAPI process id of the command.
The id of the command with which the app created it. Only guaranteed to be set on the first transmission to the app.
The initial CommandStatus from the response of the vehicleAPI has a timestamp of -1
Potential ACP error if the command request could not be fulfilled
Potential timestamp until user cannot send login requests. Data in seconds since Unix epoch
Potential amount of failed pin attempts.
The type of command the AppTwinCommandStatus belongs to
The command state
Sending direction: App <- BFF <- AppTwin as part of an AppTwinCommandStatusUpdatesByVIN
Used in:
Process ID -> Status
Sending direction: App <- BFF <- AppTwin
Used in:
VIN -> Update
AppTwinPendingCommandsRequest is sent from the AppTwin to the app to ask for commands that the app has not yet received a finished state for. This request MUST eventually be answered with AppTwinPendingCommandsResponse.
Used in:
(message has no fields)
AppTwinPendingCommandsResponse is sent from the app to the AppTwin to tell it the commands that haven't been "resolved yet" (are not in a finished state). The delivery of this message to the AppTwin will trigger a command actor that polls the state for the specified command type and PID.
Used in:
This message is used to tell the App which vehicles are assigned to the current user. The message is sent when the AppTwin is fully initialized (i.e. when it received the first vcb-response) The list of VINs is needed when a user gets unassigned from a vehicle while not connected to an AppTwin In this case the vehicle would still show in the app the next time the user starts it (see https://appsfactory.atlassian.net/browse/DAIM-3831) To prevent this, we tell the App which VINs are assigned via this message
Used in:
Same as VehicleAPI.AttributeStatus but with slightly different names. The VehicleAPI.AttributeStatus enum values can't be changed because they are used to automatically parse the vehicleAPI responses. Adding type aliases would confuse the contributions developers, so we added another attribute status enum
Value is set and valid
Value has not yet been received from the vehicle (but sensor etc. should be available)
Value has been retrieved from vehicle but is invalid (marked as invalid by DaiVB backend)
Vehicle does not support this attribute (e.g. does not have the sensor etc.)
Used in:
Used in:
Minutes from midnight.
Minutes from midnight.
Minutes from midnight.
Used in:
Used in:
(message has no fields)
Used in:
(message has no fields)
Configure the charge program
Used in:
Used in:
Configure the maximum value for the state of charge of the HV battery
Used in:
Values need to be between 50 and 100 and divisible by ten
Used in:
Used in:
Used in:
doc says: TODO
This is an experimental command
Used in:
Enables/Disables bidrectional charging
Sets the charging power in kW with a resolution of 0.1 kW. The value has an offset of -100 kW. So a value of 0 is equivalent to -100 kW.
must not be above max_soc
Used in:
(message has no fields)
Used in:
(message has no fields)
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Provide functionality to initiate a charge optimization configuration
Used in:
Used in:
Time in seconds after 00:00
Used in:
Provide the functionality to start the charge optimization function in the vehicle
empty
Used in:
(message has no fields)
Provide the functionality to stop the charge optimization function in the vehicle
empty
Used in:
(message has no fields)
Used in:
Select the given charge program and enables the consumer to configure it.
Used in:
Values need to be between 50 and 100 and divisible by ten Maximum value for the state of charge of the HV battery [in %]. Valid value range = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
unlock the plug after charging is finished Denotes whether the charge cable should be unlocked automatically if the HV battery is fully charged resp. charged til Max. SoC value. true - unlock automatically, false - do not unlock automatically can only be used if chargeprogram is set to home or work. Otherwise it will be ignored.
automatically switch between home and work program, based on the location of the car Denotes whether location based charging should be used. true - use location based charging, false - do not use location based charging can only be used if chargeprogram is set to home or work. Otherwise it will be ignored.
enable or disable clocktimer
enable or disable ecocharging
Used in:
Instant charge program should not be used INSTANT_CHARGE_PROGRAM = 1;
Used in:
Values need to be between 50 and 100 and divisible by ten Maximum value for the state of charge of the HV battery [in %]. Valid value range = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
unlock the plug after charging is finished Denotes whether the charge cable should be unlocked automatically if the HV battery is fully charged resp. charged til Max. SoC value. true - unlock automatically, false - do not unlock automatically can only be used if chargeprogram is set to home or work. Otherwise it will be ignored.
automatically switch between home and work program, based on the location of the car Denotes whether location based charging should be used. true - use location based charging, false - do not use location based charging can only be used if chargeprogram is set to home or work. Otherwise it will be ignored.
Used in:
Used in:
Used in:
Used in:
,Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
message that is sent from the client Sending direction: App -> Websocket (-> AppTwin)
After the command was issued at VVA based on this command request the call will get a command request correlation message which matches the request id with the process id. Sending direction: App - BFF -> AppTwin
Used in:
Set this id to correlate a CommandStatus with this command request.
Temporary backend switch field. Will be removed as soon as all commands are migrated to the VehicleAPI This field only needs to be set if the command is supported by both API from our backend. If this field is removed don't forget to set the field 36 to reserved.
Used in:
default value
the client can optionally send this message to reconfigure the ping interval Sending direction: App -> BFF
Used in:
Used in:
Used in:
Sending direction: App <- BFF
Used in:
Used in:
,the lowercase versions are for json (de)serialization purposes only. The upper case version should be the preferred enum values to be used in code. These definitions need to come before upper case versions
Used in:
doors / flaps to unlock (only supported by TCU type RAMSES) leave empty to target all doors
Used in:
doors / flaps to unlock (only supported by TCU type RAMSES) leave empty to target all doors
Used in:
Used in:
Used in:
Used in:
Used in:
(message has no fields)
(message has no fields)
Message to send from the app right before logging out of keycloak Stops the corresponding AppTwin actor and shuts it down and stops the websocket actor (but does not shut it down. This automatically happens, when the websocket connection is terminated)
Used in:
(message has no fields)
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
Used in:
When was the event emitted (milliseconds in Unix time)
message that is pushed from the vep status service Sending direction: App <- BFF
Used in:
Used in:
Used in:
Used in:
Used in:
,FinOrVin
when was the event emitted? This is the time of the update, not when the attributes where changed. To compare attribute changes, you need to look into each attribute timestamp
When was the event emitted (milliseconds in Unix time)
serviceID -> Status
Used in:
Updates with VinOrFins
Invoke the Remote Vehicle Finder for signalling the vehicle’s position with lights, horn or panic alarm.
Used in:
Value needs to be between 0 and 30. The default is 0. Only allowed for RAMSES
Value needs to be between 0 and 10. It indicates how long the light should be switched on.
Only allowed for RAMSES
Used in:
Only allowed for RAMSES
Used in:
Used in:
Only allowed for RAMSES
Only allowed for RAMSES
Only allowed for HERMES
Used in:
Unix timestamp in seconds
Speed in kilometers per hour
threshold value in the users preferred unit
Used in:
Used in:
Used in:
(message has no fields)
Used in:
timestamp in seconds, UTC
soc with value range 0..100
Used in:
Array with tupels of state of charge and time offset related to the timestamp of the attribute, e.g. [{t, soc}, {t, soc}, .., {t, soc}] (every soc with value range 0..100, every timestamp in seconds, UTC)
SubscriptionRequest is sent to an actor to indicate that the sender wants to subscribe to events of specific topics. By convention the "Sender" property of the actor message is the Subscriber and will receive the events.
An array of topics for which the Subscriber wants to be notified from the Receiver of this message
indicates whether the previous set of topics should be replaced or whether the content of topics should be merged into the already existing set of topics in the publisher actor. E.g. You're already subscribed to topics A and B. If you send a SubscribeRequest with B and C: replace = true -> you are subscribed to B and C replace = false -> you are subscribed to A, B and C
SubscribeResponse is returned by the actor which received a SubscribeRequest. In case of a successful subscription success will be true and error_codes empty/nil. In case of an error the errors map will contain information that points to the reason for failure. The error map's keys are topics that have resulted in an error. The message also contains all successfully subscribed topics under the `subscribed_topics` key. By convention if an SubscribeRequest is sent for topics that have already been subscribed to, the SubscribeResponse will be successful and no error will be returned.
Sent from Websocket-Service -> AppTwin
additional data
Sent from AppTwin -> Websocket-Service
Used in:
, ,Optional
Used in:
,Used in:
(message has no fields)
Used in:
Used in:
Used in:
Used in:
,33 - off-peak, 44 - mid-peak, 66 - on-peak
Seconds from midnight
Set the temperature points of the vehicle
Used in:
Used in:
Used in:
the lowercase versions are for json parsing purposes only. The upper case version should be the preferred enum values to be used in code. These definitions need to come before upper case versions
PLEASE BE AWARE OF THE FOLLOWING BEFORE ADDING NEW ZONES: Currently there is a bug in vehicle API, that we need to send the zones in the correct order. Otherwise the request will be rejected. The order needs to be like the following: Front before rear before rear2 Left before right - There is no center zone if there are left and right zones in this row As this is already the order like specified here, this needs to be considered on adding new zones.
PLEASE BE AWARE OF THE FOLLOWING BEFORE ADDING NEW ZONES: Currently there is a bug in vehicle API, that we need to send the zones in the correct order. Otherwise the request will be rejected. The order needs to be like the following: Front before rear before rear2 Left before right - There is no center zone if there are left and right zones in this row As this is already the order like specified here, this needs to be considered on adding new zones.
Used in:
Used in:
Array with 1 to 5 tupels of zone (frontLeft, frontRight, frontCenter, rearRight, rearLeft, rearCenter, rear2center) and temperature in °C where 0 means maximum cooling (LOW) and 30 means maximum heating (HIGH)
Confirm the detected parking bump
empty
Used in:
(message has no fields)
Provide the functionality to deselect the parking damage detection sensor
empty
Used in:
(message has no fields)
Provide the functionality to deselect the interior protection sensor
empty
Used in:
(message has no fields)
Provide the functionality to deselect the tow protection sensor
empty
Used in:
(message has no fields)
Provide the functionality to select the parking damage detection sensor
empty
Used in:
(message has no fields)
Provide the functionality to select the interior protection sensor
empty
Used in:
(message has no fields)
Provide the functionality to select the tow protection sensor
empty
Used in:
(message has no fields)
Provide the functionality to trigger an alarm that lasts for "alarm_duration" seconds
Used in:
Specify how many seconds the alarm should be switched on
Provide the functionality to deactivate an active/ongoing alarm
empty
Used in:
(message has no fields)
Used in:
=> only if time profile entry is unchanged, do not provide attribute "id" if new profile entry shall be added If a new time profile shall be added: do not provide the ID => ID will be set by MIC / vehicle
Hour after midnight range [0, 23]
Minute after full hour range [0, 59]
Days for which the above time should be applied
Whether this profile entry is active or not
If a timeProfile is changed or added the respective applicationId must be provided by the SDK 11 = Internal Apps 12 = External Apps
Used in:
,the short versions are for json (en)coding purposes only. The upper case version should be the preferred enum values to be used in code. These definitions need to come before upper case versions
message type to track an event, e.g. a user interaction with content Sending direction: App -> BFF
Used in:
a unique id associated with this event
the unix epoch time in nanoseconds when the event occurred
a unique identifier describing a single interaction or event
additional meta data describing the event
UnsubscribeRequest is sent to an actor to indicate that the sender wants to unsubscribe from events specified by the topics array.
Used in:
An array of topics for which the Subscriber does not want to receive any more messages
Whether the publisher should respond
UnsubscribeResponse is returned by the actor which received a UnsubscribeRequest. In case of a successful removal, success will be true and error_codes empty/nil. In case of an error the errors map will contain information that points to the reason for failure. The error map's keys are topics that have resulted in an error. The message also contains all successfully subscribed topics under the `unsubscribed_topics` key. By convention if an UnsubscribeRequest is sent for topics that have already been unsubscribed from the UnsubscribeResponse will be successful and no error will be returned.
Contains the refreshed jwt of the user
Used in:
Used in:
when was the event emitted? This is the time of the update, not when the attributes where changed. To compare attribute changes, you need to look into each attribute timestamp
When was the event emitted (milliseconds in Unix time)
Sent after a PIN update
Used in:
ciam ID
when was the event emitted? This is the time of the update
When was the event emitted (milliseconds in Unix time)
this timestamp indicates when a message was read from the eventhub
this timestamp indicates when a message was processed in the app twin
Sent after a picture upload/change
Used in:
ciam ID
when was the event emitted? This is the time of the update
When was the event emitted (milliseconds in Unix time)
this timestamp indicates when a message was read from the eventhub
this timestamp indicates when a message was processed in the app twin
Used in:
when was the event emitted? This is the time of the update, not when the attributes where changed. To compare attribute changes, you need to look into each attribute timestamp
When was the event emitted (milliseconds in Unix time)
Sending direction: App <- BFF <- AppTwin
Used in:
,indicates whether this is a full update of VEP-attributes. All attributes cached in the FE should be erased and completely replaced by this push.
when was the event emitted? This is the time of the update (unix timestamp in seconds), (deprecated) not when the attributes where changed. To compare attribute changes, you need to look into each attribute timestamp
when was the event emitted? This is the time of the update (unix timestamp in milliseconds),
the attribute changes are a list of changed attributes
Sending direction: App <- BFF <- AppTwin
Used in:
VIN -> Update
(message has no fields)
Used in:
Used in:
VVRTimeProfile is almost identical to the "TimeProfile" message with the exception that the identifier is not optional.
Used in:
unique id of this time profile entry
Hour after midnight range [0, 23]
Minute after full hour range [0, 59]
Days for which the above time should be applied
Whether this profile entry is active or not
If a timeProfile is changed or added the respective applicationId must be provided by SDK 11 = Internal Apps 12 = External Apps
(message has no fields)
Used in:
Value is set and valid
Value has not yet been retrieved from vehicle (but sensor etc. should be available)
Value has been retrieved from vehicle but is invalid (marked as invalid by DaiVB backend)
Vehicle does not support this attribute (e.g. does not have the sensor etc.)
Used in:
, ,Command execution request is accepted and an asynchronous process is being initialized.
Another process for the same vehicle and queue is active, the request has been queued for later execution.
The process is currently being processed by the backend.
The backend currently waits for the vehicle to respond to the request.
The process has finished successfully.
There was an error while executing the command process.
added 20241105
Used in:
(ALSO USED BY SIGPOS/RVF)
(BLACKCHANNEL)
(also used by sigpos/RVF)
(blackchannel)
Used in:
Value of the attribute (can be anything)
UTC timestamp in milliseconds
Status of the attribute
List of processes
Number of enqueued commands in related command queue
Name of related command queue type
VehicleAPICommandPostResult is a message type that can be unmarshaled from a POST request against the vehicle API for issuing commands.
The remote VVA process id of the command.
Potential ACP error if the command request could not be fulfilled
The command state
Used in:
GUID (RFC 4122)
Name of the command
Process ID
Response parameters as defined by the command
Current processing state
UTC timestamp in seconds (ISO 9945)
Tracking ID. SHOULD be a GUID (RFC 4122)
Used in:
, ,Part of a VEPUpdate Sending direction: App <- BFF <- AppTwin
Used in:
,time of the attribute change in the car as unix timestamp in seconds with UTC timezone (deprecated)
time of the attribute change in the car as unix timestamp in milliseconds with UTC timezone
A list of service ids for which this attribute was sent this field ist just used backend internally and will always be empty when sent out to the client.
use speed unit / length unit instead
ChargingScheduleActive charging_schedule_active = 82;
Used in:
Used in:
Used in:
Used in:
Used in:
12h (AM/PM)
24h
Used in:
Liter per 100 km
Kilometers per liter
Miles Per imperial gallon
Miles Per US gallon
Used in:
Used in:
kWh per 100 km
Kilometers per kWh
kWh per 100 miles
miles per kWh
Miles per gallon gasoline equivalent
Used in:
kG per 100 km
km per kg
miles per kg
Used in:
Pounds per square inch
Used in:
Used in:
km/h, distance unit: km
mph, distance unit: miles
Used in:
kilometers per hour
miles per hour
Used in:
Used in:
Represents a status response from the VVA backend for a given VIN and CIAM ID.
Used in:
When was the event emitted (milliseconds in Unix time)
Set the weekprofile for the weekly departure time settings
Used in:
Used in:
Time in minutes after 00:00
Used in:
Set the week profile for the weekly departure time settings version 2
Used in:
* The whole list of timeProfiles must always be provided
Used in:
List of sampling points. Hint: Array will be empty in initial state. I. e.: rate and time will not be existent in initial state.
Used in:
List of sampling points. Hint: Array will be empty in initial state. I. e.: rate and time will not be existent in initial state.
Used in:
Used in:
Used in:
Array with 0 to 21 tupels of day (0..6, 0 = Monday, 1= Tuesday, ..) and departure time in min since midnight (0..1439)
Used in:
(message has no fields)
Used in:
Used in:
Used in:
Used in:
(message has no fields)
Configure preconditioning
Used in:
Used in:
Configure which seats should be preconditioned. Currently, the only available options are to precondition all seats or only the front-left seat
Used in:
Used in:
Used in:
Used in:
,the lowercase versions are for json parsing purposes only. The upper case version should be the preferred enum values to be used in code. These definitions need to come before upper case versions
the uppercase versions are here to have exported values The given preconditioning command type is unknown
starts immediate preconditioning
starts preconditioning at departure time (requires a departure time to be provided in ZEVPreconditioningStart)
start right away (departure time is ignored)
starts preconditioning for a configured weekly profile (does NOT require a departure time to be provided)