forked from smartdevicelink/sdl_core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
MOBILE_API.xml
8426 lines (7646 loc) · 433 KB
/
MOBILE_API.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0" standalone="no"?>
<?xml-stylesheet type="text/xml" href="protocol2html.xsl"?>
<interface name="SmartDeviceLink RAPI" version="6.0.0" minVersion="1.0" date="2019-03-19">
<enum name="Result" internal_scope="base" since="1.0">
<element name="SUCCESS">
<description>The request succeeded</description>
</element>
<element name="UNSUPPORTED_REQUEST">
<description>The request is not supported by the headunit</description>
</element>
<element name="UNSUPPORTED_RESOURCE">
<description>
A button that was requested for subscription is not supported under the current system.
</description>
</element>
<element name="DISALLOWED">
<description>RPC is not authorized in local policy table.</description>
</element>
<element name="REJECTED">
<description>
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.
</description>
</element>
<element name="ABORTED">
<description>
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.
</description>
</element>
<element name="IGNORED">
<description>
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
</description>
</element>
<element name="RETRY">
<description>The user interrupted the RPC (e.g. PerformAudioPassThru) and indicated to start over. Note, the app must issue the new RPC.</description>
</element>
<element name="IN_USE">
<description>
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.
</description>
</element>
<element name="VEHICLE_DATA_NOT_AVAILABLE" since="2.0">
<description>The requested vehicle data is not available on this vehicle or is not published.</description>
</element>
<element name="TIMED_OUT">
<description>Overlay reached the maximum timeout and closed.</description>
</element>
<element name="INVALID_DATA">
<description>
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
</description>
</element>
<element name="CHAR_LIMIT_EXCEEDED"></element>
<element name="INVALID_ID">
<description>
One of the provided IDs is not valid. For example
This applies to CorrelationID, SubscriptionID, CommandID, MenuID, etc.
</description>
</element>
<element name="DUPLICATE_NAME">
<description>There was a conflict with an registered name (application or menu item) or vr command</description>
</element>
<element name="APPLICATION_NOT_REGISTERED">
<description>An command can not be executed because no application has been registered with RegisterApplication.</description>
</element>
<element name="WRONG_LANGUAGE">
<description>
The requested language is currently not supported.
Might be because of a mismatch of the currently active language on the headunit and the requested language
</description>
</element>
<element name="OUT_OF_MEMORY">
<description>The system could not process the request because the necessary memory couldn't be allocated</description>
</element>
<element name="TOO_MANY_PENDING_REQUESTS">
<description>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.</description>
</element>
<element name="TOO_MANY_APPLICATIONS">
<description>There are already too many registered applications</description>
</element>
<element name="APPLICATION_REGISTERED_ALREADY">
<description>RegisterApplication has been called again, after a RegisterApplication was successful before.</description>
</element>
<element name="WARNINGS">
<description>The RPC (e.g. SubscribeVehicleData) executed successfully but one or more items have a warning or failure.</description>
</element>
<element name="GENERIC_ERROR">
<description>Provided data is valid but something went wrong in the lower layers.</description>
</element>
<element name="USER_DISALLOWED" since="2.0">
<description>RPC is included in a functional group explicitly blocked by the user.</description>
</element>
<element name="TRUNCATED_DATA">
<description>The RPC (e.g. ReadDID) executed successfully but the data exceeded the platform maximum threshold and thus, only part of the data is available.</description>
</element>
<element name="UNSUPPORTED_VERSION" since="2.0">
<description>Sync doesn't support the protocol that is requested by the mobile application</description>
</element>
<element name="VEHICLE_DATA_NOT_ALLOWED" since="2.0">
<description>The user has turned off access to vehicle data, and it is globally unavailable to mobile applications.</description>
</element>
<element name="FILE_NOT_FOUND" since="3.0">
<description>A specified file could not be found on the headunit.</description>
</element>
<element name="CANCEL_ROUTE">
<description>User selected to Cancel Route.</description>
</element>
<element name="SAVED" since="2.0">
<description>The RPC (e.g. Slider) executed successfully and the user elected to save the current position / value.</description>
</element>
<element name="INVALID_CERT" since="3.0">
<description>The certificate provided during authentication is invalid.</description>
</element>
<element name="EXPIRED_CERT" since="3.0">
<description>The certificate provided during authentication is expired.</description>
</element>
<element name="RESUME_FAILED" since="3.0">
<description>The provided hash ID does not match the hash of the current set of registered data or the core could not resume the previous data.</description>
</element>
<element name="DATA_NOT_AVAILABLE" since="4.5">
<description>The requested information is currently not available. This is different than UNSUPPORTED_RESOURCE because it implies the data is at some point available. </description>
</element>
<element name="READ_ONLY" since="4.5">
<description>The value being set is read only</description>
</element>
<element name="CORRUPTED_DATA" since="5.0">
<description>The data sent failed to pass CRC check in receiver end</description>
</element>
<element name="ENCRYPTION_NEEDED" since="6.0">
<description>SDL receives an un-encrypted RPC request that needs protection. </description>
</element>
</enum>
<enum name="ButtonPressMode" since="1.0">
<element name="LONG">
<description>
A button was released, after it was pressed for a long time
Actual timing is defined by the headunit and may vary
</description>
</element>
<element name="SHORT">
<description>
A button was released, after it was pressed for a short time
Actual timing is defined by the headunit and may vary
</description>
</element>
</enum>
<enum name="ButtonEventMode" since="1.0">
<element name="BUTTONUP">
<description>A button has been released up</description>
</element>
<element name="BUTTONDOWN">
<description>A button has been pressed down</description>
</element>
</enum>
<enum name="Language" since="1.0">
<element name="EN-US" internal_name="EN_US">
<description>English - US</description>
</element>
<element name="ES-MX" internal_name="ES_MX">
<description>Spanish - Mexico</description>
</element>
<element name="FR-CA" internal_name="FR_CA">
<description>French - Canada</description>
</element>
<element name="DE-DE" internal_name="DE_DE" since="2.0">
<description>German - Germany</description>
</element>
<element name="ES-ES" internal_name="ES_ES" since="2.0">
<description>Spanish - Spain</description>
</element>
<element name="EN-GB" internal_name="EN_GB" since="2.0">
<description>English - GB</description>
</element>
<element name="RU-RU" internal_name="RU_RU" since="2.0">
<description>Russian - Russia</description>
</element>
<element name="TR-TR" internal_name="TR_TR" since="2.0">
<description>Turkish - Turkey</description>
</element>
<element name="PL-PL" internal_name="PL_PL" since="2.0">
<description>Polish - Poland</description>
</element>
<element name="FR-FR" internal_name="FR_FR" since="2.0">
<description>French - France</description>
</element>
<element name="IT-IT" internal_name="IT_IT" since="2.0">
<description>Italian - Italy</description>
</element>
<element name="SV-SE" internal_name="SV_SE" since="2.0">
<description>Swedish - Sweden</description>
</element>
<element name="PT-PT" internal_name="PT_PT" since="2.0">
<description>Portuguese - Portugal</description>
</element>
<element name="NL-NL" internal_name="NL_NL" since="2.0">
<description>Dutch (Standard) - Netherlands</description>
</element>
<element name="EN-AU" internal_name="EN_AU" since="2.0">
<description>English - Australia</description>
</element>
<element name="ZH-CN" internal_name="ZH_CN" since="2.0">
<description>Mandarin - China</description>
</element>
<element name="ZH-TW" internal_name="ZH_TW" since="2.0">
<description>Mandarin - Taiwan</description>
</element>
<element name="JA-JP" internal_name="JA_JP" since="2.0">
<description>Japanese - Japan</description>
</element>
<element name="AR-SA" internal_name="AR_SA" since="2.0">
<description>Arabic - Saudi Arabia</description>
</element>
<element name="KO-KR" internal_name="KO_KR" since="2.0">
<description>Korean - South Korea</description>
</element>
<element name="PT-BR" internal_name="PT_BR" since="2.0">
<description>Portuguese - Brazil</description>
</element>
<element name="CS-CZ" internal_name="CS_CZ" since="2.0">
<description>Czech - Czech Republic</description>
</element>
<element name="DA-DK" internal_name="DA_DK" since="2.0">
<description>Danish - Denmark</description>
</element>
<element name="NO-NO" internal_name="NO_NO" since="2.0">
<description>Norwegian - Norway</description>
</element>
<element name="NL-BE" internal_name="NL_BE" since="2.0">
<description>Dutch (Flemish) - Belgium</description>
</element>
<element name="EL-GR" internal_name="EL_GR" since="2.0">
<description>Greek - Greece</description>
</element>
<element name="HU-HU" internal_name="HU_HU" since="2.0">
<description>Hungarian - Hungary</description>
</element>
<element name="FI-FI" internal_name="FI_FI" since="2.0">
<description>Finnish - Finland</description>
</element>
<element name="SK-SK" internal_name="SK_SK" since="2.0">
<description>Slovak - Slovakia</description>
</element>
<element name="EN-IN" internal_name="EN_IN" since="4.5">
<description>English - India</description>
</element>
<element name="TH-TH" internal_name="TH_TH" since="4.5">
<description>Thai - Thailand</description>
</element>
<element name="EN-SA" internal_name="EN_SA" since="4.5">
<description>English - Middle East</description>
</element>
<element name="HE-IL" internal_name="HE_IL" since="4.5">
<description>Hebrew - Israel</description>
</element>
<element name="RO-RO" internal_name="RO_RO" since="4.5">
<description>Romanian - Romania</description>
</element>
<element name="UK-UA" internal_name="UK_UA" since="4.5">
<description>Ukrainian - Ukraine</description>
</element>
<element name="ID-ID" internal_name="ID_ID" since="4.5">
<description>Indonesian - Indonesia</description>
</element>
<element name="VI-VN" internal_name="VI_VN" since="4.5">
<description>Vietnamese - Vietnam</description>
</element>
<element name="MS-MY" internal_name="MS_MY" since="4.5">
<description>Malay - Malaysia</description>
</element>
<element name="HI-IN" internal_name="HI_IN" since="4.5">
<description>Hindi - India</description>
</element>
</enum>
<enum name="UpdateMode" since="1.0">
<description>Describes how the media clock timer should behave on the platform</description>
<element name="COUNTUP" >
<description>Starts the media clock timer counting upwards, as in time elapsed.</description>
</element>
<element name="COUNTDOWN" >
<description>Starts the media clock timer counting downwards, as in time remaining.</description>
</element>
<element name="PAUSE" >
<description>Pauses the media clock timer</description>
</element>
<element name="RESUME" >
<description>Resume the media clock timer</description>
</element>
<element name="CLEAR" >
<description>Clears the media clock timer (previously done through Show->mediaClock)</description>
</element>
</enum>
<enum name="TimerMode" since="1.0">
<element name="UP" >
<description>Causes the media clock timer to update from 0:00 to a specified time</description>
</element>
<element name="DOWN" >
<description>Causes the media clock timer to update from a specified time to 0:00</description>
</element>
<element name="NONE" >
<description>Indicates to not use the media clock timer</description>
</element>
</enum>
<enum name="InteractionMode" since="1.0">
<description>For application-requested interactions, this mode indicates the method in which the user is notified and uses the interaction.</description>
<element name="MANUAL_ONLY" >
<description>This mode causes the interaction to only occur on the display, meaning the choices are provided only via the display. No Voice Interaction.</description>
</element>
<element name="VR_ONLY" >
<description>This mode causes the interaction to only occur using the headunits VR system. Selections are made by saying the command.</description>
</element>
<element name="BOTH" >
<description>This mode causes both a VR and display selection option for an interaction. The user will first be asked via Voice Interaction (if available). If this is unsuccessful, the system will switch to manual input.</description>
</element>
</enum>
<enum name="LayoutMode" since="3.0">
<description>For touchscreen interactions, the mode of how the choices are presented.</description>
<element name="ICON_ONLY" >
<description>This mode causes the interaction to display the previous set of choices as icons.</description>
</element>
<element name="ICON_WITH_SEARCH" >
<description>This mode causes the interaction to display the previous set of choices as icons along with a search field in the HMI.</description>
</element>
<element name="LIST_ONLY" >
<description>This mode causes the interaction to display the previous set of choices as a list.</description>
</element>
<element name="LIST_WITH_SEARCH" >
<description>This mode causes the interaction to display the previous set of choices as a list along with a search field in the HMI.</description>
</element>
<element name="KEYBOARD" >
<description>This mode causes the interaction to immediately display a keyboard entry through the HMI.</description>
</element>
</enum>
<enum name="WindowType" since="6.0">
<element name="MAIN">
<description>
This window type describes the main window on a display.
</description>
</element>
<element name="WIDGET">
<description>
A widget is a small window that the app can create to provide information and soft buttons for quick app control.
</description>
</element>
</enum>
<enum name="PredefinedWindows" since="6.0">
<element name="DEFAULT_WINDOW" value="0">
<description>The default window is a main window pre-created on behalf of the app.</description>
</element>
<element name="PRIMARY_WIDGET" value="1">
<description>The primary widget of the app.</description>
</element>
</enum>
<enum name="HMILevel" since="1.0">
<description>Enumeration that describes current levels of HMI.</description>
<element name="FULL" internal_name="HMI_FULL" />
<element name="LIMITED" internal_name="HMI_LIMITED" />
<element name="BACKGROUND" internal_name="HMI_BACKGROUND" />
<element name="NONE" internal_name="HMI_NONE" />
</enum>
<enum name="AudioStreamingState" since="1.0">
<description>Enumeration that describes possible states of audio streaming.</description>
<element name="AUDIBLE" />
<element name="ATTENUATED" />
<element name="NOT_AUDIBLE" />
</enum>
<enum name="SystemAction" since="1.0">
<description>Enumeration that describes system actions that can be triggered.</description>
<element name="DEFAULT_ACTION">
<description>Default action occurs. Standard behavior (e.g. SoftButton clears overlay).</description>
</element>
<element name="STEAL_FOCUS">
<description>App is brought into HMI_FULL.</description>
</element>
<element name="KEEP_CONTEXT">
<description>Current system context is maintained. An overlay is persisted even though a SoftButton has been pressed and the notification sent.</description>
</element>
</enum>
<enum name="SystemContext" since="1.0">
<description>Enumeration that describes possible contexts an app's HMI might be in. Communicated to whichever app is in HMI FULL, except Alert.</description>
<element name="MAIN" internal_name="SYSCTXT_MAIN">
<description>The app's persistent display (whether media/non-media/navigation) is fully visible onscreen.</description>
</element>
<element name="VRSESSION" internal_name="SYSCTXT_VRSESSION">
<description>The system is currently in a VR session (with whatever dedicated VR screen being overlaid onscreen).</description>
</element>
<element name="MENU" internal_name="SYSCTXT_MENU">
<description>The system is currently displaying an in-App menu onscreen.</description>
</element>
<element name="HMI_OBSCURED" internal_name="SYSCTXT_HMI_OBSCURED">
<description>The app's display HMI is currently being obscured by either a system or other app's overlay.</description>
</element>
<element name="ALERT" internal_name="SYSCTXT_ALERT">
<description>Broadcast only to whichever app has an alert currently being displayed.</description>
</element>
</enum>
<enum name="VideoStreamingState" since="5.0">
<description>Enumeration that describes possible states of video streaming. </description>
<element name="STREAMABLE" />
<element name="NOT_STREAMABLE" />
</enum>
<enum name="SoftButtonType" since="2.0">
<description>Contains information about the SoftButton capabilities.</description>
<element name="TEXT" internal_name="SBT_TEXT"/>
<element name="IMAGE" internal_name="SBT_IMAGE"/>
<element name="BOTH" internal_name="SBT_BOTH"/>
</enum>
<enum name="AppInterfaceUnregisteredReason" since="1.0">
<description>Error code, which comes from the module side.</description>
<!-- Deprecate
<element name="USER_EXIT" />
-->
<element name="IGNITION_OFF" />
<element name="BLUETOOTH_OFF" />
<element name="USB_DISCONNECTED" />
<element name="REQUEST_WHILE_IN_NONE_HMI_LEVEL" />
<element name="TOO_MANY_REQUESTS" />
<element name="DRIVER_DISTRACTION_VIOLATION" />
<element name="LANGUAGE_CHANGE" />
<element name="MASTER_RESET" />
<element name="FACTORY_DEFAULTS" />
<element name="APP_UNAUTHORIZED" since="2.0" />
<element name="PROTOCOL_VIOLATION" since="4.0" />
<element name="UNSUPPORTED_HMI_RESOURCE" since="4.1" />
</enum>
<enum name="TriggerSource" since="1.0">
<description>Indicates the source from where the command was triggered.</description>
<element name="MENU" internal_name="TS_MENU" />
<element name="VR" internal_name="TS_VR" />
<element name="KEYBOARD" internal_name="TS_KEYBOARD" since="3.0" />
</enum>
<enum name="HmiZoneCapabilities" since="1.0">
<description>Contains information about the HMI zone capabilities.</description>
<description>For future use.</description>
<element name="FRONT" />
<element name="BACK" />
</enum>
<enum name="SpeechCapabilities" since="1.0">
<description>Contains information about the TTS capabilities.</description>
<element name="TEXT" internal_name="SC_TEXT"/>
<element name="SAPI_PHONEMES" />
<element name="LHPLUS_PHONEMES" />
<element name="PRE_RECORDED" />
<element name="SILENCE" />
<element name="FILE" since="5.0" />
</enum>
<enum name="VrCapabilities" since="1.0">
<description>Contains information about the VR capabilities.</description>
<element name="TEXT" internal_name="VR_TEXT"/>
</enum>
<enum name="PrerecordedSpeech" since="1.0">
<description>Contains a list of prerecorded speech items present on the platform.</description>
<element name="HELP_JINGLE" />
<element name="INITIAL_JINGLE" />
<element name="LISTEN_JINGLE" />
<element name="POSITIVE_JINGLE" />
<element name="NEGATIVE_JINGLE" />
</enum>
<enum name="SamplingRate" since="2.0">
<description>Describes different sampling options for PerformAudioPassThru.</description>
<element name="8KHZ" internal_name="SamplingRate_8KHZ">
<description>Sampling rate of 8000 Hz.</description>
</element>
<element name="16KHZ" internal_name="SamplingRate_16KHZ">
<description>Sampling rate of 16000 Hz.</description>
</element>
<element name="22KHZ" internal_name="SamplingRate_22KHZ">
<description>Sampling rate of 22050 Hz.</description>
</element>
<element name="44KHZ" internal_name="SamplingRate_44KHZ">
<description>Sampling rate of 44100 Hz.</description>
</element>
</enum>
<enum name="BitsPerSample" since="2.0">
<description>Describes different quality options for PerformAudioPassThru.</description>
<element name="8_BIT" internal_name="BitsPerSample_8_BIT">
<description>Audio sample is 8 bits wide, unsigned.</description>
</element>
<element name="16_BIT" internal_name="BitsPerSample_16_BIT">
<description>Audio sample is 16 bits wide, signed, and in little endian.</description>
</element>
</enum>
<enum name="AudioType" since="2.0">
<description>Describes different audio type options for PerformAudioPassThru.</description>
<element name="PCM">
<description>Linear PCM.</description>
</element>
</enum>
<struct name="AudioPassThruCapabilities" since="2.0">
<description>
Describes different audio type configurations for PerformAudioPassThru.
e.g. {8kHz,8-bit,PCM}
The audio is recorded in monaural.
</description>
<param name="samplingRate" type="SamplingRate" mandatory="true"/>
<param name="bitsPerSample" type="BitsPerSample" mandatory="true"/>
<param name="audioType" type="AudioType" mandatory="true"/>
</struct>
<enum name="VehicleDataType" since="2.0">
<description>Defines the data types that can be published and subscribed to.</description>
<element name="VEHICLEDATA_GPS">
<description>Notifies GPSData may be subscribed</description>
</element>
<element name="VEHICLEDATA_SPEED" />
<element name="VEHICLEDATA_RPM" />
<element name="VEHICLEDATA_FUELLEVEL" />
<element name="VEHICLEDATA_FUELLEVEL_STATE" />
<element name="VEHICLEDATA_FUELCONSUMPTION" />
<element name="VEHICLEDATA_EXTERNTEMP" />
<element name="VEHICLEDATA_VIN" />
<element name="VEHICLEDATA_PRNDL" />
<element name="VEHICLEDATA_TIREPRESSURE" />
<element name="VEHICLEDATA_ODOMETER" />
<element name="VEHICLEDATA_BELTSTATUS" />
<element name="VEHICLEDATA_BODYINFO" />
<element name="VEHICLEDATA_DEVICESTATUS" />
<element name="VEHICLEDATA_ECALLINFO" />
<element name="VEHICLEDATA_AIRBAGSTATUS" />
<element name="VEHICLEDATA_EMERGENCYEVENT" />
<element name="VEHICLEDATA_CLUSTERMODESTATUS" />
<element name="VEHICLEDATA_MYKEY" />
<element name="VEHICLEDATA_BRAKING" />
<element name="VEHICLEDATA_WIPERSTATUS" />
<element name="VEHICLEDATA_HEADLAMPSTATUS" />
<element name="VEHICLEDATA_BATTVOLTAGE" />
<element name="VEHICLEDATA_ENGINETORQUE" />
<element name="VEHICLEDATA_ACCPEDAL" />
<element name="VEHICLEDATA_STEERINGWHEEL" />
<element name="VEHICLEDATA_TURNSIGNAL" since="5.0" />
<element name="VEHICLEDATA_FUELRANGE" since="5.0" />
<element name="VEHICLEDATA_ENGINEOILLIFE" since="5.0" />
<element name="VEHICLEDATA_ELECTRONICPARKBRAKESTATUS" since="5.0" />
<element name="VEHICLEDATA_CLOUDAPPVEHICLEID" since="5.1"/>
<element name="VEHICLEDATA_OEM_CUSTOM_DATA" since="6.0"/>
</enum>
<enum name="HybridAppPreference" since="5.1">
<description>Enumeration for the user's preference of which app type to use when both are available</description>
<element name="MOBILE" />
<element name="CLOUD" />
<element name="BOTH" />
</enum>
<struct name="CloudAppProperties" since="5.1">
<param name="nicknames" type="String" minlength="0" maxlength="100" array="true" minsize="0" maxsize="100" mandatory="false">
<description>An array of app names a cloud app is allowed to register with. If included in a SetCloudAppProperties request, this value will overwrite the existing "nicknames" field in the app policies section of the policy table.</description>
</param>
<param name="appID" type="String" maxlength="100" mandatory="true"/>
<param name="enabled" type="Boolean" mandatory="false">
<description>If true, cloud app will be included in HMI RPC UpdateAppList</description>
</param>
<param name="authToken" type="String" maxlength="65535" mandatory="false">
<description>Used to authenticate websocket connection on app activation</description>
</param>
<param name="cloudTransportType" type="String" maxlength="100" mandatory="false">
<description>Specifies the connection type Core should use</description>
</param>
<param name="hybridAppPreference" type="HybridAppPreference" mandatory="false">
<description>Specifies the user preference to use the cloud app version or mobile app version when both are available</description>
</param>
<param name="endpoint" type="String" maxlength="65535" mandatory="false">
<description>Specifies the endpoint which Core will attempt to connect to when this app is selected</description>
</param>
</struct>
<enum name="ButtonName" since="1.0">
<description>Defines the hard (physical) and soft (touchscreen) buttons available from the module</description>
<element name="OK" />
<element name="PLAY_PAUSE" since="5.0">
<description>
The button name for the physical Play/Pause
toggle that can be used by media apps.
</description>
<warning>
Please use the physical OK button in order to
use a Play/Pause toggle for versions < 4.5.0.
</warning>
</element>
<element name="SEEKLEFT" />
<element name="SEEKRIGHT" />
<element name="TUNEUP" />
<element name="TUNEDOWN" />
<element name="PRESET_0" />
<element name="PRESET_1" />
<element name="PRESET_2" />
<element name="PRESET_3" />
<element name="PRESET_4" />
<element name="PRESET_5" />
<element name="PRESET_6" />
<element name="PRESET_7" />
<element name="PRESET_8" />
<element name="PRESET_9" />
<element name="CUSTOM_BUTTON" />
<element name="SEARCH" />
<!-- Climate Buttons -->
<element name="AC_MAX" since="4.5" />
<element name="AC" since="4.5" />
<element name="RECIRCULATE" since="4.5" />
<element name="FAN_UP" since="4.5" />
<element name="FAN_DOWN" since="4.5" />
<element name="TEMP_UP" since="4.5" />
<element name="TEMP_DOWN" since="4.5" />
<element name="DEFROST_MAX" since="4.5" />
<element name="DEFROST" since="4.5" />
<element name="DEFROST_REAR" since="4.5" />
<element name="UPPER_VENT" since="4.5" />
<element name="LOWER_VENT" since="4.5" />
<!-- Radio Buttons -->
<element name="VOLUME_UP" since="4.5" />
<element name="VOLUME_DOWN" since="4.5" />
<element name="EJECT" since="4.5" />
<element name="SOURCE" since="4.5" />
<element name="SHUFFLE" since="4.5" />
<element name="REPEAT" since="4.5" />
<!-- Navigation Buttons -->
<element name="NAV_CENTER_LOCATION" since="6.0" />
<element name="NAV_ZOOM_IN" since="6.0" />
<element name="NAV_ZOOM_OUT" since="6.0" />
<element name="NAV_PAN_UP" since="6.0" />
<element name="NAV_PAN_UP_RIGHT" since="6.0" />
<element name="NAV_PAN_RIGHT" since="6.0" />
<element name="NAV_PAN_DOWN_RIGHT" since="6.0" />
<element name="NAV_PAN_DOWN" since="6.0" />
<element name="NAV_PAN_DOWN_LEFT" since="6.0" />
<element name="NAV_PAN_LEFT" since="6.0" />
<element name="NAV_PAN_UP_LEFT" since="6.0" />
<element name="NAV_TILT_TOGGLE" since="6.0" >
<description>If supported, this toggles between a top-down view and an angled/3D view. If your app supports different, but substantially similar options, then you may implement those. If you don't implement these or similar options, do not subscribe to this button.</description>
</element>
<element name="NAV_ROTATE_CLOCKWISE" since="6.0" />
<element name="NAV_ROTATE_COUNTERCLOCKWISE" since="6.0" />
<element name="NAV_HEADING_TOGGLE" since="6.0" >
<description>If supported, this toggles between locking the orientation to north or to the vehicle's heading. If your app supports different, but substantially similar options, then you may implement those. If you don't implement these or similar options, do not subscribe to this button.</description>
</element>
</enum>
<enum name="MediaClockFormat" since="1.0">
<element name="CLOCK1">
<description>
minutesFieldWidth = 2;minutesFieldMax = 19;secondsFieldWidth = 2;secondsFieldMax = 99;maxHours = 19;maxMinutes = 59;maxSeconds = 59;
used for Type II and CID headunits
</description>
</element>
<element name="CLOCK2">
<description>
minutesFieldWidth = 3;minutesFieldMax = 199;secondsFieldWidth = 2;secondsFieldMax = 99;maxHours = 59;maxMinutes = 59;maxSeconds = 59;
used for Type V headunit
</description>
</element>
<element name="CLOCK3" since="2.0">
<description>
minutesFieldWidth = 2;minutesFieldMax = 59;secondsFieldWidth = 2;secondsFieldMax = 59;maxHours = 9;maxMinutes = 59;maxSeconds = 59;
used for GEN1.1 MFD3/4/5 headunits
</description>
</element>
<element name="CLOCKTEXT1">
<description>
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
</description>
</element>
<element name="CLOCKTEXT2">
<description>
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
</description>
</element>
<element name="CLOCKTEXT3">
<description>
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
</description>
</element>
<element name="CLOCKTEXT4" since="2.0">
<description>
6 chars possible
Format: c :|sp c c : c c
:|sp : colon or space
c : character out of following character set: sp|0-9|[letters].
used for GEN1.1 MFD3/4/5 headunits
</description>
</element>
</enum>
<enum name="DisplayType" deprecated="true" since="5.0">
<description>See DAES for further infos regarding the displays</description>
<element name="CID"/>
<element name="TYPE2" />
<element name="TYPE5" />
<element name="NGN" />
<element name="GEN2_8_DMA" since="3.0" />
<element name="GEN2_6_DMA" since="3.0" />
<element name="MFD3" since="2.0" />
<element name="MFD4" since="2.0" />
<element name="MFD5" since="2.0" />
<element name="GEN3_8-INCH" internal_name="GEN3_8_INCH" since="3.0" />
<element name="SDL_GENERIC" since="4.0" />
<history>
<enum name="DisplayType" since="1.0" until="5.0"/>
</history>
</enum>
<enum name="TextFieldName" since="1.0">
<element name="mainField1">
<description>The first line of first set of main fields of the persistent display; applies to "Show"</description>
</element>
<element name="mainField2">
<description>The second line of first set of main fields of the persistent display; applies to "Show"</description>
</element>
<element name="mainField3">
<description>The first line of second set of main fields of persistent display; applies to "Show"</description>
</element>
<element name="mainField4">
<description>The second line of second set of main fields of the persistent display; applies to "Show"</description>
</element>
<element name="statusBar">
<description>The status bar on NGN; applies to "Show"</description>
</element>
<element name="mediaClock">
<description>Text value for MediaClock field; applies to "Show"</description>
</element>
<element name="mediaTrack">
<description>The track field of NGN and GEN1.1 MFD displays. This field is only available for media applications; applies to "Show"</description>
</element>
<element name="templateTitle" since="6.0">
<description>The title of the new template that will be displayed; applies to "Show"</description>
</element>
<element name="alertText1">
<description>The first line of the alert text field; applies to "Alert"</description>
</element>
<element name="alertText2" since="2.0">
<description>The second line of the alert text field; applies to "Alert"</description>
</element>
<element name="alertText3" since="2.0">
<description>The third line of the alert text field; applies to "Alert"</description>
</element>
<element name="scrollableMessageBody" since="2.0">
<description>Long form body of text that can include newlines and tabs; applies to "ScrollableMessage"</description>
</element>
<element name="initialInteractionText" since="2.0">
<description> First line suggestion for a user response (in the case of VR enabled interaction)</description>
</element>
<element name="navigationText1" since="2.0">
<description> First line of navigation text</description>
</element>
<element name="navigationText2" since="2.0">
<description> Second line of navigation text</description>
</element>
<element name="ETA" since="2.0">
<description> Estimated Time of Arrival time for navigation</description>
</element>
<element name="totalDistance" since="2.0">
<description> Total distance to destination for navigation</description>
</element>
<element name="audioPassThruDisplayText1" since="2.0">
<description> First line of text for audio pass thru</description>
</element>
<element name="audioPassThruDisplayText2" since="2.0">
<description> Second line of text for audio pass thru</description>
</element>
<element name="sliderHeader" since="2.0">
<description> Header text for slider</description>
</element>
<element name="sliderFooter" since="2.0">
<description> Footer text for slider</description>
</element>
<element name="menuName">
<description> Primary text for Choice</description>
</element>
<element name="secondaryText">
<description> Secondary text for Choice</description>
</element>
<element name="tertiaryText">
<description> Tertiary text for Choice</description>
</element>
<element name="menuTitle">
<description> Optional text to label an app menu button (for certain touchscreen platforms).</description>
</element>
<element name="locationName" since="4.0">
<description> Optional name / title of intended location for SendLocation.</description>
</element>
<element name="locationDescription" since="4.0">
<description> Optional description of intended location / establishment (if applicable) for SendLocation.</description>
</element>
<element name="addressLines" since="4.0">
<description> Optional location address (if applicable) for SendLocation.</description>
</element>
<element name="phoneNumber" since="4.0">
<description> Optional hone number of intended location / establishment (if applicable) for SendLocation.</description>
</element>
</enum>
<enum name="ImageFieldName" since="3.0">
<element name="softButtonImage">
<description>The image field for SoftButton</description>
</element>
<element name="choiceImage">
<description>The first image field for Choice</description>
</element>
<element name="choiceSecondaryImage">
<description>The secondary image field for Choice</description>
</element>
<element name="vrHelpItem">
<description>The image field for vrHelpItem</description>
</element>
<element name="turnIcon">
<description>The image field for Turn</description>
</element>
<element name="menuIcon">
<description>The image field for the menu icon in SetGlobalProperties</description>
</element>
<element name="cmdIcon">
<description>The image field for AddCommand</description>
</element>
<element name="appIcon">
<description>The image field for the app icon (set by setAppIcon)</description>
</element>
<element name="graphic">
<description>The primary image field for Show</description>
</element>
<element name="secondaryGraphic" since="5.0">
<description>The secondary image field for Show</description>
</element>
<element name="showConstantTBTIcon">
<description>The primary image field for ShowConstantTBT</description>
</element>
<element name="showConstantTBTNextTurnIcon">
<description>The secondary image field for ShowConstantTBT</description>
</element>
<element name="locationImage" since="4.0">
<description>The optional image of a destination / location</description>
</element>
<element name="alertIcon" since="6.0">
<description>The image field for Alert</description>
</element>
</enum>
<enum name="CharacterSet" since="1.0">
<description>The list of potential character sets</description>
<element name="TYPE2SET">
<description>See [@TODO: create file ref]</description>
</element>
<element name="TYPE5SET">
<description>See [@TODO: create file ref]</description>
</element>
<element name="CID1SET">
<description>See [@TODO: create file ref]</description>
</element>
<element name="CID2SET">
<description>See [@TODO: create file ref]</description>
</element>
</enum>
<enum name="TextAlignment" since="1.0">
<description>The list of possible alignments, left, right, or centered</description>
<element name="LEFT_ALIGNED" />
<element name="RIGHT_ALIGNED" />
<element name="CENTERED" />
</enum>
<enum name="TBTState" since="2.0">
<description>Enumeration that describes possible states of turn-by-turn client or SmartDeviceLink app.</description>
<element name="ROUTE_UPDATE_REQUEST" />
<element name="ROUTE_ACCEPTED" />
<element name="ROUTE_REFUSED" />
<element name="ROUTE_CANCELLED" />
<element name="ETA_REQUEST" />
<element name="NEXT_TURN_REQUEST" />
<element name="ROUTE_STATUS_REQUEST" />
<element name="ROUTE_SUMMARY_REQUEST" />
<element name="TRIP_STATUS_REQUEST" />
<element name="ROUTE_UPDATE_REQUEST_TIMEOUT" />
</enum>
<enum name="DriverDistractionState" since="2.0">
<description>Enumeration that describes possible states of driver distraction.</description>
<element name="DD_ON" />
<element name="DD_OFF" />
</enum>
<enum name="ImageType" since="2.0">
<description>Contains information about the type of image.</description>
<element name="STATIC" />
<element name="DYNAMIC" />
</enum>
<enum name="DeliveryMode" since="4.1">
<description>The mode in which the SendLocation request is sent</description>
<element name="PROMPT" />
<element name="DESTINATION" />
<element name="QUEUE" />
</enum>
<enum name="VideoStreamingProtocol" since="4.5">
<description>Enum for each type of video streaming protocol type.</description>
<element name="RAW">
<description>Raw stream bytes that contains no timestamp data and is the lowest supported video streaming</description>
</element>
<element name="RTP">
<description>RTP facilitates the transfer of real-time data. Information provided by this protocol include timestamps (for synchronization), sequence numbers (for packet loss and reordering detection) and the payload format which indicates the encoded format of the data.</description>
</element>
<element name="RTSP">
<description>The transmission of streaming data itself is not a task of RTSP. Most RTSP servers use the Real-time Transport Protocol (RTP) in conjunction with Real-time Control Protocol (RTCP) for media stream delivery. However, some vendors implement proprietary transport protocols. </description>
</element>
<element name="RTMP">
<description> Real-Time Messaging Protocol (RTMP) was initially a proprietary protocol developed by Macromedia for streaming audio, video and data over the Internet, between a Flash player and a server. Macromedia is now owned by Adobe, which has released an incomplete version of the specification of the protocol for public use.</description>
</element>