summaryrefslogtreecommitdiff
path: root/docs/Classes/SDLPerformAppServiceInteraction.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/Classes/SDLPerformAppServiceInteraction.html')
-rw-r--r--docs/Classes/SDLPerformAppServiceInteraction.html180
1 files changed, 180 insertions, 0 deletions
diff --git a/docs/Classes/SDLPerformAppServiceInteraction.html b/docs/Classes/SDLPerformAppServiceInteraction.html
new file mode 100644
index 000000000..f267feb90
--- /dev/null
+++ b/docs/Classes/SDLPerformAppServiceInteraction.html
@@ -0,0 +1,180 @@
+<h1>SDLPerformAppServiceInteraction Class Reference</h1>
+
+<h3>Section Contents</h3>
+
+<ul>
+ <li><a href="#section--initWithServiceUri:serviceID:originApp:">-initWithServiceUri:serviceID:originApp:</a></li>
+ <li><a href="#section--initWithServiceUri:serviceID:originApp:requestServiceActive:">-initWithServiceUri:serviceID:originApp:requestServiceActive:</a></li>
+ <li><a href="#section-serviceUri">serviceUri</a></li>
+ <li><a href="#section-serviceID">serviceID</a></li>
+ <li><a href="#section-originApp">originApp</a></li>
+ <li><a href="#section-requestServiceActive">requestServiceActive</a></li>
+</ul>
+
+<h3>Overview</h3>
+
+<p>App service providers will likely have different actions exposed to the module and app service consumers. It will be difficult to standardize these actions by RPC versions and can easily become stale. Therefore, we introduce a best-effort attempt to take actions on a service.</p>
+
+<p>The <code>PerformAppServiceInteraction</code> request will be sent to the service that has the matching <code>appServiceId</code>. The <code>serviceUri</code> should be the fully qualified URI with all parameters that are necessary for the given action. The URI prefix and actions list will be contained in the app service provider&rsquo;s manifest. SDL takes no steps to validate an app service provider&rsquo;s action sheet JSON object. In the future, plug in libraries could be added to handle these sheets on a provider by provider basis.</p>
+
+<p>An app service consumer can also request for this service to become the active service of its respective type. If the app service consumer currently has an HMI state of HMI_FULL this request can be performed without user interaction. If the app is currently not in that state, the HMI should present the user with a choice to allow this app service provider to become the active service of its specified type. If the app service provider is not allowed to become active, the request will not be sent to it and an unsuccessful response will be sent to the requester.</p>
+
+<p>SDL should make no guarantees that:
+ 1. App service providers offer URI prefix and URI Schema
+ 2. App service providers will correctly respond to the requests
+ 3. The requested app service provider will become the active service of that type
+ 4. The <code>serviceUri</code> will be a correctly formatted URI from the app service consumer</p>
+
+
+<section class="section task-group-section">
+ <h3 id="section--initWithServiceUri:serviceID:originApp:">
+ -initWithServiceUri:serviceID:originApp:
+ </h3>
+
+ <p>Convenience init for required parameters.</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">initWithServiceUri</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">serviceUri</span>
+ <span class="nf">serviceID</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">serviceID</span>
+ <span class="nf">originApp</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">originApp</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">serviceUri</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">serviceID</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">originApp</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span></code></pre>
+
+
+
+ <h4>Parameters</h4>
+ <dl>
+ <dt>serviceUri</dt>
+ <dd><p>The service URI</p></dd>
+ <dt>serviceID</dt>
+ <dd><p>The app service ID</p></dd>
+ <dt>originApp</dt>
+ <dd><p>The origin app</p></dd>
+ </dl>
+ <div>
+ <h4>Return Value</h4>
+ <p>A SDLPerformAppServiceInteraction object</p>
+ </div>
+
+ <h3 id="section--initWithServiceUri:serviceID:originApp:requestServiceActive:">
+ -initWithServiceUri:serviceID:originApp:requestServiceActive:
+ </h3>
+
+ <p>Convenience init for all parameters.</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">initWithServiceUri</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">serviceUri</span>
+ <span class="nf">serviceID</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">serviceID</span>
+ <span class="nf">originApp</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">originApp</span>
+ <span class="nf">requestServiceActive</span><span class="p">:(</span><span class="n">BOOL</span><span class="p">)</span><span class="nv">requestServiceActive</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">serviceUri</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">serviceID</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">originApp</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">requestServiceActive</span><span class="p">:</span> <span class="kt">Bool</span><span class="p">)</span></code></pre>
+
+
+
+ <h4>Parameters</h4>
+ <dl>
+ <dt>serviceUri</dt>
+ <dd><p>The service URI</p></dd>
+ <dt>serviceID</dt>
+ <dd><p>The app service ID</p></dd>
+ <dt>originApp</dt>
+ <dd><p>The origin app</p></dd>
+ <dt>requestServiceActive</dt>
+ <dd><p>Whether or not the service is active</p></dd>
+ </dl>
+ <div>
+ <h4>Return Value</h4>
+ <p>A SDLPerformAppServiceInteraction object</p>
+ </div>
+
+ <h3 id="section-serviceUri">
+ serviceUri
+ </h3>
+
+ <p>Fully qualified URI based on a predetermined scheme provided by the app service. SDL makes no guarantee that this URI is correct.</p>
+
+<p>String, Required</p>
+
+
+
+ <h4>Objective-C</h4>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readwrite</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">serviceUri</span><span class="p">;</span></code></pre>
+
+
+ <h4>Swift</h4>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">serviceUri</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-serviceID">
+ serviceID
+ </h3>
+
+ <p>The service ID that the app consumer wishes to send this URI.</p>
+
+<p>String, Required</p>
+
+
+
+ <h4>Objective-C</h4>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readwrite</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">serviceID</span><span class="p">;</span></code></pre>
+
+
+ <h4>Swift</h4>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">serviceID</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-originApp">
+ originApp
+ </h3>
+
+ <p>This string is the appID of the app requesting the app service provider take the specific action.</p>
+
+<p>String, Required</p>
+
+
+
+ <h4>Objective-C</h4>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readwrite</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</span><span class="p">)</span> <span class="n">NSString</span> <span class="o">*</span><span class="n">_Nonnull</span> <span class="n">originApp</span><span class="p">;</span></code></pre>
+
+
+ <h4>Swift</h4>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">originApp</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-requestServiceActive">
+ requestServiceActive
+ </h3>
+
+ <p>This flag signals the requesting consumer would like this service to become the active primary service of the destination&rsquo;s type.</p>
+
+<p>Boolean, Optional</p>
+
+
+
+ <h4>Objective-C</h4>
+ <pre class="highlight objective_c"><code><span class="k">@property</span> <span class="p">(</span><span class="n">readwrite</span><span class="p">,</span> <span class="n">strong</span><span class="p">,</span> <span class="n">nonatomic</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)SDLBool">SDLBool</a></span><span class="o">&gt;</span> <span class="o">*</span><span class="n">requestServiceActive</span><span class="p">;</span></code></pre>
+
+
+ <h4>Swift</h4>
+ <pre class="highlight swift"><code><span class="k">var</span> <span class="nv">requestServiceActive</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)SDLBool">SDLBool</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>