K13 - Synchronization Profile
This profile defines the requirements for the
protocols and procedures that shall be used by the applications providing
the synchronization usage model.The synchronization usage model makes use
of the underlying Generic Object Exchange Profile
(GOEP) to define the interoperability requirements for the protocols
needed by applications. Typical scenarios covered by this profile
involving a computer instructing a mobile phone or PDA to exchange PIM
data , or vice versa (a mobile instructing a computer to exchange PIM
data), or automatically starting synchronization when 2 Bluetooth devices
come within range.
For more details : Download the K13
Specification from the SIG website, or visit the Documents
Page.
A typical synchronization example is one in which a
mobile phone acts as an IrMC server and a PC notebook as an IrMC Client.
The IrMC Client (PC) pulls the PIM data from the IrMC server and
synchronizes this data with data stored in the IrMC client. After that,
the IrMC client puts this synchronized data back to the IrMC server. Note:
The IrMC Client layer is the entity processing the synchronization
according to the IrMC specification, and the IrMC server is the server
software compliant to the IrMC specification.
The following roles are defined for this profile:
- IrMC Server – This is the IrMC server device that provides
an object exchange server. Typically, this device is a mobile phone or
PDA. In addition to the interoperability requirements defined in this
profile, the IrMC server must comply with the interoperability
requirements for the server of the GOEP, if not defined to the
contrary.
- IrMC Client – This is the IrMC client device, which
contains a sync engine and pulls and pushes the PIM data from and to
the IrMC Server. Usually, the IrMC Client device is a PC. Because the
IrMC Client must also provide functionality to receive the
initialization command for synchronization, sometimes it must
temporarily act as a server. In addition to the interoperability
requirements defined in this profile, the IrMC server must also comply
with the interoperability requirements for the server and client of
the GOEP if not defined to the contrary.
The scenarios covered by this profile are:
- Usage of an IrMC Server by an IrMC Client to pull the PIM
data needed to be synchronized from the IrMC Server, to synchronize
this data with the data on the IrMC Client, and to push this
synchronized data back to the IrMC Server.
- Usage of an IrMC Client by an IrMC Server to initiate the
previous scenario by sending a sync command to the IrMC Client.
- Automatic synchronization initiated by the IrMC client.
The restrictions applying to this profile are the same as in the GOEP.
In addition to these restrictions, the peer-to-peer synchronization is not
supported by the BT synchronization.
The profile fundamentals are the same as defined in
the GOEP, with the addition of the requirements
that bonding, link level authentication, and encryption (Fundamentals 1
and 3 in GOEP) must always be used for this profile. The OBEX
authentication (Fundamental 2 in GOEP) as an application-level security
mechanism must be supported by the devices providing this profile, but
this profile does not mandate that it must be used.
In this profile, because both the IrMC Client and
IrMC Server can act as a client (IrMC Server temporarily), both can
initiate link and channel establishments; i.e. create a physical link
between these two devices.
This profile does not mandate the IrMC server or
client to enter any discoverable or connectable modes automatically, even
if they are able to do so. This means that the end-user intervention may
be needed on both the devices when, for example, the synchronization is
initiated on the IrMC client device.
There are two modes associated with the
Synchronization profile.
- Initialization Sync mode
- General Sync mode
- In the Initialization Sync mode, the IrMC Server is in the
Limited discoverable (or the General discoverable mode), Connectable,
and Pairable modes. The IrMC Client does not enter this mode in this
profile. It is recommended that the Limited Inquiry procedure is used
by the IrMC Client when discovering the IrMC server.
- In the General Sync mode, the device is in the Connectable
mode. Both the IrMC Client and Server can enter this mode. For the
IrMC Server, this mode is used when the IrMC Client connects the
server and starts the synchronization at the subsequent times after
pairing. For the IrMC Client, the mode is used when the
synchronization is initiated by the IrMC server.
User interactions determine how the various
scenarios: Synchronization (first-time/subsequent) & Automatic
Synchronization play out. Full details of these scenarios are given in
Section 3.2 of the actual Synchronization
Profile.
This section describes the service capabilities
which can be utilised by the application profiles using GOEP.
It is mandatory for both the IrMC Client &
Se4rver to support one or more of the following Synchronization cases:
- Synchronization of phonebooks
- Synchronization of calendars
- Synchronization of messages
- Synchronization of notes
Furthermore the IrMC Client must mandatorily support the Sync Command
and optionally support Automatic Synchronization. The IrMC Server must
optionally support the Sync Command and mandatorily support Automatic
Synchronization
The support of Synchronization with IrMC level 4
functionality is mandatory for both IrMC Clients and IrMC Servers. The
requirements for IrMC Synchronization are defined in the IrMC spec.
Bluetooth Synchronization must support at least one of the following cases
(i.e. the application classes):
- Synchronization of phonebooks
- Synchronization of calendars
- Synchronization of messages
- Synchronization of notes
To achieve application level interoperability, the
content formats are defined for Bluetooth Synchronization. The content
formats are dependent on the application classes, which are designed for
the different purposes. The supported application classes must be
identified in terms of the data stores in the SDDB of the IrMC Server
This feature means that the IrMC client device works
temporarily as a server and is able to receive a Sync Command from the
IrMC server, which in this case acts temporarily as a client. This Sync
Command orders the IrMC client to start synchronization with the IrMC
Server.
After sending the sync command and getting the
response for it, the IrMC Server must terminate the OBEX session and the
RFCOMM data link connection. This feature must be supported by the IrMC
Client and it can optionally be supported by the IrMC Server.
In this feature, the IrMC Client can start the
synchronization when the IrMC Server enters the RF proximity of the IrMC
Client. Basically, this means that, on the Baseband level, the IrMC Client
pages the IrMC Server at intervals and, when it finds that the IrMC Server
is in the range, the IrMC Client can begin synchronization.
The support of this feature is optional for the IrMC
Client but mandatory for the IrMC Server. This means that the IrMC Server
must offer a capability to put the server device into the General Sync
mode so that it does not leave this mode automatically.
There are 6 OBEX operations which are used in
the Object Push Profile: Connect , Disconnect , Put ,
Get , Abort & SetPath.
OBEX authentication must be supported by the
devices implementing the Synchronization profile.
The Target header must be used when the IrMC client
establishes the connection. The Target header value is ’IRMC-SYNC’.
Pushing Data : See Section Pushing
Data to Server of the GOEP
Pulling Data : See Section Pulling
Data from Server of the GOEP
Disconnection : See actual GOEP
Profile.
There are two separate services related to the
Synchronization profile. The first is the actual synchronization server
(i.e. IrMC server), and the second is the sync command server (i.e. IrMC
Client).
Note , the above text contains excerpts from the Bluetooth
SIG's Specification, as well as various interpretations of the Specs. For
complete details of the various sections, consult the actual Bluetooth
Specification.
|