Making a Suspend-and-Resume Data Connection During a Voice Call for Portable Navigation Devices
Applies to Windows Embedded NavReady
If the system does not support simultaneous voice and data connections, and Connection Manager opens a packet data connection that is Suspend-and-Resume capable, and then a voice call occurs, the device suspends the data connection during the voice call instead of disconnecting the data connection. In this state, the device caches the data connection and maintains the same IP address. However, the device cannot send or receive data on that connection. When the voice call ends, the connection immediately resumes and can send and receive data.
Configuring a Connection as Send and Receive Capable
Suspend-and-Resume functionality is available only with a Suspend-and-Resume capable connection. By default, General Packet Radio Service (GPRS) connections are configured as Suspend-and-Resume capable. If a Windows Embedded CE powered device supports GPRS connections through Bluetooth Dial-up Networking profile (DUN) that are not Suspend-and-Resume capable, or if the Windows Embedded CE powered device supports other Suspend-and-Resume connections, such as code division multiple access (CDMA) packet data connections, the OEM must configure the connection information. For more information, see Connection Manager Registry Settings for Portable Navigation Devices.
Managing Status During a Voice Call
An application informs Connection Manager that it is Suspend-and-Resume aware by setting the CONNMGR_FLAG_SUSPEND_AWARE bit flag in the dwFlag member of the CONNMGR_CONNECTIONINFO structure for the connection request. With the CONNMGR_FLAG_SUSPEND_AWARE flag set, the application will be notified when the connection-request status changes to CONNMGR_STATUS_SUSPENDED. This status change happens when the connection request uses a Suspend-and-Resume capable connection, and that connection is suspended. If the connection is not Suspend-and-Resume capable, to maintain backward-compatibility the application receives the notification CONNMGR_STATUS_DISCONNECTED to inform it that it cannot send or receive data. When the voice call disconnects, the packet data connection resumes and the application will be notified with CONNMGR_STATUS_CONNECTED.