Method and system of providing navigation service with directory assistance

An approach is disclosed for providing navigation information for a requested listing to a mobile device caller of a directory assistance call. If the caller selects an option to receive driving directions to the listing destination, the directory assistance provider forwards the listing address to a platform that correlates the address with location coordinates. The platform can poll the calling device to obtain GPS identifying data for the mobile device and derive mapping and routing information.

BACKGROUND INFORMATION

Wireless communication technologies continue to develop an expanding set of capabilities. With increased sophistication of wireless communication devices, enhanced services, such as navigational functionality, have become available.

In support of navigational services, cellular phones are equipped with Global Positioning System (GPS) technology to enable broadcast of their locations. Mobile devices are provided with display capabilities that are interactive with mapping applications. The display provides a graphical representation of the current location of the user in relation to a map of the geographical area. Mapping applications can derive travel directions between the current location of the user and a specific geographical destination, on a real time basis. Derivation of travel directions can be implemented dynamically by a remote service provider that has access to the destination location and the current GPS location of the mobile device. The service provider transmits the travel directions to the mobile device. Alternatively, an application resident in the mobile device can derive travel directions if provided with the destination location data and the location data of the mobile device.

In order for a user to obtain directions from a wireless phone, the destination address must be entered. Entry of this amount of information can be difficult and dangerous to do while driving a vehicle or while walking. The degree of difficulty is increased if the user does not know the address of the destination with the particularity necessary for execution by the mapping application.

Therefore, there is a need for an approach that provides improved navigation services for wireless applications.

DETAILED DESCRIPTION

Apparatus and method for providing navigation and location service are described. In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various exemplary embodiments. It is apparent, however, to one skilled in the art that the various exemplary embodiments may be practiced without these specific details or with an equivalent arrangement. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the exemplary embodiments.

Although the various embodiments are described with respect to Global Positioning System (GPS) technology, it is contemplated that these embodiments have applicability to other equivalent navigational and location determination technologies.

FIG. 1is a diagram of a communication system capable of providing navigation and location service in accordance with an exemplary embodiment. It is to be understood that the illustrated service provider networks encompass a vast number of system elements that are well known. For simplicity and efficiency of explanation, only those elements that facilitate understanding of the described underlying concepts are illustrated.

The communication system100includes a wireless (e.g., cellular) network101capable, for example, of handling CDMA or GSM transmission with a wireless device103. In this exemplary embodiment, a location module105within the wireless device103can obtain location information using Global Positioning System (GPS) technology, and thus, behave as a GPS receiver.

Location module105communicates with a constellation of satellites107. As well known, satellites107transmit very low power interference and jamming resistant signals. At any point on Earth, the GPS receiver in module105can receive signals from multiple satellites. Location module105may determine three-dimensional geolocation from signals obtained from at least four satellites. Measurements from satellite tracking and monitoring stations located around the world are incorporated into orbital models for each satellite to compute precise orbital or clock data. GPS signals may be transmitted over two spread spectrum microwave carrier signals that are shared by GPS satellites107. Location module105can identify the received GPS, decode the ephemeris and clock data, determine the pseudo range for each satellite107, and compute the position of the receiving antenna.

Display109in the wireless device103can present a graphic of a map and directions, so as to permit viewing of the current location of the wireless device within the map of a pre-defined size (e.g., a street block wide, a mile wide, etc.). The wireless device103also contains a processor111and a memory113, which are configured to store and execute instructions for supporting navigation service, as well as other communication functions. Although the wireless device is depicted as a cellular phone in the illustrated example, the teachings herein are also applicable to other wireless devices such as laptop computers, pagers, personal communication systems (PCS), personal digital assistants (PDA), and the like, which are capable of ubiquitous communication at any given time or place.

Wireless network101is coupled to data network117. Data network117may comprise, for example, a public network, such as the Internet, or a private data network such as commonly employed with the public switched telephone network (PSTN). A directory assistance interface119is coupled via appropriate gateways to the wireless network101and the data network117. As well known, the directory assistance interface may comprise a traffic operator position switch (TOPS) to permit voice interaction between a caller and a directory assistance operator. The operator may be a live person or an automated attendant. A database121is coupled to the directory assistance interface119. The database121contains telephone numbers and addresses for listed subscribers.

Geographical location platform123, also coupled to data network117, comprises processor125, database127, and direction/mapping module129. While platform123has been represented by a block inFIG. 1, database127need not be in the physical vicinity of processor125. Database127correlates listed addresses with their respective geographical location coordinates. The direction/mapping module129, in conjunction with processor125, can provide map data and travel direction data between a calling mobile device103and a listed location. Reference is made to U.S. Pat. No. 7,260,474, issued Aug. 21, 2007, as an example of a known implementation for deriving route directions that can be correlated with a map representation, and is incorporated herein by reference in its entirety. Geographical location platform123has the capability to transmit such map and travel data to wireless devices that do not contain route navigation applications. Geographical location platform123, alternatively, can transmit destination location coordinates to the wireless device103, which contains a navigation application in location module105for deriving directions.

The wireless network may include the capability to offer text messaging service, commonly known as Instant Messaging (IM) or Short Message Service (SMS). Instant messaging is a form of real-time communication between two or more users based on typed text, wherein the text is conveyed via computers connected over the data network117. As the name suggests, SMS service enables the transmission of short text messages among wireless devices103in a store and forward manner. These short text messages in general can be delivered at any point in time using out-of-band packet, low-bandwidth delivery mechanisms.

FIG. 2is a flowchart of an exemplary call process in operation of the system ofFIG. 1. In this process, navigation information can be generated for a directory assistance listing requested by a calling mobile device. At step201, a directory assistance call is initiated by mobile device103. The call is directed to the directory assistance interface119at step203. The caller and operator engage in voice interaction to identify the desired listing. For example, the caller may be asked to state the city and state, as well as a name, for the listing. The caller will be asked if route directions to the address for the listing are desired. Options for receiving a text message of the telephone number and address and/or for connection of the call to the listed telephone number may also be presented to the caller.

At step205, the telephone number and address for the listing is provided to the caller by voice communication. At step207, determination is made as to whether route directions are desired by the caller. If not, determination is made at step209whether the call is to be connected to the requested listing. If not, the voice call is ended at step211. If a connection determination is made at step209, the call is connected to the listing at step213and directory assistance interface is disconnected.

If the caller has requested route directions, as determined at step207, the telephone number and address for the listing is forwarded to the geographical location platform at step215. At step217, a determination is made as to the navigational capability of the calling mobile device. In the illustrated example, the wireless device contains a navigational application in location module105that can derive route directions to a specific end location in reliance upon its current location as obtained from GPS signals received from satellites107.

If determination is made at step217that the caller device contains navigation routing capability, as exemplified by wireless device103, the platform123need only provide the geographical location coordinates. At step219, database127is accessed to provide the location coordinates that correspond to the listed address. Data for these coordinates are transmitted to caller and the navigation application in location module105is activated. The process flow then reverts to step209.

If determination is made at step217that the caller device cannot, in itself, derive route directions to a specific end location, the direction/mapping module129is activated at step201. Route directions to the end location coordinates obtained from database127are derived. The platform123polls the calling mobile device103to determine current position of the device103. Upon receipt of the route directions, an application is activated in the mobile device103that presents navigation instructions to the user. The process flow reverts to step209for completion of the voice call. Data communication between the platform123and the mobile device103occurs until the caller terminates the direction route application, and thus may continue after the voice call has terminated. GPS data, representing the instantaneous location of the mobile device103are transmitted to the platform123and route direction data are transmitted to the mobile device103from platform123. An exemplary user interface for the mobile device103is shown inFIG. 5.

The described system and process provides a hands-free technique for obtaining navigation walking or driving directions for a user of a handset. By allowing a directory assistance service provider to send requested turn-by-turn instructions, the need for a succession of entries of a keypad in a handset is obviated. Such keypad entries can be difficult and dangerous while driving a vehicle, or even when walking.

FIG. 3represents a variation of the system shown inFIG. 1. The illustrated elements ofFIG. 1that are identically embodied in the system variation ofFIG. 3are not shown for simplicity of explanation. Navigation application305is coupled to display109in a navigation unit303that is physically separate from wireless device103. For example, the navigation unit303may be a well-known navigation system incorporated in a motor vehicle. Short range communication301, so-called “Wi-Fi” or “BLUETOOTH” communication, between navigation unit303and wireless device103is supported in a well-known manner. The process described inFIG. 2is applicable to the embodiment shown inFIG. 3. Following transmission by the geographical location platform123of the destination location coordinates to the wireless device103at step218, the destination coordinates are transmitted from the wireless device103to the separate navigation unit303, which is then activated. The navigation unit303has the inherent capability to receive GPS signals for identifying the current position of the vehicle. Map and driving direction data are then formulated by the navigation unit303for display, using the GPS data and the destination coordinate data.

FIG. 4is a flow chart of a call process that additionally provides for text messaging transmission. Text messages may be transmitted to wireless device103via the data network117from directory assistance interface119and geographical location platform123. Directory assistance text messaging service may be offered to a phone user as a preference option for all directory assistance calls.

At step401, a directory assistance call is initiated by mobile device103. The call is directed to the directory assistance interface119at step403. The caller and operator engage in voice interaction to identify the desired listing. For example, the caller may be asked to state the city and state, as well as a name, for the listing. The caller will be asked if route directions to the address for the listing are desired. Options for receiving a text message of the telephone number and address and/or for connection of the call to the listed telephone number may also be presented to the caller.

At step405, the telephone number and address for the listing is provided to the caller by voice communication. The caller may be given options by the operator to receive a text message for the listing and to receive travel directions to the listed destination. At step407, determination is made as to whether there is preference that has been set in the system for the calling subscriber device to receive text messages for listings. A set preference, or lack thereof, is indicated in the service provider's database. If a preset text message preference has been determined at step407, determination is made whether the caller, during the present call, has selected the option to receive travel directions to the listed destination at step409. The term “travel directions” in this context may include the turn-by-turn directions developed by the geographical location platform123, as described above, or the geographical location coordinates for a user's device that has the capability to derive directions.

If the travel direction option has been selected as determined at step409, the phone number and address for the listing are forwarded as a text message to the caller and travel directions are transmitted at step411. The voice call is then completed at step415. Call completion may include ending the call or connecting the call to the listed party while ending the directory assistance interface connection. If the travel direction option has not been selected as determined at step409, only the text message is forwarded at step415and the call is then completed.

If it is determined at step407that a messaging preference has not been preset for the subscribing device of the caller, determination is made at step413whether the caller, during the present call, has selected the option to receive a text message of the listing. If not, the call is completed (step417). If the text message option has been selected during the present call, determination is made at step419as to whether this is the first time that a caller from the calling subscriber device has selected the text message option in a directory assistance call. If not, the process reverts to step409. If the calling subscriber device has been determined to have engaged in a previous text message call, as determined at step419, determination is made at step421whether the caller has selected to receive text messages in future calls. If so, a message preference is set in the system for the subscriber device at step423. The process then reverts to step409. If the caller has not selected to receive text messages in future calls, as determined at step421, the process reverts to step409.

FIG. 5is a diagram of a user interface for accessing the navigation and location service, according to an exemplary embodiment. By way of example, the wireless device103presents a series of graphical screens to the user, beginning with screen501which permits the user to initiate a directory assistance call. A results screen503is presented after the user provides the necessary input for the operator to send the requested information. In this example, the user has requested the number to a golf course; as such, the screen503shows a telephone number as well as address of the particular golf course. At this point, the user may depress a soft key505to launch the navigation application with the resultant address.

Screen507provides an acknowledgement of the user's request to obtain directions. A navigating bar is displayed to indicate that the application is loading the navigation routes, and in this instance, is 18% complete. Thereafter, a navigation screen509shows directions, along with an associated voice prompt. A map is also provided, as in screen511.

The above described processes relating to providing navigation service with directory assistance may be implemented via software, hardware (e.g., general processor, DSP chip, an application specific integrated circuit (ASIC), field programmable gate arrays (FPGAs), etc.), firmware, or a combination thereof. Such exemplary hardware for performing the described functions is detailed below.

FIG. 6illustrates a computer system800upon which an exemplary embodiment can be implemented. For example, the processes described herein with respect to the geographical location platform123and the directory assistance interface can be implemented using the computer system600. The computer system600includes a bus601or other communication mechanism for communicating information and a processor603coupled to the bus601for processing information. The computer system600also includes main memory605, such as a random access memory (RAM) or other dynamic storage device, coupled to the bus601for storing information and instructions to be executed by the processor603. Main memory605can also be used for storing temporary variables or other intermediate information during execution of instructions by the processor603. The computer system600may further include a read only memory (ROM)607or other static storage device coupled to the bus601for storing static information and instructions for the processor603. A storage device609, such as a magnetic disk or optical disk, is coupled to the bus601for persistently storing information and instructions.

The computer system600may be coupled via the bus601to a display611, such as a cathode ray tube (CRT), liquid crystal display, active matrix display, or plasma display, for displaying information to a computer user. An input device613, such as a keyboard including alphanumeric and other keys, is coupled to the bus601for communicating information and command selections to the processor603. Another type of user input device is a cursor control615, such as a mouse, a trackball, or cursor direction keys, for communicating direction information and command selections to the processor603and for controlling cursor movement on the display611.

According to an embodiment, the processes described herein are performed by the computer system600, in response to the processor603executing an arrangement of instructions contained in main memory605. Such instructions can be read into main memory605from another computer-readable medium, such as the storage device609. Execution of the arrangement of instructions contained in main memory605causes the processor603to perform the process steps described herein. One or more processors in a multi-processing arrangement may also be employed to execute the instructions contained in main memory605. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the exemplary embodiment. Thus, exemplary embodiments are not limited to any specific combination of hardware circuitry and software.

The computer system600also includes a communication interface617coupled to bus601. The communication interface617provides a two-way data communication coupling to a network link619connected to a local network621. For example, the communication interface617may be a digital subscriber line (DSL) card or modem, an integrated services digital network (ISDN) card, a cable modem, a telephone modem, or any other communication interface to provide a data communication connection to a corresponding type of communication line. As another example, communication interface617may be a local area network (LAN) card (e.g. for Ethernet™ or an Asynchronous Transfer Model (ATM) network) to provide a data communication connection to a compatible LAN. Wireless links can also be implemented. In any such implementation, communication interface617sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information. Further, the communication interface617can include peripheral interface devices, such as a Universal Serial Bus (USB) interface, a PCMCIA (Personal Computer Memory Card International Association) interface, etc. Although a single communication interface617is depicted inFIG. 6, multiple communication interfaces can also be employed.

The network link619typically provides data communication through one or more networks to other data devices. For example, the network link619may provide a connection through local network621to a host computer623, which has connectivity to a network625(e.g. a wide area network (WAN) or the global packet data communication network now commonly referred to as the “Internet”) or to data equipment operated by a service provider. The local network621and the network625both use electrical, electromagnetic, or optical signals to convey information and instructions. The signals through the various networks and the signals on the network link619and through the communication interface617, which communicate digital data with the computer system600, are exemplary forms of carrier waves bearing the information and instructions.

The computer system600can send messages and receive data, including program code, through the network(s), the network link619, and the communication interface617. In the Internet example, a server (not shown) might transmit requested code belonging to an application program for implementing an exemplary embodiment through the network625, the local network621and the communication interface617. The processor603may execute the transmitted code while being received and/or store the code in the storage device609, or other non-volatile storage for later execution. In this manner, the computer system600may obtain application code in the form of a carrier wave.

In the preceding specification, various preferred embodiments have been described with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the broader scope of the invention as set forth in the claims that flow. The specification and the drawings are accordingly to be regarded in an illustrative rather than restrictive sense.