11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
12 <concept id="GUID-667C0481-2DEF-4618-9AA5-8DF528082061" xml:lang="en"><title>Accessory |
12 <concept id="GUID-667C0481-2DEF-4618-9AA5-8DF528082061" xml:lang="en"><title>Accessory |
13 Services Overview</title><shortdesc>Accessory Services abstract accessory-related services for platform |
13 Services Overview</title><shortdesc>Accessory Services abstract accessory-related services for platform |
14 and SDK clients and provides accessory-related APIs for adaptation (audio |
14 and SDK clients and provides accessory-related APIs for adaptation (audio |
15 and display) and accessory plug-ins.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
15 and display) and accessory plug-ins.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
16 <section><title>Purpose</title><p>Accessory Services is a group of components |
16 <section id="GUID-6C29F2CD-6FBE-4805-957A-CB08163DFC00"><title>Purpose</title><p>Accessory Services is a group of components |
17 that support APIs for platform clients to retrieve accessory connection status |
17 that support APIs for platform clients to retrieve accessory connection status |
18 information, and device and services type information. It also provides adaptation |
18 information, and device and services type information. It also provides adaptation |
19 APIs for the addition of new Accessory Services plug-in components. </p></section> |
19 APIs for the addition of new Accessory Services plug-in components. </p></section> |
20 <section><title>Architecture</title><p>The architecture of Accessory Services |
20 <section id="GUID-9236506F-077D-4AB1-AE4C-9CE391F42F98"><title>Architecture</title><p>The architecture of Accessory Services |
21 revolves around the Accessory and the Remote Control Framework. Accessory |
21 revolves around the Accessory and the Remote Control Framework. Accessory |
22 Framework provides platform clients with access to the accessory functionality |
22 Framework provides platform clients with access to the accessory functionality |
23 on the device, while abstracting away accessory, hardware, bearer and protocol-specific |
23 on the device, while abstracting away accessory, hardware, bearer and protocol-specific |
24 details from the software layers. Accessory Framework also provides accessory |
24 details from the software layers. Accessory Framework also provides accessory |
25 policy and adaptation APIs for the addition of new Accessory Framework plug-in |
25 policy and adaptation APIs for the addition of new Accessory Framework plug-in |
26 components (if required). The Remote Control Framework provides APIs required |
26 components (if required). The Remote Control Framework provides APIs required |
27 to send and receive remote control commands to/from an accessory connected |
27 to send and receive remote control commands to/from an accessory connected |
28 to a phone.</p><p>The core of the Accessory Framework is the Accessory Server. |
28 to a phone.</p><p>The core of the Accessory Framework is the Accessory Server. |
29 Accessory Server has a central role in accessory-related connection/disconnection |
29 Accessory Server has a central role in accessory-related connection/disconnection |
30 handling on Symbian platform. The Accessory Framework depends on the concepts, |
30 handling on the Symbian platform. The Accessory Framework depends on the concepts, |
31 such as Generic ID, Accessory Policy, Accessory Handlers and Accessory Mode. |
31 such as Generic ID, Accessory Policy, Accessory Handlers and Accessory Mode. |
32 These concepts are described in the following section.</p><p>Remote Control |
32 These concepts are described in the following section.</p><p>Remote Control |
33 Framework exposes the Remote Control Server using the Remote Control Core |
33 Framework exposes the Remote Control Server using the Remote Control Core |
34 APIs. The remote control commands are understood by the Key Event Converter |
34 APIs. The remote control commands are understood by the Key Event Converter |
35 and passed on to the Target Selector Plug-in (TSP) Controller by the Remote |
35 and passed on to the Target Selector Plug-in (TSP) Controller by the Remote |
37 and passes that information to the Remote Control Server. Finally, the request |
37 and passes that information to the Remote Control Server. Finally, the request |
38 is handled by that application. For more information about Remote Control |
38 is handled by that application. For more information about Remote Control |
39 concepts, see the <b>Remote Control Framework</b> section.</p><p>The following |
39 concepts, see the <b>Remote Control Framework</b> section.</p><p>The following |
40 figure illustrates the architecture of Accessory Services:</p><fig id="GUID-EF39A7CD-BA15-4F2D-96C6-C54672226E98"> |
40 figure illustrates the architecture of Accessory Services:</p><fig id="GUID-EF39A7CD-BA15-4F2D-96C6-C54672226E98"> |
41 <title>Accessory Services Architecture</title> |
41 <title>Accessory Services Architecture</title> |
42 <image href="GUID-5AE741A2-68C5-4219-8F2A-ECE0A819FCAA_d0e133491_href.jpg" scale="150" placement="inline"/> |
42 <image href="GUID-5AE741A2-68C5-4219-8F2A-ECE0A819FCAA_d0e158427_href.jpg" scale="150" placement="inline"/> |
43 </fig></section> |
43 </fig></section> |
44 <section><title>Description</title><p>This section describes the key concepts |
44 <section id="GUID-7AB78BEA-315A-4CC0-B5B6-A7A28568F2B2"><title>Description</title><p>This section describes the key concepts |
45 associated with Accessory Services.</p><ul> |
45 associated with Accessory Services.</p><ul> |
46 <li><p><b>Generic ID</b>: Generic ID provides the means to describe, detect, |
46 <li><p><b>Generic ID</b>: Generic ID provides the means to describe, detect, |
47 connect, and control an enhancement without a need to use hardware or provider-specific |
47 connect, and control an enhancement without a need to use hardware or provider-specific |
48 definitions. Thus Generic ID must be a native concept for any accessory-related |
48 definitions. Thus Generic ID must be a native concept for any accessory-related |
49 platform software. For the platform purposes, Generic ID must be defined so |
49 platform software. For the platform purposes, Generic ID must be defined so |
66 TV-out.</p> </li> |
66 TV-out.</p> </li> |
67 <li><p><b>Accessory Handlers:</b> Accessory Handlers (ASYs) form the Accessory |
67 <li><p><b>Accessory Handlers:</b> Accessory Handlers (ASYs) form the Accessory |
68 Framework adaptation layer. Accessory Server hosts multiple ASYs. For example, |
68 Framework adaptation layer. Accessory Server hosts multiple ASYs. For example, |
69 wired ASY, bluetooth ASY, plugged display ASY and so on. ASYs can be understood |
69 wired ASY, bluetooth ASY, plugged display ASY and so on. ASYs can be understood |
70 as an accessory adaptation layer between the Accessory Framework and any other |
70 as an accessory adaptation layer between the Accessory Framework and any other |
71 Symbian platform or hardware-related software on the phone. Typical task of |
71 Symbian platform or hardware-related software on the phone. Typical |
72 an ASY is accessory detection (registering for hardware indications) and providing |
72 task of an ASY is accessory detection (registering for hardware indications) |
73 the capabilities of the accessories to the Accessory framework.</p> </li> |
73 and providing the capabilities of the accessories to the Accessory framework.</p> </li> |
74 <li><p><b>Controller:</b> Controller is a device that sends a control message |
74 <li><p><b>Controller:</b> Controller is a device that sends a control message |
75 or command to a target device and is ready to capture responses.</p> </li> |
75 or command to a target device and is ready to capture responses.</p> </li> |
76 <li><p><b>Target:</b> Target is a device that accepts the control message |
76 <li><p><b>Target:</b> Target is a device that accepts the control message |
77 or command from the controller, invokes necessary procedures and sends out |
77 or command from the controller, invokes necessary procedures and sends out |
78 responses to controller. </p> </li> |
78 responses to controller. </p> </li> |
79 <li><p><b>Bearer:</b> The bearer is a carrier that acts like a vehicle of |
79 <li><p><b>Bearer:</b> The bearer is a carrier that acts like a vehicle of |
80 transmission for remote control messages. The bearer here is an ECom plug-in |
80 transmission for remote control messages. The bearer here is an ECom plug-in |
81 to the Remote Control Server.</p> </li> |
81 to the Remote Control Server.</p> </li> |
82 </ul><p/></section> |
82 </ul><p/></section> |
83 <section><title>Components</title><p>Accessory Services consists of the following |
83 <section id="GUID-93D60E05-F086-46F4-A0A6-2B8227BBABED"><title>Components</title><p>Accessory Services consists of the following |
84 components: </p><ul> |
84 components: </p><ul> |
85 <li><p><b>Accessory Monitor:</b> Provides APIs to retrieve information about |
85 <li><p><b>Accessory Monitor:</b> Provides APIs to retrieve information about |
86 the connected accessories, such as a headset and car kit. </p></li> |
86 the connected accessories, such as a headset and car kit. </p></li> |
87 <li><p><b>Accessory Remote Control:</b> Provides APIs for clients to communicate |
87 <li><p><b>Accessory Remote Control:</b> Provides APIs for clients to communicate |
88 with remote targets in a terminal and remote targets outside a terminal.</p> </li> |
88 with remote targets in a terminal and remote targets outside a terminal.</p> </li> |
98 High-Definition Multimedia Interface (HDMI) and TV-out support. For more information |
98 High-Definition Multimedia Interface (HDMI) and TV-out support. For more information |
99 about HDMI, see <xref href="http://en.wikipedia.org/wiki/HDMI.dita">Wikipedia</xref>.</p> </li> |
99 about HDMI, see <xref href="http://en.wikipedia.org/wiki/HDMI.dita">Wikipedia</xref>.</p> </li> |
100 <li><p><b>Remote Control Framework:</b> Provides APIs needed to send and receive |
100 <li><p><b>Remote Control Framework:</b> Provides APIs needed to send and receive |
101 remote control commands to/from a Bluetooth enabled device.</p> </li> |
101 remote control commands to/from a Bluetooth enabled device.</p> </li> |
102 </ul></section> |
102 </ul></section> |
103 <section><title>Using Accessory Services</title><p>You can use features provided |
103 <section id="GUID-18563CE6-A880-48E4-96BA-3B50CA8A373F"><title>Using Accessory Services</title><p>You can use features provided |
104 by Accessory Services to perform the following tasks:</p><ul> |
104 by Accessory Services to perform the following tasks:</p><ul> |
105 <li><p>Retrieve accessory mode, connection status, accessory device and service |
105 <li><p>Retrieve accessory mode, connection status, accessory device and service |
106 type information.</p></li> |
106 type information.</p></li> |
107 <li><p>Retrieve accessory control and connection-related functionality.</p></li> |
107 <li><p>Retrieve accessory control and connection-related functionality.</p></li> |
108 <li><p>Request for a protocol-specific connection handle for accessory audio |
108 <li><p>Request for a protocol-specific connection handle for accessory audio |