diff -r 51a74ef9ed63 -r ae94777fff8f Symbian3/SDK/Source/GUID-95493C3D-58C6-5EBF-85E1-167D58E68658.dita --- a/Symbian3/SDK/Source/GUID-95493C3D-58C6-5EBF-85E1-167D58E68658.dita Wed Mar 31 11:11:55 2010 +0100 +++ b/Symbian3/SDK/Source/GUID-95493C3D-58C6-5EBF-85E1-167D58E68658.dita Fri Jun 11 12:39:03 2010 +0100 @@ -1,131 +1,131 @@ - - - - - -Bluetooth -Remote Control Framework -
Purpose

The Bluetooth Remote Control Framework -provides the APIs needed to send (CRemConCoreApiController) -and receive (CRemConCoreApiTarget) remote control commands -to/from a Bluetooth enabled device.

In this overview

You -will learn about the Bluetooth Remote Control Framework. Several tutorials -are provided, links are at the end of the overview, to help get you started -writing remote control applications.

-
Architectural relationships

The Bluetooth subsystem -provides a number of APIs that you will use to establish a connection to a -Bluetooth device that provides the required services. The APIs you need to -know about include:

    -
  • Bluetooth -User

    Establishing a Bluetooth connection.

  • -
  • Bluetooth -SDP

    Finding a device that can provide the necessary services.

  • -
  • Serial -Comms C32

    The serial communications framework.

  • -
  • Socket -Server

    The interface to protocols.

  • -

The Audio -Video Remote Control Profile (AVRCP) is implemented by the Remote Control -Framework. A remote control bearer plug-in is required, which uses socket -APIs internally to send and receive Audio Video Control Transport Protocol -(AVCTP) data over ESock.

-
Key Concepts
- -
Controller
-

The controller is a device that sends a control message or command -to a target device and is ready to capture responses.

-
- -
Target
-

The target is a device that accepts the control message or command -from the controller, invokes necessary procedures and sends out responses -to controller.

-
- -
Bearer
-

The bearer is a carrier that acts like a vehicle of transmission for -remote control messages. The bearer here is an Ecom plugin to the RemCon server.

-
- -
Audio Video Remote Control Profile (AVRCP)
-

The bearer that plugs into the RemCon server and transmits remote control -messages (commands) and status responses.

-
- -
Converter
-

This is an ECom plug-in that converts the message format from the Client -side API to the bearer format and vice versa.

-
- -
Audio Video Control Transport Protocol (AVCTP)
-

The protocol that defines the methods and messages used for controlling -Audio/Video devices.

-
- -
Audio Video Distribution Transport Protocol (AVDTP)
-

The AVDTP is used to send frames of encoded multimedia data over Bluetooth.

-
-
-
Description

The Bluetooth Remote Control Framework -provides APIs that make it possible for a device to participate in remote -control relationship. The framework can be used to create an application with -one of three behavior sets, they are:

    -
  • Device acts as a remote -controller

  • -
  • Device is controlled -remotely

  • -
  • Combination of the above -in a single device / application.

  • -

Remote Controller

As a controller the device will -send commands to a target device. A controller can be connection-orientated, -meaning it identifies a specific device to control and maintains a connection -with that device, or connectionless, meaning remote control commands are sent -out into the air for any receptive device to accept.

The Controller -APIs allow an application to send commands to a remote controlled device.

Controller -APIs include:

    -
  1. CRemConCoreApiController

  2. -
  3. CRemConTargetSelectorPlugin

  4. -
  5. CRemConBearerPlugin

  6. -
  7. CRemConInterfaceBase

  8. -
  9. CRemConInterfaceSelector

  10. -

Controlled Remotely

Known as the target device, this -device receives commands from a controller. Target devices may only be connectionless, -meaning they will always respond to valid remote control commands, regardless -of the source of said commands.

The Target API enables applications -to receive commands and to query for information from the controller.

Target -APIs include:

    -
  1. CRemConCoreApiTarget

  2. -
  3. MRemConInterfaceIf

  4. -
  5. CRemConInterfaceBase

  6. -

How Remote Control Works

The following diagram shows -how the Remote Control Framework works for a handsfree headset example.

- Bluetooth Remote Control Headset -

The controller application uses the Controller API, which is connected -to the RemCon Server. The ECom plugin or AVRCP in this case is plugged into -the RemCon server. The message format from the Controller API is converted -into AVRCP format by the Converter plugin which in turn converts it into target -API format at the other end. The target APIs invoke the necessary actions -on the application and update the RemCon server of the status. The applicable -Audio Video Distribution Transport Protocol (AVDTP) is used to deliver the -output stream from the multimedia application to the controller device. The -RemCon Server status is updated to the Controller through the AVRCP bearer.

- -
-
What's next?

The following tutorial series has -been provided to make writing remote control applications easier.

    -
  • Remote -Control Basics

  • -
  • Starting -as Controller

  • -
  • Starting -as Target

  • -
  • Commands -and Responses

  • -
+ + + + + +Bluetooth +Remote Control Framework +
Purpose

The Bluetooth Remote Control Framework +provides the APIs needed to send (CRemConCoreApiController) +and receive (CRemConCoreApiTarget) remote control commands +to/from a Bluetooth enabled device.

In this overview

You +will learn about the Bluetooth Remote Control Framework. Several tutorials +are provided, links are at the end of the overview, to help get you started +writing remote control applications.

+
Architectural relationships

The Bluetooth subsystem +provides a number of APIs that you will use to establish a connection to a +Bluetooth device that provides the required services. The APIs you need to +know about include:

    +
  • Bluetooth +User

    Establishing a Bluetooth connection.

  • +
  • Bluetooth +SDP

    Finding a device that can provide the necessary services.

  • +
  • Serial +Comms C32

    The serial communications framework.

  • +
  • Socket +Server

    The interface to protocols.

  • +

The Audio +Video Remote Control Profile (AVRCP) is implemented by the Remote Control +Framework. A remote control bearer plug-in is required, which uses socket +APIs internally to send and receive Audio Video Control Transport Protocol +(AVCTP) data over ESock.

+
Key Concepts
+ +
Controller
+

The controller is a device that sends a control message or command +to a target device and is ready to capture responses.

+
+ +
Target
+

The target is a device that accepts the control message or command +from the controller, invokes necessary procedures and sends out responses +to controller.

+
+ +
Bearer
+

The bearer is a carrier that acts like a vehicle of transmission for +remote control messages. The bearer here is an Ecom plugin to the RemCon server.

+
+ +
Audio Video Remote Control Profile (AVRCP)
+

The bearer that plugs into the RemCon server and transmits remote control +messages (commands) and status responses.

+
+ +
Converter
+

This is an ECom plug-in that converts the message format from the Client +side API to the bearer format and vice versa.

+
+ +
Audio Video Control Transport Protocol (AVCTP)
+

The protocol that defines the methods and messages used for controlling +Audio/Video devices.

+
+ +
Audio Video Distribution Transport Protocol (AVDTP)
+

The AVDTP is used to send frames of encoded multimedia data over Bluetooth.

+
+
+
Description

The Bluetooth Remote Control Framework +provides APIs that make it possible for a device to participate in remote +control relationship. The framework can be used to create an application with +one of three behavior sets, they are:

    +
  • Device acts as a remote +controller

  • +
  • Device is controlled +remotely

  • +
  • Combination of the above +in a single device / application.

  • +

Remote Controller

As a controller the device will +send commands to a target device. A controller can be connection-orientated, +meaning it identifies a specific device to control and maintains a connection +with that device, or connectionless, meaning remote control commands are sent +out into the air for any receptive device to accept.

The Controller +APIs allow an application to send commands to a remote controlled device.

Controller +APIs include:

    +
  1. CRemConCoreApiController

  2. +
  3. CRemConTargetSelectorPlugin

  4. +
  5. CRemConBearerPlugin

  6. +
  7. CRemConInterfaceBase

  8. +
  9. CRemConInterfaceSelector

  10. +

Controlled Remotely

Known as the target device, this +device receives commands from a controller. Target devices may only be connectionless, +meaning they will always respond to valid remote control commands, regardless +of the source of said commands.

The Target API enables applications +to receive commands and to query for information from the controller.

Target +APIs include:

    +
  1. CRemConCoreApiTarget

  2. +
  3. MRemConInterfaceIf

  4. +
  5. CRemConInterfaceBase

  6. +

How Remote Control Works

The following diagram shows +how the Remote Control Framework works for a handsfree headset example.

+ Bluetooth Remote Control Headset +

The controller application uses the Controller API, which is connected +to the RemCon Server. The ECom plugin or AVRCP in this case is plugged into +the RemCon server. The message format from the Controller API is converted +into AVRCP format by the Converter plugin which in turn converts it into target +API format at the other end. The target APIs invoke the necessary actions +on the application and update the RemCon server of the status. The applicable +Audio Video Distribution Transport Protocol (AVDTP) is used to deliver the +output stream from the multimedia application to the controller device. The +RemCon Server status is updated to the Controller through the AVRCP bearer.

+ +
+
What's next?

The following tutorial series has +been provided to make writing remote control applications easier.

    +
  • Remote +Control Basics

  • +
  • Starting +as Controller

  • +
  • Starting +as Target

  • +
  • Commands +and Responses

  • +
\ No newline at end of file