The request succeeded The data sent is invalid. For example Invalid Json syntax Parameters out of bounds (number or enum range) Mandatory parameters not provided Parameter provided with wrong type Invalid characters Empty string The request is not supported by Sync The system could not process the request because the necessary memory couldn't be allocated There are too many requests pending (means, that the response has not been delivered, yet). There may be a maximum of 1000 pending requests at a time. One of the provided IDs is not valid. For example This applies to CorrelationID, SubscriptionID [@TODO if SubscriptionID is used], CommandID, MenuID, [@TODO: missed one?] There was a conflict with an registered name (application or menu item) or vr command There are already too many registered applications RegisterApplication has been called again, after a RegisterApplication was successful before. Sync doesn't support the protocol that is requested by the mobile application The requested language is currently not supported. Might be because of a mismatch of the currently active language on Sync and the requested language An command can not be executed because no application has been registered with RegisterApplication. The data may not be changed, because it is currently in use. For example when trying to delete a command set that is currently involved in an interaction. The item to subscribe to is already subscribed to. The requested command was rejected, e.g. because mobile app is in background and cannot perform any HMI commands. Or an HMI command (e.g. Speak) is rejected because a higher priority HMI command (e.g. Alert) is playing. A command was aborted, for example due to user interaction (e.g. user pressed button). Or an HMI command (e.g. Speak) is aborted because a higher priority HMI command (e.g. Alert) was requested. A command was ignored, because the intended result is already in effect. For example, SetMediaClockTimer was used to pause the media clock although the clock is paused already. NOTE: potentially replaces SUBSCRIBED_ALREADY A button that was requested for subscription is not supported under the current system. NOTE: could become a more generic UNSUPPORTED_RESOURCE by merging with VEHIVLE_DATA_NOT_AVAILABLE. A specified file could not be found on Sync. Provided data is valid but something went wrong in the lower layers. A button was released, after it was pressed for a long time Actual timing is defined by Sync and may vary A button was released, after it was pressed for a short time Actual timing is defined by Sync and may vary A button has been released up A button has been pressed down The set of potential languages US English Mexican Spanish Canadian French Describes how the media clock timer should behave on the platform Starts the media clock timer counting upwards, as in time elapsed. Starts the media clock timer counting downwards, as in time remaining. Pauses the media clock timer Resume the media clock timer For application-requested interactions, this mode indicates the method in which the user is notified and uses the interaction. This mode causes the interaction to only occur on the display, meaning the choices are provided only via the display. Selections are made with the OK and Seek Right and Left, Tune Up and Down buttons. This mode causes the interaction to only occur using V4. Selections are made by saying the command. This mode causes both a VR and display selection option for an interaction. Selections can be made either from the menu display or by speaking the command. Enumeraction that describes current levels of HMI. Enumeraction that describes possible states of audio streaming. Enumeraction that describes possible contexts and app's HMI might be in. Error code, which comes from sync side. Indicates the source from where the command was triggered. Contains information about the HMI zone capabilities. For future use. Contains information about the TTS capabilities. Contains information about the VR capabilities. Describes different quality options for PerformAudioCapture. Defines the hard (physical) and soft (touchscreen) buttons available from SYNC Are these all supported buttons? minutesFieldWidth = 2;minutesFieldMax = 19;secondsFieldWidth = 2;secondsFieldMax = 99;maxHours = 19;maxMinutes = 59;maxSeconds = 59; used for Type II and CID headunits minutesFieldWidth = 3;minutesFieldMax = 199;secondsFieldWidth = 2;secondsFieldMax = 99;maxHours = 59;maxMinutes = 59;maxSeconds = 59; used for Type V headunit 5 characters possible Format: 1|sp c :|sp c c 1|sp : digit "1" or space c : character out of following character set: sp|0-9|[letters, see TypeII column in XLS. See [@TODO: create file ref]] :|sp : colon or space used for Type II headunit 5 chars possible Format: 1|sp c :|sp c c 1|sp : digit "1" or space c : character out of following character set: sp|0-9|[letters, see CID column in XLS. See [@TODO: create file ref]] :|sp : colon or space used for CID headunit NOTE: difference between CLOCKTEXT1 and CLOCKTEXT2 is the supported character set 6 chars possible Format: 1|sp c c :|sp c c 1|sp : digit "1" or space c : character out of following character set: sp|0-9|[letters, see Type 5 column in XLS]. See [@TODO: create file ref] :|sp : colon or space used for Type V headunit First complete values draft. Review needed. See DAES for further infos regarding the displays] Meaningful description is missing The first line of the main field of persistent display Applies to "Show" The second line of the main field of persistent display Applies to "Show" The status bar on Nav Applies to "Show" Text value for MediaClock field. Has to be properly formatted by Mobile App according to Sync capabilities. Applies to "Show" The track field of NGN type ACMs. This field is only available for media applications. Applies to "Show" The first line of the alert text field Applies to "Alert" The second line of the alert text field Applies to "Alert" The list of potential character sets See [@TODO: create file ref] See [@TODO: create file ref] See [@TODO: create file ref] See [@TODO: create file ref] Real sets have not been defined yet? The list of possible alignments, left, right, or centered Enumeration that describes possible states of turn-by-turn module. Enumeration that describes possible states of driver distraction. A choice is an option given to the user, which can be selected either by menu, or through voice recognition system. Specifies the version number of the SYNC V4 protocol, that is supported by the mobile application The major version indicates versions that is not-compatible to previous versions. The minor version indicates a change to a previous version that should still allow to be run on an older version (with limited functionality) The different global properties. The property helpPrompt of setGlobalProperties The property timeoutPrompt of setGlobalProperties The hour of the media clock. Some radios only support a max of 19 hours. If out of range, it will be rejected. The name that identifies the field. See TextFieldName. The character set that is supported in this field. See CharacterSet. The number of characters in one row of this field. The number of rows of this field. Contains information about the display capabilities. The type of the display. See DisplayType A set of all fields that support text data. See TextField A set of all supported formats of the media clock. See MediaClockFormat Contains information about a buttons capabilities. The name of the button. See ButtonName. The button supports a short press. Whenever the button is pressed short, onButtonPressed( SHORT) will be invoked. The button supports a LONG press. Whenever the button is pressed long, onButtonPressed( LONG) will be invoked. The button supports "button down" and "button up". Whenever the button is pressed, onButtonEvent( DOWN) will be invoked. Whenever the button is released, onButtonEvent( UP) will be invoked. unique ID of the sub menu, the command will be added to. If not provided, it will be provided to the top level of the in application menu. Position within the items that are are at top level of the in application menu. 0 will insert at the front. 1 will insert at the second position. if position is greater or equal than the number of items on top level, the sub menu will be appended to the end. If this param was omitted the entry will be added at the end. Text to show in the menu for this sub menu. A TTS chunk, that consists of the text/phonemes to speak and the type (like text or SAPI) The text or phonemes to speak. May not be empty. Describes, whether it is text or a specific phoneme set. See SpeechCapabilities Establishes an interface with a mobile application. Before registerAppInterface no other commands will be accepted/executed. See SyncMsgVersion The mobile application name, e.g. "Ford Drive Green". Needs to be unique over all applications. May not be empty. May not start with a new line character. May not interfere with any name or synonym of previously registered applications and the following list of words @TODO: Create list(global commands) Needs to be unique over all applications. Applications with the same name will be rejected. Only characters from char set [@TODO: Create char set (character/hex value) for each ACM and refer to] are supported. Provides an abbreviated version of the app name (if needed), that will be displayed on the NGN media screen. If not provided, the appName is used instead (and will be truncated if too long) Only characters from char set [@TODO: Create char set (character/hex value) for each ACM and refer to] are supported. Defines an additional voice recognition command. May not interfere with any name or synonym of previously registered applications and the following list of words @TODO: Create list(global commands) Only characters from char set [@TODO: Create char set (character/hex value) for each ACM and refer to] are supported. If not provided, the default is equal to False" Indicates if the mobile application wants to use vehicle data like GPS or speed. Indicates if the application is a media or a non-media application. Only media applications will be able to stream audio to Sync that is audible outside of the BT media source. See Language If the language doesn't match the active language on Sync, it will be rejected. If the language is changed, while an app is registered, it will get disconnected. Used to support auto activation after an initial successful registerAppInterface (for example after an ignition cycle). The app should always provide the id that was provided by the most recent registerAppInterface response. If this is the first call to registerAppInterface, then do not provide this parameter at all. If not provided or not matching with the id of the last registerAppInterface response, the app will not be automatically put into foreground on startup. The response to registerAppInterface true, if successful false, if failed See Result Provides additional human readable info regarding the result. See SyncMsgVersion Provides an id that the app may use on a subsequent registerAppInterface to allow for auto activation (for example after an ignition cycle). The currently active language on Sync. See "Language" for options. See DisplayCapabilities See ButtonCapabilities If not used yet => remove See HmiZoneCapabilities See SpeechCapabilities See VrCapabilities Closes an interface from a mobile application. After unregisterAppInterface, no commands other than registerAppInterface will be accepted/executed. Will fail, if no registerAppInterface was completed successfully before. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Allows setting global properties. The help prompt. An array of text chunks of type TTSChunk. See TTSChunk The array must have at least one item Help text for a wait timeout. An array of text chunks of type TTSChunk. See TTSChunk The array must have at least one item Do we want to add VR threshold params? true, if successful false, if failed See Result Provides additional human readable info regarding the result. Allows resetting global properties. Contains the names of all global properties (like timeoutPrompt) that should be unset. Resetting means, that they have the same value as at start up (default) true, if successful false, if failed See Result Provides additional human readable info regarding the result. Adds a command to the in application menu. Either menuParams or vrCommands must be provided. unique ID of the command to add. Optional sub value containing menu parameters An array of strings to be used as VR sysnonyms for this command. If this array is provided, it may not be empty. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Deletes all commands from the in-application menu with the specified command id. ID of the command(s) to delete. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Adds a sub menu to the in-application menu. unique ID of the sub menu to add. Position within the items that are are at top level of the in application menu. 0 will insert at the front. 1 will insert at the second position. If position is greater or equal than the number of items on top level, the sub menu will be appended to the end. Position of any submenu will always be located before the return and exit options If this param was omitted the entry will be added at the end. Text to show in the menu for this sub menu. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Deletes a submenu from the in-application menu. The "menuID" of the submenu to delete. (See addSubMenu.menuID) true, if successful false, if failed See Result Provides additional human readable info regarding the result. creates interaction choice set to be used later by performInteraction Unique ID used for this interaction choice set. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Triggers an interaction (e.g. "Permit GPS?" - Yes, no, Always Allow). Text to be displayed first. This is the intial prompt spoken to the user at the start of an interaction An array of text chunks of type TTSChunk. See TTSChunk The array must have at least one item See InteractionMode. List of interaction choice set IDs to use with an interaction. Help text. This is the spoken string when a user speaks "help" when the interaction is occuring. An array of text chunks of type TTSChunk. See TTSChunk The array must have at least one item Timeout text. This text is spoken when a VR interaction times out. An array of text chunks of type TTSChunk. See TTSChunk The array must have at least one item Timeout in milliseconds. If omitted a standard value of 10000 milliseconds is used. true, if successful false, if failed See Result Provides additional human readable info regarding the result. ID of the choice that was selected in response to PerformInteraction. See TriggerSource Deletes interaction choice set that has been created with "CreateInteractionChoiceSet". The interaction may only be deleted when not currently in use by a "performInteraction". ID of the interaction choice set to delete. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Shows an alert which typically consists of text-to-speech message and text on the display. At least either alertText1, alertText2 or TTSChunks need to be provided. The first line of the alert text field The second line of the alert text field An array of text chunks of type TTSChunk. See TTSChunk The array must have at least one item Timeout in milliseconds. Typical timeouts are 3-5 seconds If omitted, timeout is set to 5s. Defines if tone should be played. Tone is played before TTS. If omitted, no tone is played. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Updates the persistent display. Supported fields depend on display capabilities. The text that should be displayed in a single or upper display line. If this text is not set, the text of mainField1 stays unchanged. If this text is empty "", the field will be cleared. The text that should be displayed on the second dispay line. If this text is not set, the text of mainField2 stays unchanged. If this text is empty "", the field will be cleared. Specifies how mainField1 and mainField2 texts should be aligned on display. If omitted, texts will be centered Requires investigation regarding the nav display capabilities. Potentially lower lowerStatusBar, upperStatusBar, titleBar, etc. Text value for MediaClock field. Has to be properly formatted by Mobile App according to Sync capabilities. If this text is set, any automatic media clock updates previously set with SetMediaClockTimer will be stopped. The text that should be displayed in the track field. This field is only valid for media applications on NGN type ACMs. If this text is not set, the text of mediaTrack stays unchanged. If this text is empty "", the field will be cleared. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Speaks a text. An array of text chunks of type TTSChunk. See TTSChunk The array must have at least one item true, if successful false, if failed See Result Provides additional human readable info regarding the result. Sets the initial media clock value and automatic update method. See StartTime startTime must be provided for "run" startTime will be ignored for "pause" and "resum" Enumeration to control the media clock. In case of pause or resume, the start time value is ignored and shall be left out. For resume, the time continues with the same value as it was when paused. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Allows encoded data in the form of SyncP packets to be sent to the SYNC module Contains base64 encoded string of SyncP packets. What is the maxlength true, if successful false, if failed See Result Provides additional human readable info regarding the result. Subscribes to built-in HMI buttons. The application will be notified by the OnButtonEvent and OnButtonPress. To unsubscribe the notifications, use unsubscribeButton. Name of the button to subscribe. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Unsubscribes from built-in HMI buttons. Name of the button to unsubscribe. true, if successful false, if failed See Result Provides additional human readable info regarding the result. Generic Response is sent, when the name of a received msg cannot be retrieved. Only used in case of an error. Currently, only resultCode INVALID_DATA is used. true, if successful false, if failed See Result Provides additional human readable info regarding the result. See HMILevel See AudioStreamingState See SystemContext See AppInterfaceUnregisteredReason Notifies application of UP/DOWN events for buttons to which the application is subscribed. Indicates whether this is an UP or DOWN event. Notifies application of LONG/SHORT press events for buttons to which the application is subscribed. Indicates whether this is a LONG or SHORT button press event. Command ID, which is related to a specific menu entry. See TriggerSource Callback including encoded data of any SyncP packets that SYNC needs to send back to the mobile device. Contains base64 encoded string of SyncP packets. Provides applications with notifications specific to the current TBT client status on the module Current State of TBT client Provides driver distraction state to mobile applications Current State of Driver Distraction