summaryrefslogtreecommitdiff
path: root/src/components/interfaces/HMI_API.xml
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/interfaces/HMI_API.xml')
-rw-r--r--src/components/interfaces/HMI_API.xml270
1 files changed, 213 insertions, 57 deletions
diff --git a/src/components/interfaces/HMI_API.xml b/src/components/interfaces/HMI_API.xml
index f9e98cbc7..0f00117b1 100644
--- a/src/components/interfaces/HMI_API.xml
+++ b/src/components/interfaces/HMI_API.xml
@@ -61,6 +61,16 @@
<element name="WARNINGS" value="21"/>
<element name="GENERIC_ERROR" value="22"/>
<element name="USER_DISALLOWED" value="23"/>
+ <element name="TRUNCATED_DATA" value="24"/>
+</enum>
+
+<enum name="TransportType">
+ <description>
+ Lists of the transport types used for device connection to HU.
+ </description>
+ <element name="BLUETOOTH"/>
+ <element name="USB"/>
+ <element name="WIFI"/>
</enum>
<enum name="ButtonName">
@@ -81,7 +91,7 @@
<element name="PRESET_8"/>
<element name="PRESET_9"/>
<element name="CUSTOM_BUTTON"/>
- <element name="SEARCH"/>
+ <element name="SEARCH"/>
</enum>
<enum name="ButtonEventMode">
@@ -451,15 +461,27 @@
<element name="menuTitle">
<description> Optional text to label an app menu button (for certain touchscreen platforms).</description>
</element>
- <element name="timeToDestination"/>
<element name="navigationText">
<description>Navigation text for UpdateTurnList.</description>
</element>
<element name="notificationText">
<description>Text of notification to be displayed on screen.</description>
</element>
+ <element name="locationName">
+ <description> Optional name / title of intended location for SendLocation.</description>
+ </element>
+ <element name="locationDescription">
+ <description> Optional description of intended location / establishment (if applicable) for SendLocation.</description>
+ </element>
+ <element name="addressLines">
+ <description> Optional location address (if applicable) for SendLocation.</description>
+ </element>
+ <element name="phoneNumber">
+ <description> Optional hone number of intended location / establishment (if applicable) for SendLocation.</description>
+ </element>
+ <element name="timeToDestination"/>
<!-- TO DO to be removed -->
- <element name="turnText"/>
+ <element name="turnText"/>
</enum>
<enum name="ImageFieldName">
@@ -514,6 +536,12 @@
<element name="DD_OFF" />
</enum>
+<enum name="EmergencyState">
+ <description>Enumeration that describes possible states of emergency event.</description>
+ <element name="EMERGENCY_ON" />
+ <element name="EMERGENCY_OFF" />
+</enum>
+
<enum name="MediaClockFormat">
<element name="CLOCK1">
<description>
@@ -550,7 +578,7 @@
1|sp : digit "1" or space
c : character out of following character set: sp|0-9|[letters
:|sp : colon or space
- Is used for CID and NGN head unit
+ Is used for CID and NGN head unit
</description>
</element>
<element name="CLOCKTEXT3">
@@ -916,6 +944,7 @@
<description>Enumeration listing possible keyboard events.</description>
<element name="KEYPRESS" />
<element name="ENTRY_SUBMITTED" />
+ <element name="ENTRY_VOICE" />
<element name="ENTRY_CANCELLED" />
<element name="ENTRY_ABORTED" />
</enum>
@@ -965,6 +994,20 @@
<element name="AUTH_CHALLENGE" />
<element name="AUTH_ACK" />
<element name="PROPRIETARY" />
+ <element name="QUERY_APPS" />
+ <element name="LAUNCH_APP" />
+ <element name="LOCK_SCREEN_ICON_URL" />
+ <element name="TRAFFIC_MESSAGE_CHANNEL" />
+ <element name="DRIVER_PROFILE" />
+ <element name="VOICE_SEARCH" />
+ <element name="NAVIGATION" />
+ <element name="PHONE" />
+ <element name="CLIMATE" />
+ <element name="SETTINGS" />
+ <element name="VEHICLE_DIAGNOSTICS" />
+ <element name="EMERGENCY" />
+ <element name="MEDIA" />
+ <element name="FOTA" />
</enum>
<enum name="ECallConfirmationStatus">
@@ -1098,10 +1141,12 @@
<element name="NONE"/>
</enum>
-<enum name="SpeakType">
+<enum name="MethodName">
<description>Defines the type of the request which causes text-to-speech prompt</description>
<element name="ALERT" />
<element name="SPEAK" />
+ <element name="AUDIO_PASS_THRU" />
+ <element name="ALERT_MANEUVER" />
</enum>
<enum name="AlertType">
@@ -1253,6 +1298,21 @@
</param>
</struct>
+<struct name="DeviceInfo">
+ <param name="name" type="String" mandatory="true">
+ <description>The name of the device connected.</description>
+ </param>
+ <param name="id" type="String" mandatory="true">
+ <description>The ID of the device connected</description>
+ </param>
+ <param name="transportType" type="Common.TransportType" mandatory="false">
+ <description>The transport type the named-app's-device is connected over HU(BlueTooth, USB or WiFi). It must be provided in OnAppRegistered and in UpdateDeviceList</description>
+ </param>
+ <param name="isSDLAllowed" type="Boolean" mandatory="false">
+ <description>Sent by SDL in UpdateDeviceList. ’true’ – if device is allowed for PolicyTable Exchange; ‘false’ – if device is NOT allowed for PolicyTable Exchange </description>
+ </param>
+</struct>
+
<struct name="SoftButton">
<param name="type" type="Common.SoftButtonType" mandatory="true">
<description>Describes, whether text, icon or both text and image should be displayed on the soft button. See softButtonType</description>
@@ -1297,22 +1357,51 @@
<param name="icon" type="String" mandatory="false">
<description>Path to application icon stored on HU.</description>
</param>
- <param name="deviceName" type="String" mandatory="true">
- <description>The name of device which the provided application is running on.</description>
+ <param name="deviceInfo" type="Common.DeviceInfo" mandatory="true">
+ <description>The ID, serial number, transport type the named-app's-device is connected over to HU.</description>
+ </param>
+ <param name="policyAppID" type="String" maxlength="50" minlength="1" mandatory="true">
+ <description>Policy ID(=the appID the application registers with) of registered application.</description>
+ </param>
+ <param name="ttsName" type="Common.TTSChunk" minsize="1" maxsize="100" array="true" mandatory="false" >
+ <description>
+ TTS string for VR recognition of the mobile application name, e.g. "Ford Drive Green".
+ Meant to overcome any failing on speech engine in properly pronouncing / understanding app name.
+ May not be empty.
+ May not start with a new line character.
+ Not unique value
+ </description>
+ </param>
+ <param name="vrSynonyms" type="String" maxlength="40" minsize="1" maxsize="100" array="true" mandatory="false">
+ <description>
+ Defines an additional voice recognition command.
+ Must not interfere with any name of previously registered applications(SDL makes check).
+ </description>
</param>
<param name="appID" type="Integer" mandatory="true">
<description>Unique (during ignition cycle) id of the application. To be used in all RPCs sent by both HU system and SDL</description>
</param>
- <param name="hmiDisplayLanguageDesired" type="Common.Language" mandatory="true">
+ <param name="hmiDisplayLanguageDesired" type="Common.Language" mandatory="false">
<description>The language the application intends to use on HU </description>
</param>
- <param name="isMediaApplication" type="Boolean" mandatory="true">
+ <param name="isMediaApplication" type="Boolean" mandatory="false">
<description>Indicates whether it is a media or a non-media application.</description>
</param>
<param name="appType" type="Common.AppHMIType" minsize="1" maxsize="100" array="true" mandatory="false">
<description>List of all applicable app types stating which classifications to be given to the app.</description>
<description>e.g. for platforms like GEN2, this determines which "corner(s)" the app can populate.</description>
</param>
+ <param name="greyOut" type="Boolean" mandatory="false">
+ <description>Indicates whether application should be dimmed on the screen.</description>
+ <description>Applicable only for apps received through QueryApps and still not registered.</description>
+ </param>
+ <param name="requestType" type="Common.RequestType" minsize="0" maxsize="100" array="true" mandatory="false">
+ <description>The list of SystemRequest's RequestTypes allowed by policies for the named application</description>
+ <description>(the app's SystemRequest sent with RequestType out of this list will get 'disallowed' response from SDL).</description>
+ <description>If SDL sends an empty array - any RequestType is allowed for this app.</description>
+ <description>If SDL omits this parameter - none RequestType is allowed for this app</description>
+ <description>(either this is a pre-registered app or such is dictated by policies).</description>
+ </param>
</struct>
<struct name="MenuParams">
@@ -1465,6 +1554,15 @@
</param>
</struct>
+<struct name="HMICapabilities">
+ <param name="navigation" type="Boolean" mandatory="false">
+ <description>Availability of build in Nav. True: Available, False: Not Available</description>
+ </param>
+ <param name="phoneCall" type="Boolean" mandatory="false">
+ <description>Availability of build in phone. True: Available, False: Not Available</description>
+ </param>
+</struct>
+
<struct name="AudioPassThruCapabilities">
<description>
Describes different audio type configurations for PerformAudioPassThru.
@@ -1494,8 +1592,8 @@
</param>
<param name="keypressMode" type="Common.KeypressMode" mandatory="false" >
<description>
- Desired keypress mode.
- If omitted, this value will be set to RESEND_CURRENT_ENTRY.
+ Desired keypress mode.
+ If omitted, this value will be set to RESEND_CURRENT_ENTRY.
</description>
</param>
<param name="limitedCharacterList" type="String" maxlength="1" minsize="1" maxsize="100" array="true" mandatory="false">
@@ -1535,18 +1633,6 @@
</param>
</struct>
-<struct name="DeviceInfo">
- <param name="name" type="String" mandatory="true">
- <description>The name of the device connected.</description>
- </param>
- <param name="id" type="Integer" mandatory="true">
- <description>The ID of the device connected</description>
- </param>
- <param name="isSDLAllowed" type="Boolean" mandatory="false">
- <description>Sent by SDL in UpdateDeviceList. ’true’ – if device is allowed for PolicyTable Exchange; ‘false’ – if device is NOT allowed for PolicyTable Exchange </description>
- </param>
-</struct>
-
<!--IVI part-->
<struct name="GPSData">
<description>Struct with the GPS data.</description>
@@ -1895,6 +1981,24 @@
</description>
</param>
</function>
+ <function name="OnButtonSubscription" messagetype="notification">
+ <description>
+ Sender: SDL->HMI. Purpose: to notify about button subscription state is changed for the named application
+ </description>
+ <param name="name" type="Common.ButtonName" mandatory="true" />
+ <param name="isSubscribed" type="Boolean" mandatory="true">
+ <description>
+ Defines whether the named button has status of 'subscribed' or 'unsubscribed':
+ If "true" - the named button is subscribed.
+ If "false" - the named button is unsubscribed.
+ </description>
+ </param>
+ <param name="appID" type="Integer" mandatory="true">
+ <description>
+ The ID of application that relates to this button-subscription status change.
+ </description>
+ </param>
+ </function>
</interface>
<interface name="BasicCommunication" version="1.0" date="2013-04-12">
@@ -1913,6 +2017,15 @@
<description>Must be 'true' - when the phone call is started on HMI. Must be 'false' when the phone call is ended on HMI</description>
</param>
</function>
+ <function name="OnEmergencyEvent" messagetype="notification">
+ <description>
+ "Sender: HMI->SDL. Conditions: when HMI enters the mode of "911 Assist", or other rear view camera,
+ or something else in the future. Purpose: for SDL to change the audioStreamingState of the related apps to
+ NOT_AUDIBLE when "enabled:true" and back to AUDIBLE when "enabled:false""
+ </description>
+ <param name="enabled" type="Boolean" mandatory="true">
+ </param>
+ </function>
<function name="OnResumeAudioSource" messagetype="notification">
<description>This method must be invoked by SDL to update audio state.</description>
<param name="appID" type="Integer" mandatory="true">
@@ -1923,7 +2036,7 @@
</function>
<function name="UpdateAppList" messagetype="request">
<description>Issued by SDL to notify HMI about new applications registered.</description>
- <param name="applications" type="Common.HMIApplication" mandatory="true" array="true" minsize="1" maxsize="100"/>
+ <param name="applications" type="Common.HMIApplication" mandatory="true" array="true" minsize="0" maxsize="100"/>
</function>
<function name="UpdateAppList" messagetype="response">
</function>
@@ -2052,6 +2165,11 @@
<description>Specifies reason for exiting all apllications.</description>
</param>
</function>
+ <function name="OnAwakeSDL" messagetype="notification">
+ <description>
+ Sender: HMI->SDL. Must be sent to return SDL to normal operation after 'Suspend' or 'LowVoltage' events
+ </description>
+ </function>
<function name="MixingAudioSupported" messagetype="request">
<description>Request from SDL to HMI to find out if the last one supports mixing audio (i.e. recording TTS command and playing audio).</description>
</function>
@@ -2063,6 +2181,12 @@
</function>
<function name="PlayTone" messagetype="notification">
<description>Sent by SDL to HMI to notify that the tone should be played.</description>
+ <param name="appID" type="Integer" mandatory="true">
+ <description>ID of the application that invoked this notification</description>
+ </param>
+ <param name="methodName" type="Common.MethodName" mandatory="true">
+ <description>Defines the name of app's request that initiates playing a tone</description>
+ </param>
</function>
<!-- Policies -->
@@ -2154,8 +2278,8 @@
<param name="fileSize" type="Integer" minvalue="0" maxvalue="100000000000" mandatory="false">
<description>Full Size of file. sends in first OnPutFile notification if file is splited
- into many PutFiles
- </description>
+ into many PutFiles
+ </description>
</param>
<param name="FileName" type="String" maxlength="255" mandatory="true">
@@ -2387,7 +2511,7 @@
<param name="appID" type="Integer" mandatory="true">
<description>ID of application that requested this RPC.</description>
</param>
- <param name="speakType" type="Common.SpeakType" mandatory="false">
+ <param name="speakType" type="Common.MethodName" mandatory="false">
<description>Defines the type of the request which causes text-to-speech</description>
</param>
</function>
@@ -2626,8 +2750,8 @@
</param>
<param name="manualTextEntry" type="String" minlength="0" maxlength="500" mandatory="false">
<description>
- Manually entered text selection, e.g. through keyboard
- Can be returned in lieu of choiceID, depending on trigger source
+ Manually entered text selection, e.g. through keyboard
+ Can be returned in lieu of choiceID, depending on trigger source
</description>
</param>
</function>
@@ -2639,9 +2763,9 @@
<param name="endTime" type="Common.TimeFormat" mandatory="false">
<description>
See TimeFormat.
- endTime can be provided for "COUNTUP" and "COUNTDOWN"; to be used to calculate any visual progress bar (if not provided, this feature is ignored)
- If endTime is greater then startTime for COUNTDOWN or less than startTime for COUNTUP, then the request will return an INVALID_DATA.
- endTime will be ignored for "PAUSE", "RESUME", and "CLEAR"
+ endTime can be provided for "COUNTUP" and "COUNTDOWN"; to be used to calculate any visual progress bar (if not provided, this feature is ignored)
+ If endTime is greater then startTime for COUNTDOWN or less than startTime for COUNTUP, then the request will return an INVALID_DATA.
+ endTime will be ignored for "PAUSE", "RESUME", and "CLEAR"
</description>
</param>
<param name="updateMode" type="Common.ClockUpdateMode" mandatory="true">
@@ -2711,6 +2835,9 @@
<param name="softButtonCapabilities" type="Common.SoftButtonCapabilities" mandatory="false">
<description>Must be returned if the platform supports on-screen SoftButtons.</description>
</param>
+ <param name="hmiCapabilities" type="Common.HMICapabilities" mandatory="false">
+ <description>Specifies the HMI’s capabilities. See HMICapabilities.</description>
+ </param>
</function>
<function name="ChangeRegistration" messagetype="request">
<description>Request from SmartDeviceLink to HMI to change language for app.</description>
@@ -2729,6 +2856,11 @@
<param name="language" type="Common.Language" mandatory="true">
<description>The language application wants to switch to.</description>
</param>
+ <param name="appHMIType" type="Common.AppHMIType" minsize="1" maxsize="100" array="true" mandatory="false">
+ <description>
+ Sent when app's requested-during-registration AppHMIType is changed to different one due to Policies update. Contains the updated list of all allowed app's AppHMITypes.
+ </description>
+ </param>
<param name="appID" type="Integer" mandatory="true">
<description>ID of application that concerns this RPC.</description>
</param>
@@ -2775,8 +2907,8 @@
<function name="SetDisplayLayout" messagetype="request">
<param name="displayLayout" type="String" maxlength="500" mandatory="true">
<description>
- Predefined or dynamically created screen layout.
- Currently only predefined screen layouts are defined.
+ Predefined or dynamically created screen layout.
+ Currently only predefined screen layouts are defined.
</description>
</param>
<param name="appID" type="Integer" mandatory="true">
@@ -2801,27 +2933,27 @@
<description>Used to show a custom form; it can be a parent or child screen. If no parent screen is designated, it is set as a parent screen.</description>
<param name="customFormID" type="String" maxlength="500" mandatory="true">
<description>
- Predefined or dynamically created screen layout.
- Currently only predefined forms are defined.
- Predefined layouts include:
- "DEFAULT" - Default media / non-media screen
- "ONSCREEN_PRESETS" - Custom root media screen containing app-defined onscreen presets.
- "KEYBOARD_SEARCH" - Custom template containing app-configured on-screen keyboard with active search updating; user also can trigger voice search.
- "NAV_FULLSCREEN_MAP" - Custom root template screen containing full screen map with navigation controls.
- "NAV_POI_MENU" - Custom template containing app-defined POI options.
- "NAV_SEARCH_RESULTS" - Custom template containing a list of app-defined search results
- "NAV_POI_INFO" - Custom template containing app-defined POI information (and potentially map data).
+ Predefined or dynamically created screen layout.
+ Currently only predefined forms are defined.
+ Predefined layouts include:
+ "DEFAULT" - Default media / non-media screen
+ "ONSCREEN_PRESETS" - Custom root media screen containing app-defined onscreen presets.
+ "KEYBOARD_SEARCH" - Custom template containing app-configured on-screen keyboard with active search updating; user also can trigger voice search.
+ "NAV_FULLSCREEN_MAP" - Custom root template screen containing full screen map with navigation controls.
+ "NAV_POI_MENU" - Custom template containing app-defined POI options.
+ "NAV_SEARCH_RESULTS" - Custom template containing a list of app-defined search results
+ "NAV_POI_INFO" - Custom template containing app-defined POI information (and potentially map data).
</description>
</param>
<param name="parentFormID" type="String" maxlength="500" defvalue="DEFAULT" mandatory="false">
<description>
- Parent screen of predefined form to display.
- Currently only predefined forms are defined.
- If not provided, then set to "DEFAULT".
- Predefined layouts include:
- "DEFAULT" - Default media / non-media screen
- "ONSCREEN_PRESETS" - Custom root media screen containing app-defined onscreen presets.
- "NAV_FULLSCREEN_MAP" - Custom template containing full screen map with navigation controls.
+ Parent screen of predefined form to display.
+ Currently only predefined forms are defined.
+ If not provided, then set to "DEFAULT".
+ Predefined layouts include:
+ "DEFAULT" - Default media / non-media screen
+ "ONSCREEN_PRESETS" - Custom root media screen containing app-defined onscreen presets.
+ "NAV_FULLSCREEN_MAP" - Custom template containing full screen map with navigation controls.
</description>
</param>
</function>
@@ -2971,6 +3103,9 @@
</function>
<function name="SendLocation" messagetype="request">
<description>That allows the app to send a destination to the embedded nav system.</description>
+ <param name="appID" type="Integer" mandatory="true">
+ <description>ID of application related to this RPC.</description>
+ </param>
<param name="longitudeDegrees" type="Float" minvalue="-180" maxvalue="180" mandatory="true">
</param>
<param name="latitudeDegrees" type="Float" minvalue="-90" maxvalue="90" mandatory="true">
@@ -3035,6 +3170,9 @@
<param name="softButtons" type="Common.SoftButton" minsize="0" maxsize="3" array="true" mandatory="false">
<description>If omitted, only the system defined "Close" SoftButton should be displayed.</description>
</param>
+ <param name="appID" type="Integer" mandatory="true">
+ <description>ID of the application requested this RPC.</description>
+ </param>
</function>
<function name="AlertManeuver" messagetype="response">
</function>
@@ -3095,6 +3233,18 @@
</function>
<function name="StopAudioStream" messagetype="response">
</function>
+ <function name="OnAudioDataStreaming" messagetype="notification">
+ <description>Sender: SDL->HMI. Purpose: notify about raw audio data presence over the URL provided via StartAudioStream SDL's request.</description>
+ <param name="available" type="Boolean" mandatory="true">
+ <description>If "true" - audio data started. If "false" - audio data stopped.</description>
+ </param>
+ </function>
+ <function name="OnVideoDataStreaming" messagetype="notification">
+ <description>Sender: SDL->HMI. Purpose: notify about raw video data presence over the URL provided via StartStream SDL's request.</description>
+ <param name="available" type="Boolean" mandatory="true">
+ <description>If "true" - video data started. If "false" - video data stopped.</description>
+ </param>
+ </function>
</interface>
@@ -3164,7 +3314,7 @@
</param>
<param name="messageData" type="Integer" minvalue="0" maxvalue="255" minsize="1" maxsize="65535" array="true" mandatory="true">
<description>
- Array of bytes comprising CAN message.
+ Array of bytes comprising CAN message.
</description>
</param>
<param name="appID" type="Integer" mandatory="true">
@@ -3174,16 +3324,16 @@
<function name="DiagnosticMessage" messagetype="response">
<param name="messageDataResult" type="Integer" minvalue="0" maxvalue="255" minsize="1" maxsize="65535" array="true" mandatory="true">
<description>
- Array of bytes comprising CAN message result.
+ Array of bytes comprising CAN message result.
</description>
</param>
</function>
<function name="SubscribeVehicleData" messagetype="request">
<description>
- Subscribes for specific published data items.
- The data will be only sent if it has changed.
- The application will be notified by the onVehicleData notification whenever new data is available.
- To unsubscribe the notifications, use unsubscribe with the same subscriptionType.
+ Subscribes for specific published data items.
+ The data will be only sent if it has changed.
+ The application will be notified by the onVehicleData notification whenever new data is available.
+ To unsubscribe the notifications, use unsubscribe with the same subscriptionType.
</description>
<param name="appID" type="Integer" mandatory="true">
<description>ID of application that requested this RPC.</description>
@@ -3843,6 +3993,12 @@
<param name="priority" type="Common.AppPriority" mandatory="false">
<description>Send to HMI so that it can coordinate order of requests/notifications correspondingly.</description>
</param>
+ <param name="requestType" type="Common.RequestType" minsize="0" maxsize="100" array="true" mandatory="false">
+ <description>The list of SystemRequest's RequestTypes allowed by policies for the named application (the app's SystemRequest sent with RequestType out of this list will get 'disallowed' response from SDL).
+ If SDL sends an empty array - any RequestType is allowed for this app.
+ If SDL omits this parameter - nothing is changed for RequestType in the policies
+ </description>
+ </param>
</function>
<function name="OnSDLConsentNeeded" messagetype="notification">