Overview of Phone Book Access Profile (PBAP) (PCE Role)

Windows CE 5.0 Not SupportedWindows Embedded NavReady 2009 Supported

Windows Embedded NavReady supports the Phone Book Access Profile (PBAP), which enables devices to exchange phone-book objects after a Bluetooth connection is established. Phone-book objects each represent information about a contact stored on a mobile phone.

With PBAP in Windows Embedded NavReady, you can enable users to download phone books from their mobile phones, which makes it possible to make hands-free phone calls to their contacts through the user interface on their Windows Embedded NavReady powered portable navigation devices (PNDs).

Two roles are defined for Bluetooth-enabled devices that support PBAP:

  • Phone Book Server Equipment (PSE) role: this role is for the device that contains the source phone-book objects; for example, a mobile phone.
  • Phone Book Client Equipment (PCE) role: this role is for the device that retrieves phone-book objects from the PSE device; for example, a portable navigation device (PND).

A Windows Embedded NavReady powered device supports the PCE role only.

With support for PBAP, a Windows Embedded NavReady powered device can create a pairing relationship with a mobile phone that also supports PBAP, download a phone book from that paired phone, and then use the contact entries in the phone book for making hands-free phone calls.

The following illustration shows the Bluetooth PBAP architecture:

Bluetooth PBAP Architecture

To download a phone book from a mobile phone, the Windows Embedded CE powered portable navigation device (PND) pairs to a device, and then searches the Service Discovery Profile (SDP) record on that paired device to determine whether the device supports PBAP. If it does support PBAP, the PND assumes the Phone Book Client Equipment (PCE) role and uses elements from Infrared Mobile Communications (IrMC) protocol over Object Exchange Protocol (OBEX) to retrieve vCards (.vcf files) through a Bluetooth connection.

Each vCard contains information about contacts in a phone book. vCards can also contain information about incoming call history, outgoing call history, and missed call-history lists available on the mobile phone. The number of available entries in these call-history lists depends on both Windows Embedded NavReady and the capabilities of the device in the PSE role.

A mobile phone can store contacts and call histories on a Subscriber Identity Module (SIM) card, and also in memory, if both methods are supported by the paired phone. The Windows Embedded CE powered device can retrieve entries from both locations and merges them together, as soon as the data is retrieved from the paired phone.

Fore more information about how to use the HFP Service API to support phone book download and contact management in a custom phone application, see Phone Book Download and Contact Management.

PBAP Features

Phone Book Access Profile (PBAP) in Windows Embedded NavReady provides the following features:

  • Automatic Download: this enables users to download the complete contents of a phone book automatically when the mobile phone is first connected to the PND. Automatic downloads can be performed by using PBAP, or by using SyncML or AT commands if PBAP is not supported.
  • Manual Download: this enables users to choose to download, or sync, the complete contents of a phone book while the mobile phone is connected to the PND.
  • vCard Version 2.1 Format: the vCard 2.1 specification defines a format for an electronic business card, or vCard.
  • Support for Four Phone-Number Types: this provides support for the following phone-number types in a downloaded phone book: Work, Home, Cell, or Other.
  • Local Phone-Book Storage: the Windows Embedded NavReady powered device can store the downloaded phone book locally, in persistent storage.
  • Call-History Lists: Windows Embedded NavReady provides support for downloading a maximum of 25 outgoing phone calls, 25 incoming phone calls, and 25 missed phone calls from the call-history list on the phone.

Automatic Download Support

In Windows Embedded NavReady, only the phone-book download feature is supported, in which the complete phone book is downloaded or synced on the Windows Embedded NavReady powered device. Windows Embedded NavReady does not support selecting and sending individual contacts.

If the paired device does not support PBAP, Windows Embedded NavReady also supports other methods of downloading a phone book. If the paired phone includes PBAP in the SDP record but a download error occurs, the Windows Embedded NavReady powered device will try using SyncML. If SyncML fails or is not supported on the paired device, the Windows Embedded NavReady powered device tries using an AT command-based phone-book download.

If a PBAP download succeeds but contains zero entries, this might indicate that a download error occurred. As a result, the method described in the previous paragraph will be executed when the downloaded phone book has zero entries.

After three failed attempts of a PBAP download, the Windows Embedded NavReady powered device will put the phone on the block list and will not retry PBAP download.

Many Bluetooth-enabled phones will show a security confirmation dialog box the first time that the HFP service accesses PBAP on the phone.

Manual Download Support

With manual download, the user can send contacts to the PCE device any time that the user's phone is paired to it. The user can use manual download if the paired phone does not support automatic download, or if they simply want to send new contacts and append or update them in the downloaded phone book.

In order to use this feature, it must be supported by the UI on the Windows Embedded NavReady powered device.

vCard Version 2.0 Format

A vCard is a container for contact information in a format that complies with the vCard specification. This format enables various devices to exchange vCards. Windows Embedded NavReady supports vCard version 2.1.

A vCard is considered valid if all the following are true:

  1. It contains at least one phone number with 2 or more digits.
  2. Each line is exited only by using a carriage return and line feed (CRLF) character.
  3. The character set used is either ASCII, UTF-8, or ISO 8859-1.
  4. The vCard size does not exceed 400 KB.
  5. If an encoding other than quoted-printable or 8-bit is not used.

Contacts Phone-Number Types

When it downloads the phone book or manually receives contacts from the paired phone, the Windows Embedded NavReady powered device will categorize the contacts as follows:

  • For multiple phone numbers that belong to a contact, the phone-number type, also known as location, will be downloaded and stored as Work, Home, Cell, or Other.
  • The Work phone-number type is applied for phone numbers with UI fields labeled "Work", "Business", or "Office".
  • The Home phone-number type is applied for phone numbers with UI fields labeled "Home".
  • The Cell phone-number type is applied for phone numbers with UI fields labeled "Cell" or "Mobile".

If the contact has multiple numbers labeled with the same phone-number type, both phone numbers will be stored with that phone-number type; for example, "Home (425) 555-1560, Home (425) 555-1834".

All categories that do not match Work, Home, or Cell are put into the Other phone-number type; for example, Fax, Pager, Work2, and so on.

Windows Embedded CE strips the leading spaces from contact entries that begin with space characters.

Call-History Lists

The Windows Embedded NavReady powered device downloads a call history that includes up to 25 outgoing phone calls, up to 25 incoming phone calls, and up to 25 missed phone calls from the call-history list on the phone. The call-history entries can be sorted by time stamp for each group (incoming phone calls, outgoing phone calls, and missed phone calls).

Some mobile phones support fewer entries for each list type.

The call history is downloaded as part of the automatic phone-book download routine.

A new call history can be downloaded every time that the phone connects, which will overwrite the stored copy of the list. The call history is also persisted across connection and reconnection cycles.

The call history will be updated as new phone-call activity occurs through the hands-free phone. However, the 25-number limit is the maximum for each category. If new phone calls are made that fill the call-history list, the least recently-made call is removed from the call-history list.

On phones that support SyncML or OBEX only, the call history reflects only those calls that occur while the phone is connected to the Windows Embedded CE powered device.

Call-history entries store up to 31 characters for the name or phone number.

To add a call to the call history, it must have a phone number associated with it. For example, a call dialed from a handset or received from an unknown number might not have a phone number associated with it.

Phone Book Local Storage

The Hands-Free Profile (HFP) service persists the downloaded phone books locally in RAM. Phone books can only be accessed while the Bluetooth-enabled phone associated with an individual phone book is paired to the portable navigation device (PND).

When a Windows Embedded NavReady powered portable navigation device (PND) user uses the PND UI to delete the phone book or delete a paired device, the phone book and call history that belongs to that device will also be deleted.

The local call-history list stores only phone calls that occur while a phone is connected to the PCE device. This call-history list is stored on the PCE device only.

To include support for PBAP, you must include the Hands-Free Profile (HFP) (HF role) Catalog item (SYSGEN_BTH_HF) in your OS design.

Community Additions