summaryrefslogtreecommitdiff
path: root/docs/Classes/SDLPerformInteraction.html
blob: 5f26e8ca1472486ea472b88cb82b648f2520fb6c (plain)
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
<h1>SDLPerformInteraction Class Reference</h1>

<h3>Section Contents</h3>

<ul>
  <li><a href="#section--initWithInitialText:interactionMode:interactionChoiceSetIDList:cancelID:">-initWithInitialText:interactionMode:interactionChoiceSetIDList:cancelID:</a></li>
  <li><a href="#section--initWithInitialText:initialPrompt:interactionMode:interactionChoiceSetIDList:helpPrompt:timeoutPrompt:timeout:vrHelp:interactionLayout:cancelID:">-initWithInitialText:initialPrompt:interactionMode:interactionChoiceSetIDList:helpPrompt:timeoutPrompt:timeout:vrHelp:interactionLayout:cancelID:</a></li>
  <li><a href="#section-initialText">initialText</a></li>
  <li><a href="#section-initialPrompt">initialPrompt</a></li>
  <li><a href="#section-interactionMode">interactionMode</a></li>
  <li><a href="#section-interactionChoiceSetIDList">interactionChoiceSetIDList</a></li>
  <li><a href="#section-helpPrompt">helpPrompt</a></li>
  <li><a href="#section-timeoutPrompt">timeoutPrompt</a></li>
  <li><a href="#section-timeout">timeout</a></li>
  <li><a href="#section-vrHelp">vrHelp</a></li>
  <li><a href="#section-interactionLayout">interactionLayout</a></li>
  <li><a href="#section-cancelID">cancelID</a></li>
</ul>

<h3>Overview</h3>

<p>Performs an application-initiated interaction in which the user can select a choice from the passed choice set.</p>

<p>There are several ways to present a choice set: as visual pop-up menu (with an optional keyboard that allows for searches), as voice-recognition (VR) only menu, or as both a VR and visual menu. It is also possible to present only the keyboard for doing searches.</p>

<p>A choice set can have up to 100 items, however if you are presenting a visual only menu please be aware that the OEM may choose to limit the number of presented choices when the driver is distracted (i.e. the car is moving).</p>

<p>A VR-only menu could be used to ask a user to say the name of a song to play. The user&rsquo;s response would only be valid if it appears in the specified choice set.
A visual popup-menu could be used to present a list of albums to the user. The user would select the album they want to play from the list of presented choices.
A keyboard can be used for searches. For example, the user could be asked to enter the name of a restaurant. The name can be used to search for local restaurants with the same name. When the search is completed another menu can be presented with a list of potential addresses for the destination.</p>

<p>If connecting to SDL Core v.6.0+, the perform interaction can be canceled programmatically using the <code>cancelID</code>. On older versions of SDL Core, the perform interaction will persist until the user has interacted with the perform interaction or the specified timeout has elapsed.</p>
<div class="aside aside-see">
    <p class="aside-title">See</p>
    SDLCreateInteractionChoiceSet, SDLDeleteInteractionChoiceSet

</div>

<p>@since SDL 1.0</p>


<section class="section task-group-section">
  <h3 id="section--initWithInitialText:interactionMode:interactionChoiceSetIDList:cancelID:">
      -initWithInitialText:interactionMode:interactionChoiceSetIDList:cancelID:
  </h3>
  
  <p>Convenience init for creating a basic display or voice-recognition menu.</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span>
           <span class="nf">initWithInitialText</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">initialText</span>
               <span class="nf">interactionMode</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Type%20Definitions.html#/c:SDLInteractionMode.h@T@SDLInteractionMode">SDLInteractionMode</a></span><span class="p">)</span><span class="nv">interactionMode</span>
    <span class="nf">interactionChoiceSetIDList</span><span class="p">:</span>
        <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">NSNumber</span><span class="o">&lt;</span><span class="n"><a href="../Protocols.html#/c:objc(pl)SDLUInt">SDLUInt</a></span><span class="o">&gt;</span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">interactionChoiceSetIDList</span>
                      <span class="nf">cancelID</span><span class="p">:(</span><span class="n">UInt32</span><span class="p">)</span><span class="nv">cancelID</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">initialText</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">interactionMode</span><span class="p">:</span> <span class="kt"><a href="../Type%20Definitions.html#/c:SDLInteractionMode.h@T@SDLInteractionMode">SDLInteractionMode</a></span><span class="p">,</span> <span class="nv">interactionChoiceSetIDList</span><span class="p">:</span> <span class="p">[</span><span class="kt">NSNumber</span> <span class="o">&amp;</span> <span class="kt"><a href="../Protocols.html#/c:objc(pl)SDLUInt">SDLUInt</a></span><span class="p">],</span> <span class="nv">cancelID</span><span class="p">:</span> <span class="kt">UInt32</span><span class="p">)</span></code></pre>

  
  
  <h4>Parameters</h4>
  <dl>
      <dt>initialText</dt>
      <dd><p>Text to be displayed first</p></dd>
      <dt>interactionMode</dt>
      <dd><p>Indicates the method in which the user is notified and uses the interaction</p></dd>
      <dt>interactionChoiceSetIDList</dt>
      <dd><p>List of interaction choice set IDs to use with an interaction</p></dd>
      <dt>cancelID</dt>
      <dd><p>An ID for this specific perform interaction to allow cancellation through the <code>CancelInteraction</code> RPC</p></dd>
  </dl>
  <div>
    <h4>Return Value</h4>
    <p>An SDLPerformInteraction object</p>
  </div>
  
  <h3 id="section--initWithInitialText:initialPrompt:interactionMode:interactionChoiceSetIDList:helpPrompt:timeoutPrompt:timeout:vrHelp:interactionLayout:cancelID:">
      -initWithInitialText:initialPrompt:interactionMode:interactionChoiceSetIDList:helpPrompt:timeoutPrompt:timeout:vrHelp:interactionLayout:cancelID:
  </h3>
  
  <p>Convenience init for setting all parameters of a display or voice-recognition menu.</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">-</span> <span class="p">(</span><span class="n">nonnull</span> <span class="n">instancetype</span><span class="p">)</span>
           <span class="nf">initWithInitialText</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n">NSString</span> <span class="o">*</span><span class="p">)</span><span class="nv">initialText</span>
                 <span class="nf">initialPrompt</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">initialPrompt</span>
               <span class="nf">interactionMode</span><span class="p">:(</span><span class="n">nonnull</span> <span class="n"><a href="../Type%20Definitions.html#/c:SDLInteractionMode.h@T@SDLInteractionMode">SDLInteractionMode</a></span><span class="p">)</span><span class="nv">interactionMode</span>
    <span class="nf">interactionChoiceSetIDList</span><span class="p">:</span>
        <span class="p">(</span><span class="n">nonnull</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">NSNumber</span><span class="o">&lt;</span><span class="n"><a href="../Protocols.html#/c:objc(pl)SDLUInt">SDLUInt</a></span><span class="o">&gt;</span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">interactionChoiceSetIDList</span>
                    <span class="nf">helpPrompt</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">helpPrompt</span>
                 <span class="nf">timeoutPrompt</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">timeoutPrompt</span>
                       <span class="nf">timeout</span><span class="p">:(</span><span class="n">UInt16</span><span class="p">)</span><span class="nv">timeout</span>
                        <span class="nf">vrHelp</span><span class="p">:(</span><span class="n">nullable</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLVRHelpItem.html">SDLVRHelpItem</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="p">)</span><span class="nv">vrHelp</span>
             <span class="nf">interactionLayout</span><span class="p">:(</span><span class="n">nullable</span> <span class="n"><a href="../Type%20Definitions.html#/c:SDLLayoutMode.h@T@SDLLayoutMode">SDLLayoutMode</a></span><span class="p">)</span><span class="nv">interactionLayout</span>
                      <span class="nf">cancelID</span><span class="p">:(</span><span class="n">UInt32</span><span class="p">)</span><span class="nv">cancelID</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="nf">init</span><span class="p">(</span><span class="nv">initialText</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">initialPrompt</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span><span class="p">]?,</span> <span class="nv">interactionMode</span><span class="p">:</span> <span class="kt"><a href="../Type%20Definitions.html#/c:SDLInteractionMode.h@T@SDLInteractionMode">SDLInteractionMode</a></span><span class="p">,</span> <span class="nv">interactionChoiceSetIDList</span><span class="p">:</span> <span class="p">[</span><span class="kt">NSNumber</span> <span class="o">&amp;</span> <span class="kt"><a href="../Protocols.html#/c:objc(pl)SDLUInt">SDLUInt</a></span><span class="p">],</span> <span class="nv">helpPrompt</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span><span class="p">]?,</span> <span class="nv">timeoutPrompt</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span><span class="p">]?,</span> <span class="nv">timeout</span><span class="p">:</span> <span class="kt">UInt16</span><span class="p">,</span> <span class="nv">vrHelp</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLVRHelpItem.html">SDLVRHelpItem</a></span><span class="p">]?,</span> <span class="nv">interactionLayout</span><span class="p">:</span> <span class="kt"><a href="../Type%20Definitions.html#/c:SDLLayoutMode.h@T@SDLLayoutMode">SDLLayoutMode</a></span><span class="p">?,</span> <span class="nv">cancelID</span><span class="p">:</span> <span class="kt">UInt32</span><span class="p">)</span></code></pre>

  
  
  <h4>Parameters</h4>
  <dl>
      <dt>initialText</dt>
      <dd><p>Text to be displayed first</p></dd>
      <dt>initialPrompt</dt>
      <dd><p>The initial prompt spoken to the user at the start of an interaction</p></dd>
      <dt>interactionMode</dt>
      <dd><p>The method in which the user is notified and uses the interaction (voice, visual or both)</p></dd>
      <dt>interactionChoiceSetIDList</dt>
      <dd><p>List of interaction choice set IDs to use with an interaction</p></dd>
      <dt>helpPrompt</dt>
      <dd><p>The spoken text when a user speaks &ldquo;help&rdquo; when the interaction is occurring</p></dd>
      <dt>timeoutPrompt</dt>
      <dd><p>The text spoken when a VR interaction times out</p></dd>
      <dt>timeout</dt>
      <dd><p>Timeout in milliseconds</p></dd>
      <dt>vrHelp</dt>
      <dd><p>Suggested voice recognition help items to display on-screen during a perform interaction</p></dd>
      <dt>interactionLayout</dt>
      <dd><p>For touchscreen interactions, the mode of how the choices are presented</p></dd>
      <dt>cancelID</dt>
      <dd><p>An ID for this specific perform interaction to allow cancellation through the <code>CancelInteraction</code> RPC.</p></dd>
  </dl>
  <div>
    <h4>Return Value</h4>
    <p>An SDLPerformInteraction object</p>
  </div>
  
  <h3 id="section-initialText">
      initialText
  </h3>
  
  <p>Text to be displayed first.</p>

<p>String, Required</p>

<p>@since SDL 1.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">initialText</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">initialText</span><span class="p">:</span> <span class="kt">String</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-initialPrompt">
      initialPrompt
  </h3>
  
  <p>This is the TTS prompt spoken to the user at the start of an interaction.</p>

<p>Array of SDLTTSChunk, Optional, Array size: 1-100</p>

<p>@since SDL 1.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="n">initialPrompt</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">initialPrompt</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span><span class="p">]?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-interactionMode">
      interactionMode
  </h3>
  
  <p>For application-requested interactions, this mode indicates the method in which the user is notified and uses the interaction. Users can choose either only by voice (VR_ONLY), by tactile selection from the menu (MANUAL_ONLY), or by either mode (BOTH).</p>

<p>SDLInteractionMode, Required</p>

<p>@since SDL 1.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">)</span> <span class="n"><a href="../Type%20Definitions.html#/c:SDLInteractionMode.h@T@SDLInteractionMode">SDLInteractionMode</a></span> <span class="n">_Nonnull</span> <span class="n">interactionMode</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">interactionMode</span><span class="p">:</span> <span class="kt"><a href="../Type%20Definitions.html#/c:SDLInteractionMode.h@T@SDLInteractionMode">SDLInteractionMode</a></span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-interactionChoiceSetIDList">
      interactionChoiceSetIDList
  </h3>
  
  <p>List of interaction choice set IDs to use with an interaction.</p>

<p>Array of Integers, Required, Array size: 0-100, Min value: 0, Max value: 2000000000</p>

<p>@since SDL 1.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">)</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n">NSNumber</span> <span class="o">*&gt;</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">interactionChoiceSetIDList</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">interactionChoiceSetIDList</span><span class="p">:</span> <span class="p">[</span><span class="kt">NSNumber</span><span class="p">]</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-helpPrompt">
      helpPrompt
  </h3>
  
  <p>Help text. This is the spoken text when a user speaks &ldquo;help&rdquo; while the interaction is occurring.</p>

<p>SDLTTSChunk, Optional</p>

<p>@since SDL 1.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="n">helpPrompt</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">helpPrompt</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span><span class="p">]?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-timeoutPrompt">
      timeoutPrompt
  </h3>
  
  <p>Timeout text. This text is spoken when a VR interaction times out.</p>

<p>Array of SDLTTSChunk, Optional, Array size: 1-100</p>

<p>@since SDL 1.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="n">timeoutPrompt</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">timeoutPrompt</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLTTSChunk.html">SDLTTSChunk</a></span><span class="p">]?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-timeout">
      timeout
  </h3>
  
  <p>Timeout in milliseconds. Applies only to the menu portion of the interaction. The VR timeout will be handled by the platform. If omitted a standard value of 10 seconds is used.</p>

<p>Integer, Optional, Min value: 5000, Max value: 100,000</p>

<p>@since SDL 1.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSNumber</span><span class="o">&lt;</span><span class="n"><a href="../Protocols.html#/c:objc(pl)SDLInt">SDLInt</a></span><span class="o">&gt;</span> <span class="o">*</span><span class="n">timeout</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">timeout</span><span class="p">:</span> <span class="p">(</span><span class="kt">NSNumber</span> <span class="o">&amp;</span> <span class="kt"><a href="../Protocols.html#/c:objc(pl)SDLInt">SDLInt</a></span><span class="p">)?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-vrHelp">
      vrHelp
  </h3>
  
  <p>Suggested voice recognition help items to display on-screen during a perform interaction. If omitted on supported displays, the default generated list of suggested choices shall be displayed.</p>

<p>SDLVRHelpItem, Optional</p>

<p>@since SDL 2.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSArray</span><span class="o">&lt;</span><span class="n"><a href="../Classes/SDLVRHelpItem.html">SDLVRHelpItem</a></span> <span class="o">*&gt;</span> <span class="o">*</span><span class="n">vrHelp</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">vrHelp</span><span class="p">:</span> <span class="p">[</span><span class="kt"><a href="../Classes/SDLVRHelpItem.html">SDLVRHelpItem</a></span><span class="p">]?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-interactionLayout">
      interactionLayout
  </h3>
  
  <p>For tactile interaction modes (MANUAL_ONLY, or BOTH), the layout mode of how the choices are presented.</p>

<p>SDLLayoutMode, Optional</p>

<p>@since SDL 3.0</p>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n"><a href="../Type%20Definitions.html#/c:SDLLayoutMode.h@T@SDLLayoutMode">SDLLayoutMode</a></span> <span class="n">interactionLayout</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">interactionLayout</span><span class="p">:</span> <span class="kt"><a href="../Type%20Definitions.html#/c:SDLLayoutMode.h@T@SDLLayoutMode">SDLLayoutMode</a></span><span class="p">?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
  <h3 id="section-cancelID">
      cancelID
  </h3>
  
  <p>An ID for this specific perform interaction to allow cancellation through the <code>CancelInteraction</code> RPC.</p>

<p>Integer, Optional</p>
<div class="aside aside-see">
    <p class="aside-title">See</p>
    SDLCancelInteraction
@since SDL 6.0

</div>

  
  
  <h4>Objective-C</h4>
  <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">nonatomic</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nullable</span><span class="p">)</span> <span class="n">NSNumber</span><span class="o">&lt;</span><span class="n"><a href="../Protocols.html#/c:objc(pl)SDLInt">SDLInt</a></span><span class="o">&gt;</span> <span class="o">*</span><span class="n">cancelID</span><span class="p">;</span></code></pre>

  
  <h4>Swift</h4>
  <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">cancelID</span><span class="p">:</span> <span class="p">(</span><span class="kt">NSNumber</span> <span class="o">&amp;</span> <span class="kt"><a href="../Protocols.html#/c:objc(pl)SDLInt">SDLInt</a></span><span class="p">)?</span> <span class="p">{</span> <span class="k">get</span> <span class="k">set</span> <span class="p">}</span></code></pre>

  
  
  
</section>