WO2011123273A1 - Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system - Google Patents

Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system Download PDF

Info

Publication number
WO2011123273A1
WO2011123273A1 PCT/US2011/029174 US2011029174W WO2011123273A1 WO 2011123273 A1 WO2011123273 A1 WO 2011123273A1 US 2011029174 W US2011029174 W US 2011029174W WO 2011123273 A1 WO2011123273 A1 WO 2011123273A1
Authority
WO
WIPO (PCT)
Prior art keywords
street
name
location
vehicle
message
Prior art date
Application number
PCT/US2011/029174
Other languages
French (fr)
Inventor
Eric Shigeru Ohki
Original Assignee
Honda Motor Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US12/749,108 external-priority patent/US8102281B2/en
Application filed by Honda Motor Co., Ltd. filed Critical Honda Motor Co., Ltd.
Priority to EP11710653A priority Critical patent/EP2553397A1/en
Priority to CN2011800266298A priority patent/CN102918362A/en
Priority to JP2013502632A priority patent/JP5705303B2/en
Publication of WO2011123273A1 publication Critical patent/WO2011123273A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3605Destination input or retrieval
    • G01C21/362Destination input or retrieval received from an external device or application, e.g. PDA, mobile phone or calendar application
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/096805Systems involving transmission of navigation instructions to the vehicle where the transmitted instructions are used to compute a route
    • G08G1/096827Systems involving transmission of navigation instructions to the vehicle where the transmitted instructions are used to compute a route where the route is computed onboard
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/096833Systems involving transmission of navigation instructions to the vehicle where different aspects are considered when computing the route
    • G08G1/096838Systems involving transmission of navigation instructions to the vehicle where different aspects are considered when computing the route where the user preferences are taken into account or the user selects one route out of a plurality
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/096855Systems involving transmission of navigation instructions to the vehicle where the output is provided in a suitable form to the driver
    • G08G1/096872Systems involving transmission of navigation instructions to the vehicle where the output is provided in a suitable form to the driver where instructions are given per voice
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/096877Systems involving transmission of navigation instructions to the vehicle where the input to the navigation device is provided by a suitable I/O arrangement
    • G08G1/096894Systems involving transmission of navigation instructions to the vehicle where the input to the navigation device is provided by a suitable I/O arrangement where input is assisted by the navigation device, i.e. the user does not type the complete name of the destination, e.g. using zip codes, telephone numbers, progressively selecting from initial letters
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • G08G1/0969Systems involving transmission of navigation instructions to the vehicle having a display in the form of a map

Definitions

  • a system and method are provided for receiving navigational data via a wireless messaging service on a navigation system. More particularly, the system and method provide a way to receive as well as request destination information via the wireless messaging service and capture navigational data from the message received, such as addresses, telephone numbers, or email addresses, and utilize the data for navigational routing, the generation of telephone calls, emailing and the like from the vehicle's navigation system.
  • the system and method may further provide a way for a user to select and send a location-related message or a preset message as a reply to a received message.
  • SMS Short Message Service
  • SMS messaging include, but are not limited to: exchanging short messages; receiving email service over SMS such that messages delivered to that email address are converted to short messages and delivered to a mobile device; receipt of information services like news, weather, entertainment, points of interest ("POI"), advertisements; and mobile chatting.
  • SMS messages in a vehicle from a handheld cellular phone can be difficult.
  • SMS messages received on a mobile device contain address data, telephone numbers, email addresses, or other navigational information that could be utilized by an onboard vehicle navigation system. Further, an SMS message may contain multiple sets of addresses and telephone numbers. This often occurs in response to a user's request to an SMS service provider for a point of interest in the vicinity of the user's present location.
  • a mobile device e.g., a cellular telephone
  • an SMS message may contain multiple sets of addresses and telephone numbers. This often occurs in response to a user's request to an SMS service provider for a point of interest in the vicinity of the user's present location.
  • Unfortunately there is currently no method for capturing and synchronizing the telephone number and navigational data obtained directly from the SMS message in the user's mobile device to prevent the need for manual entry of the information into a vehicle navigational system by the user and to avoid duplication of information entries.
  • Existing navigational systems often use icons on a map screen to indicate to the user the desired location they wish to route to in relation to the user's current location.
  • the icons can take the form of simple geometric shapes like circles or diamonds or may be shaped like the particular type of business they represent (e.g., shaped like a gasoline pump for a gas station). These icons generally represent locations that are stored on a non-updated storage medium in the navigational system, such as a DVD ROM.
  • Points of Interest information e.g., address information
  • SMS messaging can contain new addresses that might be represented by icons on the map screen. Accordingly, there is a need for a way to distinguish the icons for the newly received address information from the icons that are already shown on the navigation screen (e.g., icons representing locations from the DVD ROM and locations initially received from the user's phone via SMS messaging).
  • the present invention addresses the shortcomings of the prior art system and methods.
  • the present invention is directed to a system and method for sending and receiving wireless messages from SMS service providers that can include a common short code (“CSC") service (such as Google or Yahoo !).
  • CSC common short code
  • the system periodically polls a wireless device for newly received messages at fixed or varying rates and can extract and save telephone numbers and addresses to an onboard vehicle navigation/telematics system (“NAVI") that can route to the extracted addresses and/or call the extracted phone numbers via a wireless mobile device.
  • NAVI onboard vehicle navigation/telematics system
  • the wireless device can be paired with the NAVI over a Bluetooth® (Bluetooth is a registered trademark of Bluetooth Sig, Inc. of Bellevue,
  • the user can also send predetermined reply messages from the NAVI in response to SMS text messages received from the wireless device (e.g., a cellular telephone) and passed on to the NAVI.
  • the wireless device e.g., a cellular telephone
  • the NAVI displays icons on a map that correspond to the extracted addresses from the messages received in relation to the vehicle's current location.
  • the icons can be shown in a plurality of visual formats (e.g., icons comprising various colors and shapes) to distinguish previously viewed locations from newly received ones.
  • the system can pair-up address and telephone information that correspond to a particular location in a received message when multiple locations have been returned by a CSC service provider in response to a message request sent by the user.
  • a method for displaying a new address in a "Pop Up" screen when the vehicle ignition switch is first set to the "Engine On” position so the address will be easily selectable.
  • the new address is determined by comparing the addresses that were previously stored to the ones currently stored and showing the difference.
  • a method for displaying a travel route that comprises the determining of a current location of a vehicle, and receiving at least one SMS message from a wireless communication device when a vehicle ignition is turned on.
  • the at least one received SMS message comprises a received address.
  • the method further comprises calculating the travel route based at least in part on the current location and the received address, accessing any previously-stored addresses in a memory when the vehicle ignition is turned on; and displaying the travel route and an icon corresponding to the received address on a display screen.
  • the icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
  • a vehicle navigation system wherein a method for displaying information in an SMS message can be performed.
  • the method comprises receiving the SMS message and accessing any previously-stored addresses in a memory when a vehicle ignition is turned on.
  • the SMS message comprises a received address, while the previously stored addresses comprises an onboard format.
  • the method further comprises converting the received address to the onboard format, and displaying an icon corresponding to the received address on a display screen.
  • the icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
  • a vehicle navigation system comprising a receiver for receiving an SMS message, a display unit, a processor operatively coupled to the receiver and the display unit, and a memory operatively coupled to the processor.
  • the memory is comprised of executable code for the processor to determine a current location of the navigation system, and to instruct the receiver to receive the SMS messages when a vehicle ignition is turned on. At least one of the received SMS messages comprises a received address.
  • the executable code can cause the processor to instruct the display unit to display the travel route and an icon corresponding to the received address. The icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
  • a vehicle navigation system comprising a receiver for receiving an SMS message, a display unit, a processor operatively coupled to the receiver and the display unit, and a memory operatively coupled to the processor.
  • the memory is comprised of executable code for the processor to instruct the receiver to receive the SMS messages when vehicle ignition is turned on. At least one of the received SMS messages comprises a received address.
  • the executable code can cause the processor to access any previously- stored addresses when the vehicle ignition is turned on, with the previously-stored addresses being in an onboard format.
  • the executable code can further cause the processor to convert the received address to the onboard format, and to instruct the display unit to display an icon corresponding to the received address.
  • the icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
  • FIG. 1 is a block diagram of a navigation system according to a preferred embodiment of the system and method
  • FIG. 2 is a block diagram of an embodiment of a system for receiving an SMS message on a mobile device and utilizing the received telephone number and address data in a vehicle navigation system for the placement of a call and address routing, respectively;
  • FIG. 3A is a block diagram of an embodiment of a system for the generation of an SMS POI request message from a mobile device that utilizes the navigational data in the received SMS message response in a vehicle navigation system;
  • Fig. 3B is a block diagram of an exemplary computing device that may be configured to provide a service, such as, for example, a POI service;
  • Fig. 4A is a flow diagram of an exemplary method of retrieving and sending SMS messages with a wireless mobile device and a Bluetooth® enabled NAVI according to an embodiment of the system and method;
  • Fig. 4B is a flow diagram of an exemplary method of receiving and responding to SMS messages by a computing device functioning as a POI service provider;
  • FIGs. 5A-5E illustrate different aspects of a more detailed flow diagram for the exemplary method of retrieving and sending SMS messages with the wireless mobile device with the Bluetooth® enabled NAVI shown in Fig. 4A;
  • Fig. 6 is a diagram illustrating two exemplary data formats for SMS messages received from two SMS message providers in response to a user inquiry according to an embodiment of the system and method;
  • Fig. 7 is a flow diagram for a method of associating address information with telephone information contained in an SMS message according to an embodiment of the system and method;
  • FIGs. 8A-8B are flow diagrams for an exemplary method of displaying different colored location icons on a map to distinguish new and previously received address information extracted from incoming SMS messages according to an embodiment of the system and method;
  • Fig. 9 is a flow diagram for an exemplary method of storing address information from retrieved SMS messages while clearing map location icons and NAVI Inbox text messages when the vehicle ignition is turned “OFF" according to an embodiment of the system and method;
  • Figs. 10A-10B are examples of the navigational system display showing maps of the current vehicle position with different colored location icons corresponding to addresses in received SMS messages according to an embodiment of the system and method;
  • Fig. 11 A is an example of a map of the current vehicle position with enumerated colored location icons corresponding to addresses in received SMS messages displayed in the NAVI Inbox on the NAVI display according to an embodiment of the system and method;
  • Fig. 11 B is an example of the NAVI inbox that can appear on the NAVI display according to an embodiment of the system and method;
  • Fig. 12 is a flow diagram for a method of extracting address and phone number data from an SMS message according to an embodiment of the system and method
  • Fig. 13 is a flow diagram for an exemplary method of extracting phone number data from an SMS message according to an embodiment of the system and method
  • Figs. 14A-14E comprise a flow diagram for an exemplary method of extracting address data from an SMS message according to an embodiment of the system and method;
  • Figs. 15A-15B comprise a flow diagram for an exemplary method of routing to a destination contained in an SMS message according to an embodiment of the system and method;
  • Figs. 16A-16B comprise a flow diagram for an exemplary method of calling a telephone number contained in an SMS message according to an embodiment of the system and method;
  • Figs. 17A-17B are examples of the NAVI display screens that correspond to the flow diagram for extracting address and phone number data from an SMS message according to an embodiment of the system and method;
  • Figs. 18A-18B are examples of the NAVI display screens that correspond to the flow diagram when requesting a POI via an SMS message and extracting address and phone number data from the SMS message according to an embodiment of the system and method;
  • Figs. 19-24 are examples of NAVI display screens for displaying a received message, selecting a location-related reply message or a preset reply message, and sending the selected reply message;
  • Fig. 25-27 are flowcharts of an exemplary process for preparing and sending either a location-related reply message or a preset reply message.
  • a method and system for receiving navigational data via a wireless messaging service on a navigation system.
  • the term "navigational data” is used to mean any address, telephone number, email address, IP address, longitude and latitude coordinates, or any other navigational identifier yet to become commonplace for use on a navigation system for routing, calling, or the like.
  • a received message e.g., an SMS message
  • the data can be captured and stored for use by a navigation device or HFT for routing, the generation of telephone calls, emailing and the like.
  • SMS Simple Mail Transfer Protocol
  • TCPIIP Transmission Control Protocol
  • EMS Multimedia Messaging Service
  • MMS Multimedia Messaging Service
  • Fig. 1 provides a block diagram of an exemplary system 10 for receiving a message containing navigational data.
  • the system 10 comprises a mobile device or wireless communication device or wireless device 12, a Hands Free Telephone (HFT) 14, a navigation device ("NAVI") 16, an audio module 18, and a NAVI display 20.
  • the mobile device 12 may be a cell phone, PDA, or any mobile device known in the art that can receive messages such as an SMS message.
  • the system 10 is located in a vehicle in a preferred embodiment of the system and method but should not be limited thereby.
  • the mobile device 12 is located in a vehicle in a preferred embodiment of the system and method but should not be limited thereby.
  • the mobile device 12 is located in a vehicle in a preferred embodiment of the system and method but should not be limited thereby.
  • the mobile device 12 and the HFT 14 are equipped with a Radio Frequency ("RF") transceiver (not shown) that complies with the Bluetooth® wireless data communication standard and protocol established by Bluetooth® SIG, Inc. or the like, to allow communication and transferring of messages between the two devices.
  • RF Radio Frequency
  • the mobile device 12 and the HFT 14 are also equipped with a Dial-Up Networking (DUN) profile that provides a standard to access the Internet and other dial-up services using a Bluetooth® connection, as well as supporting SMS commands.
  • DUN Dial-Up Networking
  • the mobile device 12 can also establish a wireless Internet connection by other
  • CDMA Code Division Multiple Access
  • the HFT 14 is in electrical communication with the NAVI 16, which in turn is in electrical communication with both the audio module 18 and the NAVI display 20.
  • the HFT 14 transfers messages and commands between the mobile device 12 and the NAVI 16.
  • the NAVI 16 acts as the main onboard computer for the navigational system and connects all the components of the system together as well as performs all routing calculations and the generation of telephone calls via the HFT 14.
  • the NAVI 16 comprises a Global Positioning Satellite (“GPS") receiver 2, a position detection unit 4, a processor 6, a memory unit 8, and an intelligent text recognition system software component 9 that distinguishes navigational data such as address and telephone numbers in a message.
  • the GPS receiver 2 receives satellite broadcast signals from three or more GPS satellites orbiting the earth.
  • the position detection unit 4 is operatively coupled to the GPS receiver 2 and can compute the current longitude and latitude coordinates of the vehicle using trilateration, triangulation, or another method.
  • the processor 6 can be operatively coupled to the memory unit 8, the GPS receiver 2, and the NAVI display 20.
  • the memory unit 9 can comprise executable code that allows the processor to perform various functions such as running the intelligent text recognition software or instructing the NAVI display 20 to calculate travel routes and to display particular images (e.g., maps and routing information).
  • the NAVI display 20 acts as a visual interface to the user and can be a touchscreen that allows for both the display of data as well as acting as the user interface for entry of information into the NAVI 16.
  • the NAVI 16 can include an optional text-to-speech ⁇ "TTS") engine or software component that interfaces with the audio module 18 to allow messages to be read to the user in an auditory format.
  • the NAVI 16 may additionally include a human machine interface (' ⁇ ') for displaying messages and available commands via the NAVI display 20 and receiving entries from the user by incorporating a touchscreen into the NAVI display or by use of buttons, a keypad, a microphone interconnected to a voice recognition ("VR”) system, or the like.
  • ' ⁇ ' human machine interface
  • the mobile device 12 is queried every fifteen seconds via the HFT 14 to determine if a new SMS message has been received, but it should be appreciated that other time intervals can be utilized as well. If an SMS message is present, the SMS message is transmitted to the NAVI 16 for storage and can be displayed on the NAVI display 20. It should be appreciated that each component of the system can be integrated together as one hardware system onboard the vehicle or can be utilized as separate components. In another embodiment, the NAVI 16 can be equipped with an RF transceiver (not shown) that complies with the Bluetooth® wireless data
  • NAVI 16 can communicate directly with the mobile device 12 to allow communication and transferring of messages between the two devices without the use of the HFT 14.
  • the mobile device 12 can act as a Mobile Station (“MS”) and may send or receive SMS messages to and from a Mobile Switching Center (“MSC”) located in wireless proximity to the mobile device 12.
  • MS comprises all user equipment and software needed for communication with a wireless telephone network.
  • the MSC acts as a telephone exchange that provides circuit-switched calling, mobility management, and services such as voice, data, fax, as well as SMS to mobile phones roaming within the area that the MSC serves.
  • the mobile device 12 can be replaced with an SMS transceiver (not shown) that is located within the NAVI 16, so that the NAVI 16 can directly receive and send SMS messages.
  • Fig. 2 shows an exemplary embodiment of a system for receiving an SMS message 21 on a mobile device 12 and utilizing the telephone number and address data contained in the received SMS message 21 in a vehicle navigation system for the placement of a telephone call and for address routing.
  • an SMS message 21 may be entered into a device or computer capable of supporting SMS message generation.
  • the SMS message 21 is addressed to the mobile device 12 user and comprises both an address and a telephone number in the text of the message.
  • the SMS message 21 is subsequently transmitted over the wireless network 22 (e.g., a Global System for Mobile Communications ("GSM”) network or a CDMA network) and is received at the mobile device 12.
  • GSM Global System for Mobile Communications
  • CDMA Code Division Multiple Access
  • the NAVI display 20 in the vehicle 30 indicates that a new SMS message 21 has arrived. It should be appreciated that the SMS message 21 may be received at any time by the mobile device 12, even when the user is not located in the vehicle.
  • the NAVI 16 may automatically retrieve new SMS messages 21 from the mobile device 12, as well as periodically polling the mobile device 12 for newly received messages. The user can then select the SMS message 21 to be read aloud via the TTS software component .
  • the intelligent text recognition system in the NAVI 16 detects addresses and telephone numbers in the SMS message and enables the route and call functions via the HMI accordingly. If no addresses or telephone numbers are detected, the route and call functions are disabled. It should be appreciated that the SMS message 21 may comprise any number of addresses, telephone numbers, email addresses and the like, and each one will be detected by the intelligent text recognition system. In addition to having the SMS message 21 read aloud, the user can request routing to the address contained in the SMS message 21 by selecting a travel route or route function via the HMI.
  • the NAVI 16 calculates a route based at least in part on the current location of the vehicle, to the address 24 contained in the SMS message 21 and displays a map 25 with the suggested route highlighted (e.g., by the use of arrows and lines of varying density and colors). Additionally, the user may wish to place a telephone call to the phone number contained in the SMS message 21 by selecting a "Call" function via the HMI. A call can be placed via the HFT 14 using the telephone number 28 detected in the SMS message 21.
  • Fig. 3A shows an exemplary embodiment of a system for the generation of an SMS POI request message 40 from a mobile device 12 that utilizes the navigational data in the received SMS message response 34 in a vehicle navigation system.
  • an SMS request message 40 is sent to an SMS POI service, such as a Common Short Code service that includes multiple SMS service providers like Yahoo! and Google. Information searches can be requested on a particular subject, company, etc.
  • the SMS request message 40 may request all coffee houses in a specific city and state. It should be appreciated that any remote POI messaging service may be used.
  • the SMS request message 40 is entered via an HMI link to the NAVI 16, located in vehicle 30.
  • the user can enter information regarding a desired POI, such as a place name, company name, city, state, longitude, latitude, zip code, or the like.
  • a desired POI such as a place name, company name, city, state, longitude, latitude, zip code, or the like.
  • the SMS request message 40 may be generated using location information retrieved via the GPS receiver 2 (see Fig. 1) connected to the NAVI 16 in the vehicle.
  • the SMS request message 40 may include information regarding a particular location, such as a latitude and a longitude of a current location of vehicle 30, as determined by trilateration, by triangulating Global Positioning System (GPS) satellite signals or via other methods, or may include information regarding a location along a calculated route, such as a latitude and a longitude of the location along the calculated route.
  • GPS Global Positioning System
  • the SMS request message 40 is then transmitted via a wireless Bluetooth® connection to the mobile device 12 of the user.
  • the SMS request message 40 is addressed to the POI SMS message service provider 32 and is subsequently transmitted over the wireless network 22 (e.g., a GSM or COMA network).
  • the SMS request message 40 is received at the remote POI SMS message service provider 32 that automatically generates an SMS response message 34 that is transmitted back to the mobile device 12, via the wireless network 22.
  • the text portion of the SMS response message 34 may comprise data regarding at least one POI that satisfies an SMS Request Message, such as, for example, the SMS request message 40, and may include both an address and a telephone number for the requested at least one POI.
  • the NAVI display 20 in the vehicle 30 indicates when a new SMS message 36 has arrived. It should be appreciated that the SMS message 36 may be received at any time by the mobile device 12, even when the user is not located in the vehicle. When the user enters the wireless proximity of the vehicle with the mobile device 12, the NAVI 16 may automatically retrieve the new SMS message 36 from the mobile device 12 at that time, as well as periodically polling the mobile device 12 for newly received messages. The user may then select the SMS message 36 to be read aloud via the TTS software component 26.
  • the intelligent text recognition system in the NAVI 16 detects both the address and the telephone number in the SMS message and enables the route and call functions on the HMI. If no address or telephone number are detected, then the route and call functions are disabled.
  • the SMS message 36 may comprise any number of addresses, telephone numbers, email addresses and the like and each one will be detected by the intelligent text recognition system.
  • the user may route to the address contained in the SMS message by selecting a route function via an HMI.
  • the NAVI 16 then calculates a route to the address contained in the SMS message 36.
  • the user may place a telephone call to the phone number contained in the SMS message 36 by selecting a call function via the HMI.
  • a call is then placed via the HFT 14 using the telephone number detected in the SMS message 36.
  • the NAVI 16 may automatically route to the address located in the received SMS message rather than first requiring selection of the routing function by the user.
  • a POI icon may be used to indicate the location of the extracted address on the routing map displayed. Additionally, the NAVI 16 may automatically store the extracted addresses and/or phone numbers in an Address Book stored on the vehicle. In an embodiment of the system and method, a timer (not shown) may be implemented in the NAVI 16, such that an error message may be displayed if the timer expires and an SMS response message 36 has not yet been received.
  • Fig. 3B is an exemplary embodiment of a computing device 31 which may function as a POI service provider 32.
  • multiple computing devices 31 may be networked together to function as the POI service provider 32.
  • Computing device 31 may include a storage device 33, a processor 35, a memory, which may include a
  • dynamic memory such as, for example, random access memory (RAM) 37
  • static memory such as, for example, read-only memory (ROM) 39
  • Processor 35 may include one or more conventional processors that interpret and execute instructions.
  • RAM 37, ROM 39, and/or another type of dynamic or static storage device may store information and instructions for execution by processor 35.
  • RAM 37, or another type of dynamic storage device may store instructions as well as temporary variables or other intermediate information used during execution of instructions by processor 35.
  • ROM 39, or another type of static storage device may store static information and instructions for processor 35.
  • Storage device 33 may include a magnetic disk, a writable optical disc, a flash RAM device, or other type of storage device for storing data, instructions, or other information.
  • Non-limiting examples of storage device 33 may include Digital Video Disk (DVD), Compact Disk (CD), or other types of storage devices.
  • storage device 33 may include a database, such as, for example, a POI database.
  • Communication interface 41 may include a transceiver for communicating with other devices, over a network, via a wired connection, a wireless connection, or a
  • Fig. 4A is a flow diagram of an exemplary method of retrieving and sending SMS messages with a wireless mobile device and a Bluetooth® enabled NAVI according to an embodiment of the system and method.
  • the communication utilized for receiving and sending SMS messages between the wireless device 12 and the HFT 14 occurs in five modes- namely, Initiate Mode 42, Ready Mode 44, Expectant Mode 48, Reply Mode 56, and Off Mode 64.
  • Fig. 4A is a high-level diagram that shows how the five modes interact with each other. Details of the operation of each mode are illustrated in Figs. 5A-5E and described in detail below.
  • the algorithm begins in the Initiate Mode in step 42. There, all messages residing in the wireless device 12 are retrieved by the HFT 14 just after the vehicle ignition is set to the "ON" or "ACC" (i.e., Accessory) position (the normal mode of operation for the system and method) and a link between the wireless device 12 and the HFT 14 are affirmatively linked with each other via a Bluetooth® connection.
  • ACC i.e., Accessory
  • the NAVI 16 In the Ready Mode, the NAVI 16 periodically polls or checks for newly received messages by communicating with the HFT 14, which in turn communicates with the wireless device 12 using the Bluetooth® connection.
  • the system is capable of sending message requests and replies composed in the vehicle using the NAVI Display 20 or other HMI devices (such as a keypad or keyboard or a voice recognition system) to the wireless device 12, using the Bluetooth® connection. If a message request is composed in step 46, then a longitude and a latitude of a particular location may be obtained, the latitude and longitude may be included in the composed message request, and the composed message request may be sent to the wireless device 12, in step 47.
  • the particular location may be a current location of a vehicle that includes the NAVI, a location along a calculated route, or other type of location.
  • the system may then exit Ready Mode and enter the Expectant Mode in step 48. If the expected message is received within an allotted amount of time in step 50, then the message is sent to the NAVI to process in step 52. If the allotted amount of time expires before the expected message is received, then the NAVI displays an error message (and in another embodiment, audibly notifies the user of the error condition).
  • a reply message can be sent to the source of the SMS message if the system received a message in the Initiate or Ready Mode at step 54 and the system determines (from the phone number of the sender of the SMS message), that the message is a personal message (as opposed to a message sent from a CSC service provider). That is, the system checks the sender's phone number to determine if it is a valid phone number from other than a CSC service provider and if so, enables the "Reply" button on the NAVI display 20.
  • the Reply button can also be located on other HMI devices such as a keypad or keyboard in the vehicle. When the Reply button is selected by the user, the system enters the Reply Mode in step 56.
  • the user can choose from a variety of preset reply messages in step 58.
  • the user selects an appropriate reply message and a "Send" button is selected on the NAVI display 20 (or the Send button can be located on a keypad or keyboard in the vehicle).
  • the system then exits the Reply Mode and returns to the Ready Mode after the HFT 14 confirms that the message was successfully sent to the mobile device 12.
  • the NAVI display 20 will show that the message was sent successfully.
  • step 48 the system is waiting for or expects the receipt of a return message by the wireless device 12 in response to the in- vehicle message request sent in step 46.
  • the system preferably increases the polling rate to the wireless device 12 so that any newly received messages are detected by the system soon after the messages are received by the wireless device 12.
  • the system in step 50, examines messages received to determine if they have been sent from the expected same phone number as the message request has been sent to. If so, the system determines the received message to be in response to the message request sent by the user. The message is then sent to the NAVI 16 to process further (e.g., to notify the user and transfer to the NAVI Inbox (see Fig. 1 IB)) in step 52. If the message received is not determined to have been the message request sent previously, the system remains in the Expectant Mode and the algorithm returns to step 48 where the system remains until a timed-out condition occurs, as described with respect to Step 50, above.
  • the user can select a preset or pre- composed SMS message in reply to a received message.
  • the selected reply message is sent by the NAVI 16 to the HFT 14 that in turn communicates the reply message with the wireless device 12.
  • the wireless device 12 ultimately transmits the reply message to a remote location such as a friend's phone.
  • the algorithm then returns to step 44, where the system exits the Reply Mode and again enters the Ready Mode.
  • the HFT 14 checks if the wireless device 12 is no longer detected. If the wireless device 12 is detected and the power has not been turned off, at step 62 the system remains in the Ready Mode. If the Bluetooth® wireless device 12 is no longer detected at step 60, the system exits the Ready Mode and enters the Off Mode in step 64. In the Off Mode, the system stops polling the wireless device 12 for new messages. If a Bluetooth® phone such as the wireless device 12 or another compatible device is detected in step 66, the algorithm returns to step 42 where the system exits the Off Mode and enters the Initiate Mode. If the vehicle ignition is no longer in the ON position, as determined in step 62, the system enters Off Mode.
  • the system detects the mobile device 12 and the system starts the Initiate Mode process (e.g., the bonding operation). On the other hand, if the ignition switch is still in the ON position (as determined in step 62), but the system has merely lost communications with a Bluetooth® wireless device, in step 60, the system can immediately proceed with establishing a link with the newly detected wireless device in step 42, starting the Initiate Mode process.
  • the Initiate Mode process e.g., the bonding operation.
  • Fig. 4B is a flow diagram illustrating an exemplary process that may be performed by one or more computing devices 31 functioning as a POI service provider 32.
  • the process may begin with the POI service provider 32 determining whether a request message, such as, for example, a SMS request message, is received in step 49.
  • the request message may include data regarding a desired POI, including, but not limited to a place name, a company name, a city, a state, a latitude and a longitude of a particular location, or other information related to a desired POI.
  • the particular location may be a current location of a vehicle, a location along a calculated route, or another location.
  • the POI service provider 32 may attempt to find a POI that matches the data included in the request message and is within a first predetermined distance of the particular location.
  • the first predetermined distance may be 10 miles or another suitable distance.
  • the POI service provider may search a database for any matching POls within the first predetermined distance of the particular location.
  • the POI service provider 32 may then determine whether one or more POls have been found that match the data in the request message and are located within the first predetermined distance of the particular location.
  • the POI service provider 32 may attempt to find a POI that matches the data in the request message and is within a second predetermined distance of the particular location.
  • the second predetermined distance may be 20 miles or another suitable distance that is larger than the first
  • step 53 or step 61 the POI service provider 32 determines that one or more matching POls are found within the first predetermined distance or the second predetermined distance, respectively, then information regarding the one or more POls may be included in a generated response message, at step 55, and, in step 57, the response message may be transmitted to a device that transmitted the received request message.
  • the response message may include information about the one or more POls, such as, for example, one or more addresses and one or more phone numbers.
  • step 61 the POI service provider determines that there are no matching POls within the second predetermined distance from the particular location. If, in step 61, the POI service provider determines that there are no matching POls within the second predetermined distance from the particular location, then, at step 63, the POI service provider may generate a response message indicating that there are no matching POls within the second predetermined distance from the particular location. In step 65, the POI service provider 32 may then transmit the response message to the device that transmitted the received response message.
  • no more than a predefined number of matching POIs within the first predefined distance or the second predefined distance may have
  • the matching POIs corresponding to the information in the composed reply message may be a same distance from, or closer to, the particular location than other matching POIs not having corresponding information included in the reply message.
  • a POI service provider may perform a search for a POI that that nearly satisfies the data in the request message. For example, if the request message is a request for information concerning a particular coffee shop and no matching POI is found within the first and the second predefined distances, then the POI service provider may perform a search for information regarding any coffee shop within the first and the second predefined distances. If any coffee shops are found within the first or the second predefined distances, then information regarding at least some of the found coffee shops may be generated and transmitted in response to the request message.
  • Figs. 5 A-5E illustrate different aspects of a more detailed flow diagram for the exemplary method of retrieving and sending SMS messages using the wireless mobile device 12 with the Bluetooth® enabled NAVI 16, as was discussed with respect to Fig. 4A, above.
  • Fig. 5A illustrates the detailed steps of the algorithm for the Initiate Mode.
  • the vehicle ignition switch has been turned on (set to the "ON” or the "ACC" position) in step 68.
  • Entry point A as shown in block 69, is provided to allow other portions of the algorithm to return to this starting point.
  • the system then establishes a two-way communications link between the wireless device 12 and the HFT 14 in step 70.
  • the HFT 14 sends AT (attention) commands (which are part of the Hayes command set of modem commands) to the wireless device 12 to set the device to the Protocol Data Unit (“PDU”) mode.
  • AT attention
  • PDU Protocol Data Unit
  • step 76 the system sends additional AT commands instructing the wireless device 12 to enter the "Text" mode. If the wireless device does successfully enter the PDU mode, the algorithm proceeds to step 78. In either case, whether the wireless device 12 is in the text mode or the PDU mode, the system sends AT commands to the device so the HFT 14 can retrieve the SMS messages currently stored in the wireless device 12 in step 78.
  • the HFT 14 receives the SMS messages in step 80 and preferably revises the message format before the message is communicatively coupled to the NAVI 16. The system next exits the Initiate Mode and enters the Ready Mode in step 82 via entry point B at block 81.
  • Fig. 5B illustrates the detailed steps of the algorithm for the Ready Mode. Entry point B, as shown in block 81, is provided to allow other portions of the routine to return to this starting point.
  • the HFT 14 periodically sends AT (attention) commands to the wireless device 12 (e.g., once every fifteen seconds) instructing the device to transmit any new SMS messages that have been received over the wireless network (not shown) from a remote location or service provider.
  • the algorithm determines if the wireless device 12 has received any new SMS messages (e.g., messages not yet retrieved from the wireless device 12 by the HFT 14). If not, the algorithm returns to step 82 and the system remains in the Ready Mode.
  • the messages are retrieved by the HFT 14 via the Bluetooth® connection link to the wireless device 12 in step 86 and are transferred to the NAVI 16.
  • the retrieved SMS messages can be viewed by the user on the NAVI display 20, and any telephone and address information in the retrieved message are extracted by the NAVI 16 for further processing in step 88.
  • the processing can include making additions to the NAVI address book, showing locations as icons on a map, displaying routing information, reading the message via Text to Speech (TTS”) and the like.
  • TTS Text to Speech
  • SMS message request e.g., a request for information from a CSC service provider such as Google or Yahoo!
  • CSC service provider such as Google or Yahoo
  • step 98 the system will proceed to step 98, while the system exits the Ready Mode and enters the Expectant Mode via entry point C, at block 91.
  • the user can choose to reply to a received personal text message from the Ready Mode in step 96.
  • the system exits the Ready Mode and enters the Reply Mode in step 108 via entry point D at block 97.
  • the system continuously monitors for the presence of a wireless device at step 92. If the wireless device 12 is no longer detected, the system exits the Ready Mode and enters the Off Mode in step 118 via entry point E at block 93. If the wireless device 12 is still detected, the algorithm proceeds to step 94 and determines if the system has been turned off (e.g., the ignition has been set to the "OFF" position by the user). If so, the system exits the Ready Mode and enters the Off Mode in step 118 via entry point E at block 93. If on the other hand, the system has not been turned off, the system remains in the Ready Mode.
  • the system has been turned off (e.g., the ignition has been set to the "OFF" position by the user). If so, the system exits the Ready Mode and enters the Off Mode in step 118 via entry point E at block 93. If on the other hand, the system has not been turned off, the system remains in the Ready Mode.
  • Fig. 5C illustrates the detailed steps of the algorithm for the Expectant Mode. Entry point C, as shown in block 91, is provided to allow other portions of the routine to return to this starting point.
  • step 98 the system is waiting for or expects the receipt of a return message by the wireless device 12 in response to the in- vehicle message request sent at or before step 90 (see Fig. 5B).
  • the system increases the polling rate (e.g., the transmission rate of AT commands sent from the HFT 14 is increased to a frequency of less than fifteen seconds) to the wireless device 12 so that any newly received messages are detected by the system soon after the messages are received by the wireless device 12.
  • step 100 the algorithm determines if the system has received a new SMS message. If a new message has not been received, the algorithm returns to step 98 and the system remains in the Expectant Mode for a specified amount of time. If a new message has been received, the algorithm proceeds to step 106, where the system examines any new messages received and extracts the "sent from" information. In another embodiment, the "sent 'from" information is compared to the "sent to" phone number or CDC provider code of the message request previously sent by the user. Using the comparison results, the algorithm determines if the newly received SMS message is the requested message response the system has been expecting in step 104. If so, the system determines the received message to be in response to the message request sent by the user.
  • the message is then sent to the NAVl 16 to process further (e.g., to notify the user and transfer to the NAVl Inbox (see Fig. 11 B)) in step 106.
  • the system exits the Expectant Mode and returns to the Ready Mode in step 82 via entry point B at block 81. If in step 104, the message received is determined not to be a response to the user's message request, then the system remains in the Expectant Mode and the algorithm returns to step 98.
  • Fig. 5D illustrates the detailed steps of the algorithm for the Reply Mode. Entry point D, as shown in block 97, is provided to allow other portions of the routine to return to this starting point.
  • the "send to" information for the reply message is retrieved from the previously received message so the user will not have to re-enter the information in formulating her reply message.
  • the user selects a desired preset reply message from a list of available responses in step 110.
  • the preset reply message can comprise "I am on my way,” "Yes, thanks,” “No, thanks,” “I'm driving, "I'll talk to you later,” and the like.
  • the user can select a desired message response by scrolling through various menus on the screen of the NAVI display 20.
  • the user can select a desired preset reply message from a list that is read aloud via the TTS software component 26 (see Fig. 2).
  • the user can speak her choice of available reply messages using voice recognition software that is integrated into the NAVI 16 system.
  • the selected reply message is sent by the NAVI 16 to the HFT 14 and the HFT 14 reformats the selected reply message.
  • the HFT 12 then transmits the message to the wireless device 12 via the Bluetooth® communications link.
  • the wireless device 12 in turn transmits the reply message to a remote location or service provider via a wireless network (not shown).
  • the wireless device 12 transmits a message to the HFT 14 confirming that the reply message has been sent over the wireless network in step 114.
  • a "message sent" confirmation screen is then displayed on the NAVI display 20 in step 116.
  • the system then exits the Reply Mode and returns to the Ready Mode in step 82 via entry point B at block 81.
  • Fig. 5E illustrates the steps of the algorithm for the Off Mode. Entry point E, as shown in block 93, is provided to allow other portions of the routine to return to this starting point.
  • the system stops polling the wireless device 12 for new messages. If the user has turned off her wireless device 12 or the batteries run low, the device may lose the communications link with the HFT 14 in step 92 (see Fig. 5B). However, once a Bluetooth® phone such as the wireless device 12 or another compatible device (e.g., a device with a new Bluetooth® ID) is detected, the algorithm returns to step 70 via entry point A at block 69, while the system exits the Off Mode and enters the Initiate Mode.
  • a Bluetooth® phone such as the wireless device 12 or another compatible device
  • the system enters the Off Mode.
  • the system will enter the Initiate Mode at step 70 via entry point A at block 69.
  • the system can immediately proceed with establishing a link with the newly detected wireless device in step 70 (see Fig. 5 A).
  • the system simply enters Initiate Mode as if the algorithm was first commenced after the vehicle's ignition was set to the ON position in step 68.
  • the system clears its memory, retrieves all SMS messages from the wireless device 12, and monitor for newly received messages.
  • Fig. 6 is a diagram illustrating two exemplary data formats for SMS messages 122 and 124 received from two SMS message providers in response to a user inquiry, according to an embodiment of the system and method.
  • Data format 126 illustrates two possible data formats for the address and phone number information contained in a received SMS message.
  • Format 1 corresponds to the format of the data contained in the SMS messages 122.
  • Format 2 similarly corresponds to the format of the data contained in SMS message 124.
  • Similar requests for the address and telephone numbers for the nearest locations of a particular business, Eric's Coffee Shop, were requested via two separate SMS messages.
  • the SMS messages sent via the NAVI contained the current location of the user and were sent to two different CSC service providers, though other types of service providers, as well as other types of messaging services (e.g., multimedia messaging service), can be utilized with the invention.
  • SMS message 122 contains the address and phone number listings for two locations of Eric's Coffee Shop that are located within a predetermined distance or radius from the user's current location. The two listings contain the business name followed by the address (street number, street name, city, state, and zip code) and then the corresponding telephone number for each location in the SMS message. SMS message 124 similarly contains the address and phone number listings for two locations of Eric's Coffee Shop within a predetermined radius of the user's location, but the phone number for each location of Eric's Coffee Shop appears after the business name, before the address information appears. SMS message responses from different CSC providers may return different numbers of business locations within the same predetermined distance from the user's location, depending on the particular algorithms used and data stored in the CSC provider's databases.
  • Format 1 of data format 126 contains text characters followed by a first address, additional text characters followed by a first phone number for the first business location. This format repeats for a second address and a second corresponding phone number for a second business location and subsequently for as many business listings that are in the SMS message 122.
  • Format 2 of data format 126 contains text characters followed by a first phone number, additional text characters followed by a first address for the first business location. This format repeats for a second phone number and a second corresponding address for a second business location and subsequently for as many business listings as there are in the SMS message 122.
  • Fig. 7 is a flow diagram for a method of associating address information with telephone information contained in an SMS message according to an embodiment of the system and method.
  • the system can associate the address information with the telephone information for a particular listing contained in the received SMS message, whether the message follows format 1 or format 2 of data format 126 (see Fig. 6). If the data in a particular SMS message does not match format 1 or format 2, then the address and phone numbers contained in the SMS message will be stored separately.
  • format 1 or format 2 of data format 126
  • the algorithm or method illustrated in Fig. 7 operates as follows. First, the vehicle ignition is set to the "ON" position in step 128 and the NAVI 16 retrieves an SMS message from a wireless telephone or mobile device 12 in step 130. Polling of the wireless device 12 is periodically carried out by the NAVI 16 to retrieve newly received SMS messages from the wireless device 12 (see Figs. 4 and 5A-5E; see also, related discussion thereto). The intelligent text recognition system determines if the received SMS message contains recognizable phone and address information in step 132 (see Figs. 12 to 14E for details of the method of extracting and recognizing addresses and phone numbers).
  • step 143 If no address or phone number information is recognized in the received SMS message, the information received in the message is converted to the system's internal data format or onboard format in step 143 and then stored in memory in step 144. If on the other hand, the address and phone number information are recognized, the system determines if the format of the received SMS message matches format 1 of data format 126 in step 134. If there is a match, the system associates the address and the phone number for a particular listing with each other in step 136 and the data is converted to the internal format used by the system in step 143. The converted data is then stored in memory in step 144. If there is no match with format 1, the method proceeds to step 138 and similarly determines if the format of the received SMS message matches format 2 of data format 126.
  • step 140 If there is a match, the system associates the address and the phone number for a particular listing with each other in step 140, and the data is converted to the internal format used by the system in step 143. The converted data is then stored in memory in step 144. If there is no match with format 2, the method proceeds to step 142, where the method determines that the address and phone number information contained in the SMS message are to be stored separately in the system memory and proceeds to do so by first converting the data format in step 143. The system then stores the converted data in step 144. If there are additional messages received from the wireless device 12 in step 146, the method returns to step 132 and the system once again extracts and recognizes addresses from the received SMS message; otherwise, the method ends.
  • the system can recognize keywords in the text of the SMS message at step 132, that will identify the service provider and thereby identify the format to be used to help parse the address and phone number information from the SMS message received at step 130.
  • the "sent from" number contained in the SMS message can be recognized at step 132, and then used to identify the service provider; thereby identifying the format to be used to help parse the address and phone number information from the SMS message received at step 130.
  • Figs. 8A-B are flow diagrams for an exemplary method of displaying different colored location icons on a map to distinguish newly received address information from previously received address information extracted from incoming SMS messages according to an embodiment of the system and method.
  • the vehicle ignition is set to the "ON" position in step 148 and the NAVI 16 retrieves all SMS messages from the mobile device 12 in step 150.
  • the NAVI 16 can retrieve all SMS messages from the HFT 14. Polling of the wireless device 12 is carried out by the NAVI 16 to retrieve additional SMS messages that are received by the wireless device 12 (see Figs. 4 and 5A-5E and related discussion thereto).
  • the intelligent text recognition system determines if the received SMS message contains any phone and address information in step 152 (see Figs. 12 to 14E for details of the method of extracting and recognizing addresses and phone numbers) and extracts them.
  • the method proceeds to step 154 where the system determines if a corresponding entry for the extracted address is already stored in the internal file, which comprises a table, an array, a database, or other data structure. If not, the extracted address is determined to be a new address and is added into the internal file in step 158. The method next proceeds to step 160.
  • step 156 the address is determined not to be new and the system does not add the extracted address to the Address Book, but instead, the algorithm bypasses step 158, and proceeds to step 160.
  • the address can be highlighted in a "pop up" screen (appearing on the NAVI display 20 or other display screens located in the user's vehicle) or the user can be prompted by TTS to notify her that the NAVI 16 recognized that there is a new address in one or more of the SMS messages received.
  • the internal file can be an Address Book that is automatically updated with the address it receives via the wireless device.
  • the extracted address is shown in a first visual format, such as an icon or location icon in a first color or priority color (such as red) on a map that can be displayed on the NAVI display 20 (see Fig. 10A).
  • the location icon comprises a first shape (such as a triangle).
  • the location icon is shown as a shaded diamond on the embodiment of Fig. 10A, but the actual map image that appears on the NAVI display 20 can comprise any visible color (or shading) and take any shape such as a circle, square or a complex shape such as a building (or even a particular type of building such as a gas station or hotel).
  • the text message is added to the NAVI Inbox (see Fig. 11 B).
  • step 164 the method checks to see if there are additional messages retrieved by the NAVI 16 from the wireless mobile device 12. If so, the method returns to step 150 to retrieve the additional message and again checks if there are addresses to extract from the additional retrieved SMS messages in step 152.
  • Fig. 8B depicts the case where: 1) the vehicle ignition switch has been ON for a period of time and the NAVI 16 has already received and plotted (as a red location icon) one or more addresses as a result of completing the Initiate Mode, and 2) one or more additional addresses have been received at a later time and there is a need to distinguish the location of the newly received address from the previously received and plotted addresses.
  • steps 168, 170 and 172 are slightly different from steps 148, 150, and 152 of Fig. 8A.
  • step 168 the vehicle ignition has been in the "ON" position for a sufficient time period that at least one location icon of a first color has been shown to the user on a map on the NAVI display 20, in accordance with the method of Fig. 8 A.
  • the system periodically polls the wireless device 12 over a Bluetooth® connection with the HFT 14 for newly received messages (see Figs. 4 and 5A-5E, and discussion thereto).
  • step 170 the NAVI 16 receives a new SMS message from a wireless device 12 and the intelligent text recognition system determines if the new SMS message contains any phone and address information in step 172.
  • any location icons of the first visual format that are of the priority color since older addresses do not yet exist
  • the method proceeds to step 174 where any location icons of the first visual format (that are of the priority color since older addresses do not yet exist), generated from one or more of the previously-stored addresses and shown on the map on the NAVI display 20, are changed from the first visual format (the first shape and the first color (priority color (such as red) to a second color or non-priority color (such as grey) and a second shape.
  • the newly received address is plotted on the map in the priority color (e.g., Red).
  • the method proceeds to step 176 to determine if a corresponding entry for the extracted address is already stored in the internal file that can be loaded into the memory unit 8 (see Fig. 1). If not, the extracted address is added to the internal file in step 180 and the method proceeds to step 182. If the extracted address already exists in the internal file, the system does not add the extracted address to the internal file in step 178. Instead, the method bypasses step 180, and proceeds to step 182.
  • the internal file can be an Address Book.
  • the extracted address is shown in the first visual format, such as the icon or location icon in the first color (such as red) on the map and can be displayed on the NAVI display 20 (see Fig. 10A).
  • the location icon comprises the first shape and the first color (such as a red diamond in the embodiment of Fig. 10A), but can comprise any visible color and take any shape such as a circle, square or a complex shape.
  • the text message is added to the NAVI Inbox (see Fig. 1 IB).
  • the method checks if there are additional messages retrieved by the NAVI 16 from the wireless device 12. If so, the method returns to step 170 to retrieve the additional message and again checks if there are addresses to extract from the additional retrieved SMS messages in step 172.
  • the algorithms depicted in Figs. 8A-B can be modified slightly so that phone number information extracted in step 152 is shown in a first color (such as red) in step 160 on the NAVI display 20.
  • a first color such as red
  • new phone number information extracted in step 172 all previously-stored phone numbers (stored in the internal file and can be loaded into the memory unit 8) initially shown in the first color or priority color (such as red) are changed to a second color or non-priority color (such as grey) in step 174.
  • newly extracted phone numbers that are different from the previously-stored phone numbers are shown on the NAVI display 20 in the first color (e.g. red) in step 182.
  • Fig. 9 is a flow diagram for an exemplary method of storing address information from retrieved SMS messages while clearing map location icons and NAVI Inbox text messages when the vehicle ignition is turned “OFF" according to an embodiment of the system and method. That is, when the user deletes a text message on her cell phone or wireless device 12 (see Figs. 1-3), the corresponding map location icons, and NAVI Inbox message listing (discussed with respect to Figs. 8A and 8B, above) will continue to appear to the user until the vehicle ignition is set to the "OFF" position. At that time, the system will delete the location icons and NAVI Inbox message listings that were deleted from the user's cell. In another embodiment, optional step 191 will be performed after step 190 (described below) to delete the address information, unless the user elects to save it in the NAVI Address Book.
  • step 188 the vehicle ignition switch has been set to the "OFF" position (e.g., the user turned off the engine and removed her key).
  • the algorithm then proceeds to step 190 where internal file entries (not shown) contained in incoming SMS messages are deleted from the wireless device 12 while the vehicle's ignition was in the "ON" position, after the vehicle ignition has been set to the "OFF” position.
  • step 192 all location icons that correspond to addresses extracted from retrieved SMS messages on the wireless device 12, wherein the original SMS message has been deleted from the wireless device 12, are deleted from the NAVI map on the NAVI display 20 when the vehicle ignition is set to the "OFF" position.
  • the deletion of location icons includes both location icons of the first and second color.
  • step 194 all messages deleted from the wireless device 12 while the vehicle's ignition was in the "ON” position will in turn be deleted from the NAVI inbox when the vehicle ignition is set to the "OFF" position.
  • Figs. 10A-B are examples of the NAVI display 20 showing maps of the current vehicle position with differently shaded location icons corresponding to addresses in received SMS messages according to an embodiment of the system and method.
  • the actual image visible on the NAVI display 20, can however, comprise differently colored location icons as well.
  • location icons 196, 198, 200, 202, and 204 are visible. These location icons represent particular addresses on a map in relation to the current position of the user's vehicle.
  • Current location icon 196 represents the vehicle's current location and the position of icon 196 on the map will change as the NAVI display screen 20 is refreshed, if the vehicle has since moved.
  • icon 196 is wing-shaped and is encircled to stand out from the other location icons on the map, but can be shaped differently in other embodiments, as well as comprising an icon that is of the same or different color than icons 198-204.
  • Location icons 198-204 are shown as diamond shaped icons placed on the map in the location that corresponds to the address extracted from SMS messages retrieved from the wireless device and listed in the NAVI inbox (not shown), but other shaped icons can be utilized as well.
  • the use of the location icons as well as how and when they change color have been discussed with respect to the algorithms shown in Figs. 8A and 8B, above.
  • Icons 198 and 200 comprise the second visual format that can comprise the second color or non-priority color (e.g., grey) and can comprise the second shape. These icons depict older addresses and represent locations extracted from SMS messages in the NAVI inbox that have been initially retrieved from the wireless device 12. Location icons 202 and 204 also represent locations extracted from SMS messages in the NAVI inbox, but they represent more recently received messages and are thus represented by the priority- colored icons (e.g., red). In Fig. 10B, the map on the NAVI display 20 changes scale to zoom in and show the current location icon 196 in the center of the map and the previously viewed location icons 198 and 200 together with the newly received location icons 202 and 204.
  • the second visual format can comprise the second color or non-priority color (e.g., grey) and can comprise the second shape.
  • These icons depict older addresses and represent locations extracted from SMS messages in the NAVI inbox that have been initially retrieved from the wireless device 12.
  • Location icons 202 and 204 also represent locations extracted from SMS messages in the
  • time received information displayed in proximity to the corresponding icons 198-204 on the maps displayed on the NAVI display 20.
  • the time received information can comprise the time of receipt of the SMS message that contains address information that is displayed to the user via the icons 198-204.
  • the time received information can include the date of receipt as well.
  • these times can be used to limit the number of icons shown on the NAVI display 20, by allowing only addresses that were contained in messages received within the last week to appear on the screen.
  • FIG. 11 A is an example of a map of the current vehicle position with enumerated colored location icons corresponding to addresses in received SMS messages displayed in the NAVI Inbox on the NAVI display 20 according to an embodiment of the system and method.
  • the map shown in Fig. 1 1A is similar to the map shown in Fig. 10A, with the addition of enumerated location icons in Fig. 11 A.
  • the numbers illustrated are in the center of the diamond shaped location icons 210,212,214, and 216, but can appear in other formats too, such as smaller numerals located at the left or right portion of the location icons.
  • the numerals appearing on the icons correspond to the enumerated SMS messages listed in the NAVI Inbox, as illustrated in Fig. 1 IB.
  • Icons 210 and 216 represent initially viewed icons and comprise the second color or non-priority color (e.g., grey), while icons 212 and 214 represent newly received icons and comprise the first color or priority color (e.g., red), as discussed with respect to figures 10A and 10B, above.
  • Fig. 11 B illustrates the NAVI inbox that can be displayed on the NAVI display screen 20 when SMS messages are retrieved from the wireless device 12 according to an embodiment of the system and method.
  • the message listings are enumerated and are shown in descending order and any newly received, unviewed message is marked as "NEW.”
  • the user can route to a destination address displayed on the map as an icon, shown in the NAVI Address Book, or shown in the NAVI Inbox, as well as place a phone call to the corresponding phone number for any of these displayed items.
  • the messages can be listed in other ways (such as in ascending order) and the unread messages can be demarked by other methods (such as being listed in bold font or listed in a second colored font).
  • the intelligent text recognition system mentioned above comprises an algorithm or method used to extract address and phone number data from a message, shown in overview form in the flow diagram of Fig. 12.
  • the navigational data extracted from each message may then be sent to the NAVI 16 for routing or to the HFT 14 for calling.
  • the intelligent text recognition system first receives an SMS message from a wireless telephone or mobile device 12 in step 220, after the vehicle ignition has been set to the "ON" position in step 218. Polling of the wireless device 12 is periodically carried out by the HFT 14 to retrieve newly received SMS messages from the wireless device 12 (see Figs. 4 and 5A-5E; see also, related discussion thereto).
  • the algorithm then proceeds to parse through the message to determine if a telephone number is detected by identifying phone number patterns, as in step 222. If a phone number is detected, a call button on the NAVI display 20 is enabled and the phone number is stored in memory in step 224. The algorithm then proceeds to step 226 to determine if additional phone numbers are present in the SMS message. If so, step 222 is repeated until no additional phone numbers are present in the SMS message and the detected phone number strings are subsequently disregarded in step 228. The SMS message is then parsed through again to determine if an address is detected in step 230. If an address is detected, the route button on the NAVI display 20 is enabled and the address is stored in memory in step 232. The algorithm then proceeds to step 234 to determine if additional addresses are present in the SMS message.
  • Fig. 13 is a flow diagram illustrating a more detailed algorithm for an exemplary method of detecting the phone number data in an SMS message.
  • the method corresponds to a more detailed breakdown of the algorithm that may be used in step 222 of Fig. 12.
  • the algorithm starts at block 238. Entry point F, as shown in block 236, is provided to allow other portions of the routine to return to this starting point.
  • a parser checks each character string in the SMS message and determines in step 240 if there are additional character strings to analyze. If not, the algorithm ends in step 242. If there are more character strings to analyze, the current string is analyzed to determine if the string is a 7- digit numeric string in step 246.
  • the 7-digit string is saved as a 7-digit phone number in memory in step 248 and the parser moves to the next character string in step 254.
  • the algorithm then returns to step 238 via entry point F, to analyze the next character string. If the string is not a 7-digit numeric string, the string is analyzed to determine if it is a 10-digit string in step 250. If the string is 10 digits long, then the string is stored in memory in step 252, and the parser moves to the next character string step 254. The algorithm then returns to step 238 via entry point F, to analyze the next character string.
  • the string is analyzed in step 260 to determine if it is an 8-character string matching the format of ###*#### (e.g., 555-1212), where "#" represents a number and "* chorus represents a
  • step 262 If the string matches the 8-character format, the 7 numeric digits are extracted and stored in memory in step 262, and the parser moves to the next character string step 274. The algorithm then returns to step 238 via entry point F, to analyze the next character string. If the string does not match the 8-character format, the string is analyzed for the 12-character format of ###*###*#### (e.g., 213-555-1212) in step 264. If the string matches the 12-character format, the 10 numeric digits are extracted from the character string and are stored in memory in step 264, and the parser moves to the next character string step 274.
  • the string is analyzed for the 13- character format of *###*###*#### (e.g., (213)555-1212) in step 266. If the string matches the 13 -character format, the 10 numeric digits are extracted from the character string and are stored in memory in step 268, and the parser moves to the next character string step 274. If the string does not match the 13 character format, the string is analyzed for the 14-character format of *###**###*#### (e.g., (213) 555-1212) in step 270.
  • the 10 numeric digits are extracted from the character string and are stored in memory in step 272, and the parser moves to the next character string step 274. If there is no match, the parser simply moves to the next character string in step 274. The process is repeated for each character string encountered. It should be appreciated that other algorithms may be used for extracting a phone number from a text string and the above described steps may be performed in varying order from that presented in Fig. 13.
  • Figs. 14A-14E comprise different portions of a flow diagram illustrating a more detailed algorithm for an exemplary method of detecting the address data in an SMS message and corresponds to a more detailed breakdown of the algorithm that may be used in step 230 of Fig. 12.
  • the intelligent text recognition system keeps a working copy of the SMS message used during the process of extracting each address.
  • Fig. 14A shows a portion of the exemplary algorithm for extracting a zip code from the SMS message.
  • the parser does not need to repeat the process for strings already known to be a phone number.
  • Entry point K is provided to allow other portions of the routine to return to this starting point.
  • a parser moves to each character string in step 278, starting from the end of the string working backwards.
  • step 280 the algorithm determines if there are additional character strings to analyze. If not, the algorithm ends in step 282. It should be appreciated that while the exemplary algorithm shown parses backwards through the SMS message to speed up the process of detecting zip codes that are generally located at the end of an address, the system and method is not limited to parsing backwards.
  • the current string is analyzed to determine if the string is a 5-digit zip code in step 284. If the current string is a zip code, the 5-digit zip code is saved in memory as a backup in step 286. The parser then moves back one character string for analysis in step 288 and the algorithm proceeds to step 294 via entry point G at block 290. If the string is not a zip code, the algorithm proceeds to step 294 via entry point G at block 290, where the character string is analyzed to determine if it is a state.
  • Fig. 14B shows a portion of the exemplary algorithm for extracting a state from the SMS message.
  • Entry point G as shown in block 290, is provided to allow other portions of the routine to return to this starting point.
  • the current string is analyzed to determine if it is a state by comparing the character string to a list of states stored in memory to determine if there is a match. If the current string is a state, the state is saved in memory in step 296. A city list is also stored in memory, but is limited to only those cities within the detected state in step 298.
  • the parser moves back one character string for analysis in step 300, and proceeds to step 312 via entry point H at block 310.
  • step 302 determines in step 302 if a zip code was previously stored in the preceding step 286. If a zip code was stored, the state associated with the stored zip code is stored in memory in step 304. The city list is then limited to only those cities within the state correlating with the zip code in step 308 and the algorithm proceeds to step 312 via entry point H at block 310. If a zip code was not in fact previously stored, then in step 306 the city list is limited to only those cities within the state where the vehicle is currently located. The vehicle location is determined via the GPS receiver (not shown) connected to the NAVI 16. The algorithm then proceeds to step 312 to extract a city via entry point H at block 310.
  • Fig. 14C shows the portion of the exemplary algorithm for extracting a city from the SMS message.
  • Entry point H as shown in block 310, is provided to allow other portions of the routine to return to this starting point.
  • the current string is analyzed to determine if it is a city by comparing the character string to a limited list of cities stored in memory to determine if there is a match. If the current string is a city in the list, the city is saved in memory in step 314. There is also a street list stored in memory that is limited to only those streets within the detected city in step 316.
  • the parser moves back one character string for analysis in step 318, and the algorithm proceeds to step 330 to extract a street name via entry point I at block 328.
  • step 320 determines in step 320 if a zip code was stored in the preceding steps. If a zip code was stored, the city associated with the stored zip code is stored in memory in step 322. The street list is then limited to only those streets within the city in step 326 and the algorithm proceeds to step 330 in Fig. 14D via entry point I at block 328. If a zip code was not stored, the street list is limited to only those streets within the city where the vehicle is located in step 324. The vehicle location is determined via GPS from the NAVI 16 on the vehicle. The algorithm then proceeds to step 330 to extract a street name via entry point I at block 328.
  • Fig. 14D shows the portion of the exemplary algorithm for extracting a street name from the SMS message.
  • Entry point I shown in block 328
  • entry point L shown in block 332
  • step 330 an internal counter in memory is incremented in order to keep a count of how many strings have been compared to the limited street list.
  • the process of comparing street names to the limited list is performed four times to properly identify street address information in the exemplary embodiment, as address information may contain an apartment or suite designator, road type, direction, or other information (e.g., 400 South Main Street, Suite 100, Any Town, CA 90001).
  • the system and method is not limited to matching street names solely containing four strings, but may cycle through any number of strings to attempt to extract a complete street name.
  • the current string is analyzed to determine if it is numeric in nature, such as would be the case if the address string being analyzed contains a suite number. If the string is numeric, the parser is moved back one character string in step 336 and the algorithm continues in step 330. If the string is not numeric, the current string is analyzed in step 338 to determine if it is a street name by comparing the character string to the limited list of streets stored in memory to determine if there is a match. If the current string is a street name in the list, the street name is saved in memory in step 340.
  • a street number list stored in memory is limited to only those street numbers located on the detected street name in step 344.
  • the parser moves back one character string for analysis in step 348 and the algorithm proceeds to step 354 (see Fig. 14E) for extraction of the street number via entry point J at block 352. If the current string does not match a street name stored in the limited street name list, then the parser moves back one-character string in step 342 and the value of the internal counter is checked to determine if four strings have been compared yet in step 346. If the value of the incremental counter is four, then the street name cannot be found in the SMS message in step 350, and the algorithm proceeds back to step 278 (see Fig. 14A) via entry point K at block 292.
  • Fig. 14E shows the portion of the exemplary algorithm for extracting a street number from the SMS message.
  • Entry point J as shown in block 352, is provided to allow other portions of the routine to return to this starting point.
  • the current string is analyzed to determine if it is a street direction indicator such as North, South, etc. by matching the string against a direction table stored in memory. If the current string is a direction indicator, the indicator is stored in memory in step 356, the parser moves back one character string in step 358, and the algorithm proceeds to step 360.
  • the current string is analyzed in step 360 to determine if it is a street number by comparing the character string to the limited list of street numbers stored in memory to determine if there is a match. If the current string is a street number in the list, the street number is saved in memory in step 362 and the entire address is sent to the NAVI 16 for possible routing in step 366. The parser moves back one character string for further analysis in step 370, where the process is repeated in step 278 (see Fig. 14A) via entry point K at block 292, to determine if there are additional addresses in the SMS message.
  • step 364 the parser moves back one character string for further analysis in step 364 and the algorithm proceeds to step 368 to determine if the internal variable has reached four strings. If four strings have been compared, the algorithm returns to step 278 (see Fig. 14A) to determine if there are additional addresses for extraction via entry point K at block 292. If four strings have not yet been compared, the algorithm proceeds back to step 330 to compare additional strings via entry point L at block 332.
  • the order of the above steps in Figs. 14A-14E can be altered so that the system looks for all state and zip code information in the SMS message first. Then the algorithm uses the detected character strings as a basis for looking for address information, thereby reducing the number of iterations the system would otherwise have to perform.
  • Figs. 15A-15B illustrate different portions of a flow diagram of an algorithm for an exemplary method of routing to a destination contained in an SMS message.
  • a received SMS message will be displayed on the NAVI display 20 in step 372.
  • Entry point N is provided to allow other portions of the routine to return to this starting point.
  • a route selection icon or button will be enabled via the HMI (not shown) for selection by the user. If the user makes a selection to route to an address in step 374, the algorithm checks to see if there is one address or multiple addresses to present to the user in step 376.
  • step 376 the system determines if the user has input a selection (via the HMI) for the NAVI to make a call, read a message, or optionally, to delete a message in steps 380, 384, or 387, respectively. The method then returns to step 374 to determine if "Route" has been selected by the user.
  • step 376 if there is only one address to present to the user, the address extracted from the SMS message is displayed to the user in step 382 and the HMI prompts the user as to whether the user wants to edit (step 386), route (step 384), or cancel (step 390) the requested routing to the displayed address.
  • the method proceeds through a series of steps to determine if the user has selected any of these available commands via the HMI in steps 386 -390. If the user selected "Edit,” in step 386, the user edits the address data in step 388 and the method returns to step 382 to display the newly edited address.
  • step 384 the NAVI 16 will calculate and display a route to the presented address in step 385. If “Route” has not been selected by the user in step 384 and “Cancel” has been selected in step 390, the algorithm returns to step 372 and the SMS message is once again displayed in the NAVI display 20. In another embodiment, the address displayed on the NAVI display 20 in step 382 will not be editable by the user. Thus, the user can either "Route” to the address or "Cancel” the requested routing, thereby simplifying the algorithm by the elimination of steps 386 and 388.
  • step 376 If in step 376 there are multiple addresses to present to the user, the algorithm proceeds to step 392 (see Fig. 15B) via entry point M at block 378.
  • the method prompts the user via the HMI as to whether she wants to view the next extracted address (step 394), edit the current address (step 398), route to the current address (step 402), or cancel (step 406) the routing to the displayed address.
  • the method determines if the user has selected any of these options via the HMI in steps 394, 398, 402, and 406. If the user selects "Next" in step 394, the HMI displays the next address extracted from the SMS message in step 396 and returns to step 392.
  • step 398 the HMI allows for editing of the address data in step 400 and returns to step 392 to display the newly edited address in the NAVI display 20.
  • “Edit” is not selected in step 398, but instead "Route” is selected in step 402
  • the NAVI 16 will calculate and display a route to the presented address in step 404.
  • “Route” is not selected in step 402 and “Cancel” is selected in step 406, the algorithm returns to step 373 via entry point N at block 372, and the SMS message is once again displayed on the NAVI display 20.
  • all of the addresses displayed on the NAVI display 20 in step 392 will be shown in a list, thereby allowing the user to directly choose the address of interest. Again, the address displayed on the NAVI display 20 will not be editable by the user and so the user can either "Route” to the address or "Cancel” the requested routing, thereby simplifying the algorithm by the elimination of steps 398 and 400.
  • Figs. 16A-16B comprise different portions of a flow diagram illustrating an algorithm for an exemplary method of calling a telephone number contained in an SMS message.
  • a received SMS message is displayed on the NAVI display 20 in step 408.
  • Entry point P is provided to allow other portions of the routine to return to this starting point.
  • a call selection icon or button will be enabled via the HMI for selection by the user in step 224 (see Fig. 12).
  • step 412 if the user selects the "Call" command in step 412, the method then checks if there is one phone number or multiple phone numbers to present to the user in step 414. If the user has not selected the "Call" command in step 412, then the method proceeds through a series of steps to determine if she has selected to route to an address (step 418), read a message (step 422), or optionally, to delete a message (step 428) prior to the method returning to step 412, to determine if "Call" has been selected via the HMI.
  • step 414 if there is only one phone number to present to the user, the phone number extracted from the SMS message is displayed in step 420 and the HMI prompts the user to determine if she wants to edit (step 424), call (step 430), or cancel (step 434) the telephone call to the displayed phone number.
  • the method determines if the user has selected any of these options via the HMI in steps 424, 430, and 434. If the user selects "Edit" in step 424, the method allows the phone number to be edited in step 426 and returns to step 420 to display the newly edited phone number on the NAVI display 20.
  • step 424 If "Edit” is not selected in step 424, but instead "Call” is selected in step 430, a call will be placed to the presented phone number via the HFT 14 in step 432 and the method returns to step 408 to display the SMS message. If "Call” is not selected in step 430 and “Cancel” is selected in step 434, the method returns to step 408 and the SMS message is once again displayed on the NAVI display 20.
  • the phone number shown on the NAVI display 20 at step 420 will not be editable by the user.
  • the user can either "Call" the phone number shown on the NAVI display 20 or "Cancel" the requested phone call, thereby simplifying the algorithm by the elimination of steps 424 and 426.
  • step 414 If in step 414, there are multiple phone numbers to present to the user, the algorithm proceeds to step 436 (see Fig. 16B) via entry point O at block 416.
  • the method prompts the user via the HMI, to determine if she wants to view the next phone number in the SMS message (step 438), edit the current phone number (step 442), call the current phone number (step 446), or cancel the call (step 450) request to the displayed phone number.
  • the method determines if the user has selected any of these options via the HMI in steps 438, 442, 446, and 450. If the user selects "Next" in step 438, the HMI displays the next phone number extracted from the SMS message in step 440 and then returns to step 436.
  • step 442 the method allows the phone number to be edited in step 444 and returns to step 436 to display the newly edited phone number. If “Edit” is not selected, but instead "Call” is selected, a call will be placed to the presented phone number via the HFT 14 in step 448, and the algorithm returns to step 408 to display the SMS message on the NAVI display 20. If “Call” is not selected in step 446 and “Cancel” is selected in step 450, the algorithm returns to step 408 via entry point P at block 410, and the SMS message is once again displayed on the NAVI display 20.
  • Figs. 17A-17B show exemplary NAVI display screen images for a navigational system according to an embodiment of the system and method.
  • a screen 452 shows the screen image on the NAVI display 20 when an SMS message is received.
  • the screen 452 shows a map with the user's current location encircled.
  • the received message is indicated by the envelope icon in the upper right of the screen 452.
  • the user may choose to get more information via the HMI, that displays screen 456 with a menu of available user prompts on the NAVI display 20.
  • the user may then select "Messages" by touching the appropriate portion of the screen 456 to view a list of received messages that are next displayed in screen 454.
  • the user selects the SMS message to view by selecting the message number.
  • Screen 460 is then displayed listing the text of the SMS message in the top half of the screen image and a menu in the bottom half of the screen. Entry point R, as shown in block 458, is provided to allow other portions of the routine to return to screen 460.
  • the menu in screen 460 allows the user the option to read the message aloud via the TTS software component, reply to the SMS message, route to an address extracted from the SMS message, or call a telephone number extracted from the SMS message. If the user selects "Route” or "Call,” the screen transitions to either screen 464 or screen 466, respectively, via entry point Q at block 462. If the "Reply" function is selected by the user the system shows preset messages from which the user can select from to reply to the sender of the SMS text message.
  • the arrangement of the text message and menu options can vary, such as the menu occupying the top portion of the screen and the text portion of the SMS message occupying the bottom portion of the screen image.
  • the SMS message may be displayed in full or may be truncated depending on available space on the screen. If truncated, the HMI may allow for scrolling of the SMS message to allow non-visible portions to be viewed on the NAVI display 20.
  • the "Route" and “Call” selections will only be enabled when an address and phone number, respectively, are extracted from the SMS message.
  • entry point Q is provided to allow other screens to change to screens 464 and 466.
  • the HMI displays screen 464 to confirm the correct address that the user wishes to route to. Once confirmed, a route is calculated and screen 468 will be displayed.
  • the "Next" selection will be enabled so that the user can view and select another address that was extracted from the received SMS message.
  • a route is calculated from the current location of the vehicle to the address that was extracted and selected by the user, as shown in screen 468.
  • a progress bar informs the user how much longer it will be for the system to calculate the route requested.
  • screen 470 shows the calculated route on the NAVI display 20, as the NAVI 16 directs the user to the desired destination address.
  • the HMI displays screen 466 to confirm the correct phone number the user wishes to call. After the user confirms she wants to place a call to the displayed phone number, the system makes the call. The display 20 then transitions back to displaying the screen 460 (see Fig. 17 A) via entry point R, at block 458.
  • the screen shows the text of the received SMS message on the top portion of the screen and the menu on the bottom half of the screen.
  • the "Next" selection will be enabled in step 466. If the user once again selects "Call," the phone number to be called is sent to the HFT 14 and a call is generated to the selected phone number that was extracted from the incoming SMS message. The screen then transitions back to viewing the SMS message as shown in screen 460.
  • Figs. 18A-18B show exemplary NAVI display screen images for a navigational system according to another embodiment of the system and method.
  • a screen 472 shows the screen image on the NAVI display 20, when an SMS message is received.
  • the screen 472 shows a map with the user's current location encircled.
  • the received message is indicated by the envelope icon in the upper right of the screen 472.
  • the user may choose to get more information via the HMI, which displays screen 476 with a menu of available user prompts on the NAVI display 20. If the user wishes to obtain POI information for routing purposes, the user may then select "Point of Interest" by touching the appropriate portion of the screen 476.
  • the NAVI display 20 then transitions to screen 474 where the user enters the place name for which she wishes to get navigation data, via the HMI.
  • the user may enter information such as company name, city, state, longitude, latitude, zip code, or the like using the alphabet wheel and "Delete/Space" button that appear on the screen 474.
  • information may be entered into the HMI via other methods such as an alphanumeric keypad or via the user speaking aloud the characters into a microphone in the vehicle (wherein a VR software component is utilized).
  • the SMS request message 40 (see Fig. 3) may be generated using location information retrieved via the GPS receiver (not shown) connected to the NAVI 16.
  • a subject such as restaurants, or other POI indicators may alternately be entered to retrieve POI navigational data on the NAVI 16.
  • an SMS message addressed to a POI SMS message service provider will be generated and transmitted via a wireless Bluetooth® connection to the mobile device 12 (see Figs. 2 and 3).
  • the NAVI display 20 transitions to screen 478 and shows the user the message transmission progress as the SMS message is transmitted over the wireless network 22 (e.g., a GSM or CDMA network).
  • the POI SMS message service provider such as a CSC service provider like Google
  • the screen transitions to screen 482 (see Fig. 18B) via entry point T at block 480.
  • the screen 482 lists the text of the SMS message and allows the user the option of having the system read aloud the received message via the TTS software component (not shown), or optionally, to delete the SMS message (not shown), route to an address extracted from the SMS message, or call a telephone number extracted from the SMS message.
  • the SMS message may be displayed in full or may be truncated depending on available space. If truncated, the HMI may allow for scrolling of the SMS message to view the non-visible portions of the message.
  • the "Reply" option is disabled (or grayed out) as in screen 482.
  • the "Route” and “Call” selections are only enabled when an address and phone number, respectively, are extracted from the SMS message. If the user selects “Route,” the NAVI display 20 shows the screen 486 for the user to confirm the correct address to be routed. As discussed in reference to Fig. 15B, if multiple addresses are extracted from the SMS message, the "Next" selection icon or button will be enabled on the HMI.
  • Fig. 18B if the user once again selects "Route," a route is calculated from the current location of the vehicle to the extracted and selected POI address. A progress bar informs the user how much longer it will be for the system to calculate the route requested as shown on screen 484.
  • screen 488 shows the calculated route to the desired POI on the NAVI display 20, as the NAVI 16 directs the user to the desired destination address.
  • the NAVI 16 may automatically route to the address located in the received SMS message rather than requiring selection by the user.
  • a POI icon may be used to indicate the location of the extracted address on the routing map displayed.
  • the NAVI 16 may automatically store the extracted addresses and/or phone numbers in an address book stored on the vehicle.
  • a timer may be implemented in the NAVI 16 such that an error message can be displayed if the allotted time expires and an SMS response message has not yet been received from the SMS message service provider.
  • the user may request information other than address and phone number information from the service provider by the use of additional available selections in screen 476. Both the wireless carrier and the service providers will then return other requested information such as "Weather”, “Business News”, “Movie Show Times,” etc., by the system sending a correctly coded text message. In this way, the user will be able to view "Headline News" as an SMS text message in her vehicle in a similar fashion as with personal text messages received from a friend.
  • Figs. 19-24 illustrate exemplary display screens on the NAVI display 20 in one embodiment in which a user may select one of a number of preset text reply messages in order to respond to a received text message.
  • Fig. 19 illustrates an exemplary display screen showing a list of received text messages after a user has indicated a desire to view the list of received text message. The user may indicate the desire to view the list of received text messages by touching an appropriate portion of a display screen, as previously discussed with respect to display screen 456.
  • Fig. 19 shows only one message.
  • the display screen of Fig. 19 may be capable of displaying numerous messages.
  • Fig. 20 illustrates an exemplary display screen which may be displayed in response to the user selecting message 1 from the display screen of Fig. 19.
  • the displayed message of Fig. 20 may include a text portion 490, an originator's address/phone number 496 and a sent time 494.
  • the user may have an option of selecting read 498 or reply 500. In other embodiments, fewer, more, or different options may be provided to the user.
  • Fig. 21 illustrates an exemplary display screen which may be displayed in response to the user selecting reply 500 from the display screen of Fig. 20.
  • the exemplary display screen of Fig. 21 may list a number of preset text reply messages which the user may select as a reply to a received displayed text message.
  • messages 1 and 2 may be location-related text reply messages.
  • a navigation system or device may determine a current location of a vehicle, may prepare a reply including information, such as, for example, a heading or driving direction, a street on which the vehicle is currently located, and a cross street within a predetermined distance ahead of the vehicle.
  • the navigation system or device may determine an amount of time to reach a set destination and a distance to reach the set destination. The navigation system or device may then prepare a preset a reply message including information, such as, for example, an amount of time and a distance to reach the set destination from the current location of the vehicle. In response to the user selecting any one of messages 3-6 of the display screen of Fig. 21, the navigation system or device may prepare a preset reply message including text from the selected one of the messages 3-6.
  • the exemplary display of Fig. 21 shows six reply messages from which the user may select one.
  • a number of reply messages from which the user may select may be less than six or greater than six.
  • a number of location-related reply messages may be fewer than two or greater than two and may contain additional or different location-related information than the location-related reply messages shown in Fig. 21.
  • Fig. 22 illustrates an exemplary display screen which may be displayed after the user selects reply message 1 from the display screen of Fig. 21.
  • the display screen of Fig. 22 may show a prepared text reply message 502 and a recipient's address/phone number 504.
  • the navigation system or device may prepare the text reply message 502, corresponding to the selected reply message, by inserting a heading, or direction of travel, and a name of a street on which the vehicle is currently located into the prepared text reply message 502.
  • the navigation system or device may also include the recipient's address/phone number, with respect to the prepared text reply message 502.
  • the user may have an option of selecting one of send 506, call sender 507, cancel 508 or call 510.
  • the display screen of Fig. 21 may again be presented to the user. If the user selects send 506, the prepared text reply message 502 may be sent to an originator of the received text message. If the user selects call sender 507, a phone call may be made to a number in the received message. Call 510 may be masked if a phone number is not found in the text message.
  • Fig. 23 illustrates an exemplary display which may be presented to the user after selecting send 506 from the display screen of Fig. 22.
  • the display screen of Fig. 23 may include a sending indicator 512, to indicate that the text reply message is currently being sent, and a time or progress indicator 514 to indicate an amount of progress made toward sending the text reply message. While the text reply message is being sent, the user may select cancel 515, which may result in the display screen of Fig. 22 being redisplayed.
  • a sending indicator 512 to indicate that the text reply message is currently being sent
  • a time or progress indicator 514 to indicate an amount of progress made toward sending the text reply message.
  • cancel 515 While the text reply message is being sent, the user may select cancel 515, which may result in the display screen of Fig. 22 being redisplayed.
  • cancel 515 may result in the display screen of Fig. 22 being redisplayed.
  • cancel 515 may not appear in the display screen of Fig. 23.
  • Fig. 24 illustrates an exemplary display screen which may be displayed if an error occurs while attempting to send the text reply message.
  • the exemplary display screen of Fig. 24 may include an error message 516 to inform the user of the error.
  • the user may cause the display screen of Fig. 22 to be redisplayed by selecting cancel 518 from the display screen of Fig. 24.
  • Figs. 25-27 are flowcharts illustrating an exemplary process that may be performed by a navigation system or device in various embodiments.
  • the process may begin with a navigation device receiving a selection from a user of one of a number of reply text messages with respect to a received text message (act 600).
  • the navigation device may determine an originator's address/phone number with respect to the received text message (act 602).
  • the navigation device may then determine whether a first location-related reply text message (reply 1; see Fig. 21) is selected (act 604).
  • the navigation device may determine a current location of a vehicle (act 606).
  • a result of determining the current location of the vehicle may include a latitude and a longitude with respect to the current location of the vehicle, which may be used to determine a corresponding city (act 608).
  • the navigation device may refer to one or more databases to determine the city. Next, the navigation device may attempt to determine a street on which the vehicle is located ("on" street) based on the latitude and longitude (act 610). The navigation device may determine the street by referring to the one or more databases.
  • the navigation device may then determine whether the "on" street has a valid street name (act 612).
  • a valid street name is a street name, from the one or more databases, which is associated with a street or road that has been verified.
  • a non-street such as, for example, a parking lot, an open field, or other non-street may not have a valid street name.
  • the navigation device may prepare a reply text message with a name of the determined city (act 637). For example, the navigation device may prepare a location-related reply text message including "I'm driving in Torrance, CA". Of course, the navigation device may prepare a location-related reply text message including a name of a different city or town based on a current location of the vehicle. The navigation device may then send the prepared reply text message to the originator of the received text message (act 626; Fig. 26). In some embodiments, the navigation device may obtain the originator's address/phone number from the received text message.
  • the navigation device may determine a current compass heading of a direction of travel of the vehicle by tracking a movement of the vehicle (act 614).
  • the navigation device may determine a cross street within a predefined distance in front of, or ahead of, the vehicle (act 616; Fig. 26).
  • the cross street may be a highest class of street within the predefined distance ahead of the vehicle.
  • a street may have a class, such as, for example, in descending class order: a freeway, a 4-lane road, a 2-lane road, and a side street. If cross street candidates include, for example, a 4-lane road and a side street, then the navigation device may determine the 4-lane road as the cross street.
  • street may have additional or different classes.
  • the navigation device may determine whether the "on" street is a freeway (i.e. has a class of freeway) (act 618). If the "on" street is a freeway, then the navigation device may determine whether the cross street is a ramp (act 620). If the cross street is determined not to be a ramp or the "on" street is not a freeway, then the navigation device may determine whether the cross street has a valid street name (act 622). If the navigation device determines that the cross street has the valid street name, then the navigation device may prepare a reply text message which includes a name of the determined city, a name of the on street, a name of the cross street and the heading (act 624).
  • a prepared reply text message may be "I'm heading South on Hawthorne Blvd near 190th St. in Torrance, CA".
  • the prepared reply text message may vary in other embodiments.
  • the navigation device may send the prepared reply text message to the originator of the received text message (act 626). The process may then be completed.
  • the navigation device may prepare a reply text message which includes the name of the determined city, the name of the "on" street, and the heading (act 630).
  • a prepared reply text message may be "I'm heading South on Hawthorne Blvd in Torrance, CA.
  • the navigation device may then send the prepared reply text message to the originator of the received text message (act 626). The process may then be completed.
  • the navigation device determines that the cross street is a ramp (the "on" street having previously been determined to be a freeway during act 618), then the navigation device may set the name of the cross street to be a name associated with the ramp (act 628). The navigation device may then perform acts 624 and 626 as described previously.
  • a second location-related reply text message may include a distance to a set destination, and an amount of time to arrive at the set destination based on the current location of the vehicle (see Fig. 21).
  • the second location-related reply text message may only be selected if the navigation device has a set destination and has planned a route to the set destination.
  • reply 2 may not appear as a choice on the display screen or may be grayed- out.
  • the navigation device may send the selected preset reply text message to the originator of the received text message (act 632; Fig. 25).
  • a non-location-related reply text message such as, for example, "I'm on my way now”
  • the navigation device may send the reply text message, "I'm on my way now” to the originator of the received text message. The process may then be completed.
  • the navigation device may determine a current location of the vehicle (act 634). In some embodiments the determined current location of the vehicle may include a latitude and longitude corresponding to the current location of the vehicle. Next, the navigation device may determine a distance to the set destination (act 636). In some embodiments, the distance may be determined in miles. In other embodiments, the distance may be determined in kilometers. In some other embodiments, the distance may be determined in another suitable unit of measure.
  • the navigation device may determine an amount of time to reach the set destination (act 638; Fig. 27).
  • the amount of time may be determined in minutes, hours and minutes, or in another suitable time unit or combination of time units.
  • the navigation device may then determine whether the set destination has a name (act 640).
  • the set destination may have a name, which may be set by the user.
  • a destination name is "UCLA Marina Center”.
  • the navigation device may determine whether the set destination has a corresponding address (act 642). In some embodiments, the navigation device may refer to one or more databases to determine whether the set destination has a corresponding address. If the navigation device determines that the set destination has the corresponding address, then the navigation device may prepare a reply text message which includes a number of miles (or other unit for measuring distance) to the set destination, the time to reach the set destination, the destination name and the destination address (act 644).
  • One example of such a prepared reply text message may be "I'm 31 miles and 42 minutes from UCLA Marina Aquatic Center at 14001 Fiji Way, Marina Del Rey, CA.”
  • the navigation device may then send the prepared reply text message to the originator of the received message (act 626; see Fig. 26). The process may then be completed.
  • the navigation device may prepare a reply text message which includes the number of miles (or other unit for measuring distance) to the set destination, the time to reach the set destination and the destination name (act 646).
  • a reply text message may be "I'm 31 miles and 42 minutes from UCLA Marina Aquatic Center.” The process may then be completed.
  • the navigation device may prepare a reply text message which includes the number of miles (or other unit for measuring distance) to the set destination, the time to reach the set destination, and the destination address (act 648).
  • a prepared reply text message may be "I'm 31 miles and 42 minutes from 14001 Fiji Way, Marina Del Rey, CA.”
  • the navigation device may then send the prepared reply text message to the originator of the received message (act 626; see Fig. 26). The process may then be completed.
  • the examples and processes discussed with respect to Figs. 19-27 refer to text messages, the examples and processes may apply to other types of messages including, but not limited, to e-mail messages and SMS messages.
  • navigational data from messages outgoing from the vehicle as well as incoming to the vehicle.
  • the system could comprise both a TTS engine and a VR software component so the extracted navigational data or messages could be read aloud to the user, while user input and message composition could be provided by the user speaking aloud her choices.

Abstract

A system and method are provided for receiving navigational data via a wireless messaging service on a navigation system. The system and method provide a way to send requests for destination information via the wireless messaging service and capture navigational data from the responsive message received, such as addresses, telephone numbers, or email addresses, and then utilize that data for navigational routing, generation of telephone calls, emailing and the like, from the vehicle's navigation system. The system and method further sends location-related reply messages and preset reply messages to an originator of a received message. A wireless device can be paired with the navigation system over a Bluetooth® communication link, wherein the navigation system periodically polls the wireless device for newly received messages. In one embodiment, the NAVI displays icons on a map that correspond to the extracted addresses from the messages received in relation to the vehicle's current location.

Description

METHOD AND SYSTEM FOR RECEIVING AND SENDING NAVIGATIONAL DATA VIA A WIRELESS MESSAGING SERVICE ON A NAVIGATION SYSTEM
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation-in-part of U.S. Patent Application No.
12/749,108, filed March 29, 2010, which is specifically incorporated herein, in its entirety, by reference.
BACKGROUND OF THE INVENTION
1 . Field of the Invention
[0002] A system and method are provided for receiving navigational data via a wireless messaging service on a navigation system. More particularly, the system and method provide a way to receive as well as request destination information via the wireless messaging service and capture navigational data from the message received, such as addresses, telephone numbers, or email addresses, and utilize the data for navigational routing, the generation of telephone calls, emailing and the like from the vehicle's navigation system. The system and method may further provide a way for a user to select and send a location-related message or a preset message as a reply to a received message.
2. Description of Related Art
[0003] Currently, when a user in a vehicle wishes to enter a destination address into an onboard vehicle navigation system for routing to the address, the user must manually enter the address information directly into the user interface of the navigation system. Conversely, when a user wishes to place a telephone call using a Hands Free Telephone ("HFT") device, the user can vocalize the desired telephone number and use simple voice commands (e.g., "Call home" or "Check voicemail"), though there sometimes is a keypad or a set of buttons that allow manual entry of data. Manual entry of data, especially non-numeric text into the navigation system is both cumbersome and time consuming. [0004] The use of messaging services such as Short Message Service ("SMS") to transmit and receive messages on mobile devices has gained in popularity and SMS use is ever increasing. SMS is a wireless messaging service that enables the transmission of
alphanumeric messages between mobile subscribers and external systems such as electronic mail, paging, and voice mail systems. Common usages for SMS messaging include, but are not limited to: exchanging short messages; receiving email service over SMS such that messages delivered to that email address are converted to short messages and delivered to a mobile device; receipt of information services like news, weather, entertainment, points of interest ("POI"), advertisements; and mobile chatting. Sending SMS messages in a vehicle from a handheld cellular phone can be difficult. Thus, it would be desirable to have a way to simplify for the driver the process of sending and receiving SMS messages from a vehicle.
[0005] Oftentimes, SMS messages received on a mobile device (e.g., a cellular telephone) contain address data, telephone numbers, email addresses, or other navigational information that could be utilized by an onboard vehicle navigation system. Further, an SMS message may contain multiple sets of addresses and telephone numbers. This often occurs in response to a user's request to an SMS service provider for a point of interest in the vicinity of the user's present location. Unfortunately, there is currently no method for capturing and synchronizing the telephone number and navigational data obtained directly from the SMS message in the user's mobile device to prevent the need for manual entry of the information into a vehicle navigational system by the user and to avoid duplication of information entries.
[0006] Existing navigational systems often use icons on a map screen to indicate to the user the desired location they wish to route to in relation to the user's current location. The icons can take the form of simple geometric shapes like circles or diamonds or may be shaped like the particular type of business they represent (e.g., shaped like a gasoline pump for a gas station). These icons generally represent locations that are stored on a non-updated storage medium in the navigational system, such as a DVD ROM. If a vehicle user requests additional Points of Interest information (e.g., address information) via SMS messaging on her phone, the responsive SMS messages received can contain new addresses that might be represented by icons on the map screen. Accordingly, there is a need for a way to distinguish the icons for the newly received address information from the icons that are already shown on the navigation screen (e.g., icons representing locations from the DVD ROM and locations initially received from the user's phone via SMS messaging).
SUMMARY OF THE INVENTION
[0007] The present invention addresses the shortcomings of the prior art system and methods. In particular, the present invention is directed to a system and method for sending and receiving wireless messages from SMS service providers that can include a common short code ("CSC") service (such as Google or Yahoo !). The system periodically polls a wireless device for newly received messages at fixed or varying rates and can extract and save telephone numbers and addresses to an onboard vehicle navigation/telematics system ("NAVI") that can route to the extracted addresses and/or call the extracted phone numbers via a wireless mobile device. The wireless device can be paired with the NAVI over a Bluetooth® (Bluetooth is a registered trademark of Bluetooth Sig, Inc. of Bellevue,
Washington) communication link, though other communications methods and protocols are also within the scope of the invention. The user can also send predetermined reply messages from the NAVI in response to SMS text messages received from the wireless device (e.g., a cellular telephone) and passed on to the NAVI.
[0008] In one embodiment, the NAVI displays icons on a map that correspond to the extracted addresses from the messages received in relation to the vehicle's current location. The icons can be shown in a plurality of visual formats (e.g., icons comprising various colors and shapes) to distinguish previously viewed locations from newly received ones. In another embodiment, the system can pair-up address and telephone information that correspond to a particular location in a received message when multiple locations have been returned by a CSC service provider in response to a message request sent by the user.
[0009] In accordance with another aspect of the embodiments described herein, there is provided a method for displaying a new address in a "Pop Up" screen when the vehicle ignition switch is first set to the "Engine On" position, so the address will be easily selectable. The new address is determined by comparing the addresses that were previously stored to the ones currently stored and showing the difference.
[0010] In accordance with one aspect of the embodiments described herein, there is provided a method for displaying a travel route that comprises the determining of a current location of a vehicle, and receiving at least one SMS message from a wireless communication device when a vehicle ignition is turned on. The at least one received SMS message comprises a received address. The method further comprises calculating the travel route based at least in part on the current location and the received address, accessing any previously-stored addresses in a memory when the vehicle ignition is turned on; and displaying the travel route and an icon corresponding to the received address on a display screen. The icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
[0011] In accordance with another aspect of the embodiments described herein, there is provided a vehicle navigation system, wherein a method for displaying information in an SMS message can be performed. The method comprises receiving the SMS message and accessing any previously-stored addresses in a memory when a vehicle ignition is turned on. The SMS message comprises a received address, while the previously stored addresses comprises an onboard format. The method further comprises converting the received address to the onboard format, and displaying an icon corresponding to the received address on a display screen. The icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
[0012] In accordance with another aspect of the embodiments described herein, there is provided a vehicle navigation system. The system is comprised of a receiver for receiving an SMS message, a display unit, a processor operatively coupled to the receiver and the display unit, and a memory operatively coupled to the processor. The memory is comprised of executable code for the processor to determine a current location of the navigation system, and to instruct the receiver to receive the SMS messages when a vehicle ignition is turned on. At least one of the received SMS messages comprises a received address. The executable code can cause the processor to instruct the display unit to display the travel route and an icon corresponding to the received address. The icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
[0013] In accordance with another aspect of the embodiments described herein, there is provided a vehicle navigation system. The system is comprised of a receiver for receiving an SMS message, a display unit, a processor operatively coupled to the receiver and the display unit, and a memory operatively coupled to the processor. The memory is comprised of executable code for the processor to instruct the receiver to receive the SMS messages when vehicle ignition is turned on. At least one of the received SMS messages comprises a received address. The executable code can cause the processor to access any previously- stored addresses when the vehicle ignition is turned on, with the previously-stored addresses being in an onboard format. The executable code can further cause the processor to convert the received address to the onboard format, and to instruct the display unit to display an icon corresponding to the received address. The icon is displayed in a first visual format when the received address matches one of the previously-stored addresses, and the icon is displayed in a second visual format when the received address is different from the previously-stored addresses.
[0014] A more complete understanding of the system and method for extracting telephone numbers and addresses to a NAVI device will be afforded to those skilled in the art, as well as a realization of additional advantages and objects thereof, by a consideration of the following detailed description of a preferred embodiment. References will be made to the appended sheets of drawings that first will be described briefly.
BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Fig. 1 is a block diagram of a navigation system according to a preferred embodiment of the system and method;
[0016] Fig. 2 is a block diagram of an embodiment of a system for receiving an SMS message on a mobile device and utilizing the received telephone number and address data in a vehicle navigation system for the placement of a call and address routing, respectively;
[0017] Fig. 3A is a block diagram of an embodiment of a system for the generation of an SMS POI request message from a mobile device that utilizes the navigational data in the received SMS message response in a vehicle navigation system;
[0018] Fig. 3B is a block diagram of an exemplary computing device that may be configured to provide a service, such as, for example, a POI service;
[0019] Fig. 4A is a flow diagram of an exemplary method of retrieving and sending SMS messages with a wireless mobile device and a Bluetooth® enabled NAVI according to an embodiment of the system and method; [0020] Fig. 4B is a flow diagram of an exemplary method of receiving and responding to SMS messages by a computing device functioning as a POI service provider;
[0021] Figs. 5A-5E illustrate different aspects of a more detailed flow diagram for the exemplary method of retrieving and sending SMS messages with the wireless mobile device with the Bluetooth® enabled NAVI shown in Fig. 4A;
[0022] Fig. 6 is a diagram illustrating two exemplary data formats for SMS messages received from two SMS message providers in response to a user inquiry according to an embodiment of the system and method;
[0023] Fig. 7 is a flow diagram for a method of associating address information with telephone information contained in an SMS message according to an embodiment of the system and method;
[0024] Figs. 8A-8B are flow diagrams for an exemplary method of displaying different colored location icons on a map to distinguish new and previously received address information extracted from incoming SMS messages according to an embodiment of the system and method;
[0025] Fig. 9 is a flow diagram for an exemplary method of storing address information from retrieved SMS messages while clearing map location icons and NAVI Inbox text messages when the vehicle ignition is turned "OFF" according to an embodiment of the system and method;
[0026] Figs. 10A-10B are examples of the navigational system display showing maps of the current vehicle position with different colored location icons corresponding to addresses in received SMS messages according to an embodiment of the system and method;
[0027] Fig. 11 A is an example of a map of the current vehicle position with enumerated colored location icons corresponding to addresses in received SMS messages displayed in the NAVI Inbox on the NAVI display according to an embodiment of the system and method; [0028] Fig. 11 B is an example of the NAVI inbox that can appear on the NAVI display according to an embodiment of the system and method;
[0029] Fig. 12 is a flow diagram for a method of extracting address and phone number data from an SMS message according to an embodiment of the system and method;
[0030] Fig. 13 is a flow diagram for an exemplary method of extracting phone number data from an SMS message according to an embodiment of the system and method;
[0031] Figs. 14A-14E comprise a flow diagram for an exemplary method of extracting address data from an SMS message according to an embodiment of the system and method;
[0032] Figs. 15A-15B comprise a flow diagram for an exemplary method of routing to a destination contained in an SMS message according to an embodiment of the system and method;
[0033] Figs. 16A-16B comprise a flow diagram for an exemplary method of calling a telephone number contained in an SMS message according to an embodiment of the system and method;
[0034] Figs. 17A-17B are examples of the NAVI display screens that correspond to the flow diagram for extracting address and phone number data from an SMS message according to an embodiment of the system and method;
[0035] Figs. 18A-18B are examples of the NAVI display screens that correspond to the flow diagram when requesting a POI via an SMS message and extracting address and phone number data from the SMS message according to an embodiment of the system and method;
[0036] Figs. 19-24 are examples of NAVI display screens for displaying a received message, selecting a location-related reply message or a preset reply message, and sending the selected reply message; and
[0037] Fig. 25-27 are flowcharts of an exemplary process for preparing and sending either a location-related reply message or a preset reply message. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
[0038] A method and system is provided for receiving navigational data via a wireless messaging service on a navigation system. The term "navigational data" is used to mean any address, telephone number, email address, IP address, longitude and latitude coordinates, or any other navigational identifier yet to become commonplace for use on a navigation system for routing, calling, or the like. By parsing through a received message (e.g., an SMS message) containing navigational data, the data can be captured and stored for use by a navigation device or HFT for routing, the generation of telephone calls, emailing and the like. It should be appreciated that the system and method is not limited to the receipt of SMS messages, but would be equally applicable to the receipt of messages utilizing any wireless messaging technology such as Simple Mail Transfer Protocol ("SMTP") over Transmission Control Protocol and the Internet Protocol ("TCPIIP"), Enhanced Messaging Service
("EMS"), Multimedia Messaging Service ("MMS"), or the like. In the detailed description that follows, like element numerals are used to describe like elements illustrated in one or more of the figures.
[0039] Fig. 1 provides a block diagram of an exemplary system 10 for receiving a message containing navigational data. The system 10 comprises a mobile device or wireless communication device or wireless device 12, a Hands Free Telephone (HFT) 14, a navigation device ("NAVI") 16, an audio module 18, and a NAVI display 20. The mobile device 12 may be a cell phone, PDA, or any mobile device known in the art that can receive messages such as an SMS message. The system 10 is located in a vehicle in a preferred embodiment of the system and method but should not be limited thereby. The mobile device 12
communicates with the HFT 14 such that the connection between the mobile phone and the HFT may be via a serial cable, a Bluetooth® link, an infrared link, or any other type of data communication connection known in the art. In the embodiment shown in Fig. 1 , the mobile device 12 and the HFT 14 are equipped with a Radio Frequency ("RF") transceiver (not shown) that complies with the Bluetooth® wireless data communication standard and protocol established by Bluetooth® SIG, Inc. or the like, to allow communication and transferring of messages between the two devices. In a preferred embodiment, the mobile device 12 and the HFT 14 are also equipped with a Dial-Up Networking (DUN) profile that provides a standard to access the Internet and other dial-up services using a Bluetooth® connection, as well as supporting SMS commands. One of skill in the art will recognize that the mobile device 12 can also establish a wireless Internet connection by other
communication methods such as broadband access over a Code Division Multiple Access ("CDMA") cellular network.
[0040] The HFT 14 is in electrical communication with the NAVI 16, which in turn is in electrical communication with both the audio module 18 and the NAVI display 20. The HFT 14 transfers messages and commands between the mobile device 12 and the NAVI 16. The NAVI 16 acts as the main onboard computer for the navigational system and connects all the components of the system together as well as performs all routing calculations and the generation of telephone calls via the HFT 14. The NAVI 16 comprises a Global Positioning Satellite ("GPS") receiver 2, a position detection unit 4, a processor 6, a memory unit 8, and an intelligent text recognition system software component 9 that distinguishes navigational data such as address and telephone numbers in a message. The GPS receiver 2 receives satellite broadcast signals from three or more GPS satellites orbiting the earth. The position detection unit 4 is operatively coupled to the GPS receiver 2 and can compute the current longitude and latitude coordinates of the vehicle using trilateration, triangulation, or another method. The processor 6 can be operatively coupled to the memory unit 8, the GPS receiver 2, and the NAVI display 20. The memory unit 9 can comprise executable code that allows the processor to perform various functions such as running the intelligent text recognition software or instructing the NAVI display 20 to calculate travel routes and to display particular images (e.g., maps and routing information). The NAVI display 20 acts as a visual interface to the user and can be a touchscreen that allows for both the display of data as well as acting as the user interface for entry of information into the NAVI 16. The NAVI 16 can include an optional text-to-speech {"TTS") engine or software component that interfaces with the audio module 18 to allow messages to be read to the user in an auditory format. The NAVI 16 may additionally include a human machine interface ('ΉΜΓ') for displaying messages and available commands via the NAVI display 20 and receiving entries from the user by incorporating a touchscreen into the NAVI display or by use of buttons, a keypad, a microphone interconnected to a voice recognition ("VR") system, or the like.
[0041] In a preferred embodiment of the system and method, the mobile device 12 is queried every fifteen seconds via the HFT 14 to determine if a new SMS message has been received, but it should be appreciated that other time intervals can be utilized as well. If an SMS message is present, the SMS message is transmitted to the NAVI 16 for storage and can be displayed on the NAVI display 20. It should be appreciated that each component of the system can be integrated together as one hardware system onboard the vehicle or can be utilized as separate components. In another embodiment, the NAVI 16 can be equipped with an RF transceiver (not shown) that complies with the Bluetooth® wireless data
communication standard and protocol, wherein the NAVI 16 can communicate directly with the mobile device 12 to allow communication and transferring of messages between the two devices without the use of the HFT 14.
[0042] The mobile device 12 can act as a Mobile Station ("MS") and may send or receive SMS messages to and from a Mobile Switching Center ("MSC") located in wireless proximity to the mobile device 12. The MS comprises all user equipment and software needed for communication with a wireless telephone network. The MSC acts as a telephone exchange that provides circuit-switched calling, mobility management, and services such as voice, data, fax, as well as SMS to mobile phones roaming within the area that the MSC serves. Additionally, in another embodiment, the mobile device 12 can be replaced with an SMS transceiver (not shown) that is located within the NAVI 16, so that the NAVI 16 can directly receive and send SMS messages.
[0043] Fig. 2 shows an exemplary embodiment of a system for receiving an SMS message 21 on a mobile device 12 and utilizing the telephone number and address data contained in the received SMS message 21 in a vehicle navigation system for the placement of a telephone call and for address routing. In the embodiment, an SMS message 21 may be entered into a device or computer capable of supporting SMS message generation. The SMS message 21 is addressed to the mobile device 12 user and comprises both an address and a telephone number in the text of the message. The SMS message 21 is subsequently transmitted over the wireless network 22 (e.g., a Global System for Mobile Communications ("GSM") network or a CDMA network) and is received at the mobile device 12. The mobile device 12 and the user are both located in the vehicle 30 in accordance with this embodiment. After the SMS message 21 is received, the NAVI display 20 in the vehicle 30 indicates that a new SMS message 21 has arrived. It should be appreciated that the SMS message 21 may be received at any time by the mobile device 12, even when the user is not located in the vehicle. When the user enters the wireless proximity of the vehicle with the mobile device 12, the NAVI 16 may automatically retrieve new SMS messages 21 from the mobile device 12, as well as periodically polling the mobile device 12 for newly received messages. The user can then select the SMS message 21 to be read aloud via the TTS software component .
[0044] The intelligent text recognition system in the NAVI 16 detects addresses and telephone numbers in the SMS message and enables the route and call functions via the HMI accordingly. If no addresses or telephone numbers are detected, the route and call functions are disabled. It should be appreciated that the SMS message 21 may comprise any number of addresses, telephone numbers, email addresses and the like, and each one will be detected by the intelligent text recognition system. In addition to having the SMS message 21 read aloud, the user can request routing to the address contained in the SMS message 21 by selecting a travel route or route function via the HMI. When routing is requested by the user, the NAVI 16 calculates a route based at least in part on the current location of the vehicle, to the address 24 contained in the SMS message 21 and displays a map 25 with the suggested route highlighted (e.g., by the use of arrows and lines of varying density and colors). Additionally, the user may wish to place a telephone call to the phone number contained in the SMS message 21 by selecting a "Call" function via the HMI. A call can be placed via the HFT 14 using the telephone number 28 detected in the SMS message 21.
[0045] Fig. 3A shows an exemplary embodiment of a system for the generation of an SMS POI request message 40 from a mobile device 12 that utilizes the navigational data in the received SMS message response 34 in a vehicle navigation system. In the exemplary embodiment, an SMS request message 40 is sent to an SMS POI service, such as a Common Short Code service that includes multiple SMS service providers like Yahoo! and Google. Information searches can be requested on a particular subject, company, etc. For example, the SMS request message 40 may request all coffee houses in a specific city and state. It should be appreciated that any remote POI messaging service may be used. The SMS request message 40 is entered via an HMI link to the NAVI 16, located in vehicle 30. The user can enter information regarding a desired POI, such as a place name, company name, city, state, longitude, latitude, zip code, or the like. If a specific location is not selected by the user, the SMS request message 40 may be generated using location information retrieved via the GPS receiver 2 (see Fig. 1) connected to the NAVI 16 in the vehicle. For example, in some embodiments the SMS request message 40 may include information regarding a particular location, such as a latitude and a longitude of a current location of vehicle 30, as determined by trilateration, by triangulating Global Positioning System (GPS) satellite signals or via other methods, or may include information regarding a location along a calculated route, such as a latitude and a longitude of the location along the calculated route. The SMS request message 40 is then transmitted via a wireless Bluetooth® connection to the mobile device 12 of the user. The SMS request message 40 is addressed to the POI SMS message service provider 32 and is subsequently transmitted over the wireless network 22 (e.g., a GSM or COMA network). The SMS request message 40 is received at the remote POI SMS message service provider 32 that automatically generates an SMS response message 34 that is transmitted back to the mobile device 12, via the wireless network 22. In response to the request message 40, the text portion of the SMS response message 34 may comprise data regarding at least one POI that satisfies an SMS Request Message, such as, for example, the SMS request message 40, and may include both an address and a telephone number for the requested at least one POI.
[0046] The NAVI display 20 in the vehicle 30 indicates when a new SMS message 36 has arrived. It should be appreciated that the SMS message 36 may be received at any time by the mobile device 12, even when the user is not located in the vehicle. When the user enters the wireless proximity of the vehicle with the mobile device 12, the NAVI 16 may automatically retrieve the new SMS message 36 from the mobile device 12 at that time, as well as periodically polling the mobile device 12 for newly received messages. The user may then select the SMS message 36 to be read aloud via the TTS software component 26. The intelligent text recognition system in the NAVI 16 detects both the address and the telephone number in the SMS message and enables the route and call functions on the HMI. If no address or telephone number are detected, then the route and call functions are disabled. It should be appreciated that the SMS message 36 may comprise any number of addresses, telephone numbers, email addresses and the like and each one will be detected by the intelligent text recognition system. The user may route to the address contained in the SMS message by selecting a route function via an HMI. The NAVI 16 then calculates a route to the address contained in the SMS message 36. Additionally, the user may place a telephone call to the phone number contained in the SMS message 36 by selecting a call function via the HMI. A call is then placed via the HFT 14 using the telephone number detected in the SMS message 36. In an alternate embodiment of the system and method, the NAVI 16 may automatically route to the address located in the received SMS message rather than first requiring selection of the routing function by the user. A POI icon may be used to indicate the location of the extracted address on the routing map displayed. Additionally, the NAVI 16 may automatically store the extracted addresses and/or phone numbers in an Address Book stored on the vehicle. In an embodiment of the system and method, a timer (not shown) may be implemented in the NAVI 16, such that an error message may be displayed if the timer expires and an SMS response message 36 has not yet been received.
[0047] Fig. 3B is an exemplary embodiment of a computing device 31 which may function as a POI service provider 32. In some embodiments, multiple computing devices 31 may be networked together to function as the POI service provider 32. Computing device 31 may include a storage device 33, a processor 35, a memory, which may include a
combination of dynamic memory, such as, for example, random access memory (RAM) 37 and static memory, such as, for example, read-only memory (ROM) 39, and a communication interface 41.
[0048] Processor 35 may include one or more conventional processors that interpret and execute instructions. RAM 37, ROM 39, and/or another type of dynamic or static storage device may store information and instructions for execution by processor 35. RAM 37, or another type of dynamic storage device, may store instructions as well as temporary variables or other intermediate information used during execution of instructions by processor 35. ROM 39, or another type of static storage device, may store static information and instructions for processor 35.
[0049] Storage device 33 may include a magnetic disk, a writable optical disc, a flash RAM device, or other type of storage device for storing data, instructions, or other information. Non-limiting examples of storage device 33 may include Digital Video Disk (DVD), Compact Disk (CD), or other types of storage devices. In some embodiments, storage device 33 may include a database, such as, for example, a POI database.
[0050] Communication interface 41 may include a transceiver for communicating with other devices, over a network, via a wired connection, a wireless connection, or a
combination thereof.
[0051] Fig. 4A is a flow diagram of an exemplary method of retrieving and sending SMS messages with a wireless mobile device and a Bluetooth® enabled NAVI according to an embodiment of the system and method. The communication utilized for receiving and sending SMS messages between the wireless device 12 and the HFT 14 occurs in five modes- namely, Initiate Mode 42, Ready Mode 44, Expectant Mode 48, Reply Mode 56, and Off Mode 64. Fig. 4A is a high-level diagram that shows how the five modes interact with each other. Details of the operation of each mode are illustrated in Figs. 5A-5E and described in detail below.
[0052] In Fig. 4 A, the algorithm begins in the Initiate Mode in step 42. There, all messages residing in the wireless device 12 are retrieved by the HFT 14 just after the vehicle ignition is set to the "ON" or "ACC" (i.e., Accessory) position (the normal mode of operation for the system and method) and a link between the wireless device 12 and the HFT 14 are affirmatively linked with each other via a Bluetooth® connection. One skilled in the art will recognize that in other embodiments other radio standards, communication protocols, and other type of data communication connections known in the art (e.g., an infrared link) can be utilized to establish a two-way communications link between the wireless device 12 and the HFT 14. Once the communication link between these two devices is established, the algorithm proceeds to step 44 where the system enters the Ready Mode.
[0053] In the Ready Mode, the NAVI 16 periodically polls or checks for newly received messages by communicating with the HFT 14, which in turn communicates with the wireless device 12 using the Bluetooth® connection. The system is capable of sending message requests and replies composed in the vehicle using the NAVI Display 20 or other HMI devices (such as a keypad or keyboard or a voice recognition system) to the wireless device 12, using the Bluetooth® connection. If a message request is composed in step 46, then a longitude and a latitude of a particular location may be obtained, the latitude and longitude may be included in the composed message request, and the composed message request may be sent to the wireless device 12, in step 47. In some embodiments, the particular location may be a current location of a vehicle that includes the NAVI, a location along a calculated route, or other type of location. The system may then exit Ready Mode and enter the Expectant Mode in step 48. If the expected message is received within an allotted amount of time in step 50, then the message is sent to the NAVI to process in step 52. If the allotted amount of time expires before the expected message is received, then the NAVI displays an error message (and in another embodiment, audibly notifies the user of the error condition).
[0054] A reply message can be sent to the source of the SMS message if the system received a message in the Initiate or Ready Mode at step 54 and the system determines (from the phone number of the sender of the SMS message), that the message is a personal message (as opposed to a message sent from a CSC service provider). That is, the system checks the sender's phone number to determine if it is a valid phone number from other than a CSC service provider and if so, enables the "Reply" button on the NAVI display 20. The Reply button can also be located on other HMI devices such as a keypad or keyboard in the vehicle. When the Reply button is selected by the user, the system enters the Reply Mode in step 56. The user can choose from a variety of preset reply messages in step 58. The user selects an appropriate reply message and a "Send" button is selected on the NAVI display 20 (or the Send button can be located on a keypad or keyboard in the vehicle). The system then exits the Reply Mode and returns to the Ready Mode after the HFT 14 confirms that the message was successfully sent to the mobile device 12. The NAVI display 20 will show that the message was sent successfully.
[0055] During the Expectant Mode, in step 48, the system is waiting for or expects the receipt of a return message by the wireless device 12 in response to the in- vehicle message request sent in step 46. The system preferably increases the polling rate to the wireless device 12 so that any newly received messages are detected by the system soon after the messages are received by the wireless device 12. In another embodiment, the system, in step 50, examines messages received to determine if they have been sent from the expected same phone number as the message request has been sent to. If so, the system determines the received message to be in response to the message request sent by the user. The message is then sent to the NAVI 16 to process further (e.g., to notify the user and transfer to the NAVI Inbox (see Fig. 1 IB)) in step 52. If the message received is not determined to have been the message request sent previously, the system remains in the Expectant Mode and the algorithm returns to step 48 where the system remains until a timed-out condition occurs, as described with respect to Step 50, above.
[0056] Continuing with the Reply Mode in step 56, the user can select a preset or pre- composed SMS message in reply to a received message. In step 58, the selected reply message is sent by the NAVI 16 to the HFT 14 that in turn communicates the reply message with the wireless device 12. The wireless device 12 ultimately transmits the reply message to a remote location such as a friend's phone. The algorithm then returns to step 44, where the system exits the Reply Mode and again enters the Ready Mode.
[0057] At step 60, the HFT 14 checks if the wireless device 12 is no longer detected. If the wireless device 12 is detected and the power has not been turned off, at step 62 the system remains in the Ready Mode. If the Bluetooth® wireless device 12 is no longer detected at step 60, the system exits the Ready Mode and enters the Off Mode in step 64. In the Off Mode, the system stops polling the wireless device 12 for new messages. If a Bluetooth® phone such as the wireless device 12 or another compatible device is detected in step 66, the algorithm returns to step 42 where the system exits the Off Mode and enters the Initiate Mode. If the vehicle ignition is no longer in the ON position, as determined in step 62, the system enters Off Mode.
[0058] When the ignition is first set to the ON position, the system detects the mobile device 12 and the system starts the Initiate Mode process (e.g., the bonding operation). On the other hand, if the ignition switch is still in the ON position (as determined in step 62), but the system has merely lost communications with a Bluetooth® wireless device, in step 60, the system can immediately proceed with establishing a link with the newly detected wireless device in step 42, starting the Initiate Mode process.
[0059] Fig. 4B is a flow diagram illustrating an exemplary process that may be performed by one or more computing devices 31 functioning as a POI service provider 32. The process may begin with the POI service provider 32 determining whether a request message, such as, for example, a SMS request message, is received in step 49. The request message may include data regarding a desired POI, including, but not limited to a place name, a company name, a city, a state, a latitude and a longitude of a particular location, or other information related to a desired POI. The particular location may be a current location of a vehicle, a location along a calculated route, or another location. [0060] If the request message is received, then, at step 51, the POI service provider 32 may attempt to find a POI that matches the data included in the request message and is within a first predetermined distance of the particular location. The first predetermined distance may be 10 miles or another suitable distance. In some embodiments, the POI service provider may search a database for any matching POls within the first predetermined distance of the particular location. At step 53, the POI service provider 32 may then determine whether one or more POls have been found that match the data in the request message and are located within the first predetermined distance of the particular location. If no matching POI is found within the first predetermined distance, then, at step 59, the POI service provider 32 may attempt to find a POI that matches the data in the request message and is within a second predetermined distance of the particular location. The second predetermined distance may be 20 miles or another suitable distance that is larger than the first
predetermined distance.
[0061] If, in step 53 or step 61, the POI service provider 32 determines that one or more matching POls are found within the first predetermined distance or the second predetermined distance, respectively, then information regarding the one or more POls may be included in a generated response message, at step 55, and, in step 57, the response message may be transmitted to a device that transmitted the received request message. The response message may include information about the one or more POls, such as, for example, one or more addresses and one or more phone numbers.
[0062] If, in step 61, the POI service provider determines that there are no matching POls within the second predetermined distance from the particular location, then, at step 63, the POI service provider may generate a response message indicating that there are no matching POls within the second predetermined distance from the particular location. In step 65, the POI service provider 32 may then transmit the response message to the device that transmitted the received response message.
[0063] In some embodiments, no more than a predefined number of matching POIs within the first predefined distance or the second predefined distance may have
corresponding information composed in a reply message to be sent by the POI service provider. The matching POIs corresponding to the information in the composed reply message may be a same distance from, or closer to, the particular location than other matching POIs not having corresponding information included in the reply message.
[0064] In an alternative embodiment, when no matching POI is found within the first predefined distance and the second predefined distance, then a POI service provider may perform a search for a POI that that nearly satisfies the data in the request message. For example, if the request message is a request for information concerning a particular coffee shop and no matching POI is found within the first and the second predefined distances, then the POI service provider may perform a search for information regarding any coffee shop within the first and the second predefined distances. If any coffee shops are found within the first or the second predefined distances, then information regarding at least some of the found coffee shops may be generated and transmitted in response to the request message.
[0065] Figs. 5 A-5E illustrate different aspects of a more detailed flow diagram for the exemplary method of retrieving and sending SMS messages using the wireless mobile device 12 with the Bluetooth® enabled NAVI 16, as was discussed with respect to Fig. 4A, above. Fig. 5A illustrates the detailed steps of the algorithm for the Initiate Mode. The vehicle ignition switch has been turned on (set to the "ON" or the "ACC" position) in step 68. Entry point A, as shown in block 69, is provided to allow other portions of the algorithm to return to this starting point. The system then establishes a two-way communications link between the wireless device 12 and the HFT 14 in step 70. The HFT 14 sends AT (attention) commands (which are part of the Hayes command set of modem commands) to the wireless device 12 to set the device to the Protocol Data Unit ("PDU") mode.
[0066] If an error message is received by the HFT 14 or the wireless device 12 does not respond within a predetermined time to the AT commands sent in step 74, then the system proceeds to step 76, where the system sends additional AT commands instructing the wireless device 12 to enter the "Text" mode. If the wireless device does successfully enter the PDU mode, the algorithm proceeds to step 78. In either case, whether the wireless device 12 is in the text mode or the PDU mode, the system sends AT commands to the device so the HFT 14 can retrieve the SMS messages currently stored in the wireless device 12 in step 78. The HFT 14 receives the SMS messages in step 80 and preferably revises the message format before the message is communicatively coupled to the NAVI 16. The system next exits the Initiate Mode and enters the Ready Mode in step 82 via entry point B at block 81.
[0067] Fig. 5B illustrates the detailed steps of the algorithm for the Ready Mode. Entry point B, as shown in block 81, is provided to allow other portions of the routine to return to this starting point. In step 82, the HFT 14 periodically sends AT (attention) commands to the wireless device 12 (e.g., once every fifteen seconds) instructing the device to transmit any new SMS messages that have been received over the wireless network (not shown) from a remote location or service provider. In step 84, the algorithm determines if the wireless device 12 has received any new SMS messages (e.g., messages not yet retrieved from the wireless device 12 by the HFT 14). If not, the algorithm returns to step 82 and the system remains in the Ready Mode. If new messages have been received, the messages are retrieved by the HFT 14 via the Bluetooth® connection link to the wireless device 12 in step 86 and are transferred to the NAVI 16. The retrieved SMS messages can be viewed by the user on the NAVI display 20, and any telephone and address information in the retrieved message are extracted by the NAVI 16 for further processing in step 88. The processing can include making additions to the NAVI address book, showing locations as icons on a map, displaying routing information, reading the message via Text to Speech (TTS") and the like.
[0068] Once the wireless device 14 has been bound with the HFT 14, the user can compose an SMS message request (e.g., a request for information from a CSC service provider such as Google or Yahoo!) to be transmitted to a remote location or service provider by the wireless device 12. If the user chooses to send a request message, the system will send the messages to the HFT 14 and to then on to the wireless device 12 in step 90.
Simultaneously, the system will proceed to step 98, while the system exits the Ready Mode and enters the Expectant Mode via entry point C, at block 91. Similarly, the user can choose to reply to a received personal text message from the Ready Mode in step 96. The system exits the Ready Mode and enters the Reply Mode in step 108 via entry point D at block 97.
[0069] The system continuously monitors for the presence of a wireless device at step 92. If the wireless device 12 is no longer detected, the system exits the Ready Mode and enters the Off Mode in step 118 via entry point E at block 93. If the wireless device 12 is still detected, the algorithm proceeds to step 94 and determines if the system has been turned off (e.g., the ignition has been set to the "OFF" position by the user). If so, the system exits the Ready Mode and enters the Off Mode in step 118 via entry point E at block 93. If on the other hand, the system has not been turned off, the system remains in the Ready Mode.
[0070] Fig. 5C illustrates the detailed steps of the algorithm for the Expectant Mode. Entry point C, as shown in block 91, is provided to allow other portions of the routine to return to this starting point. In step 98, the system is waiting for or expects the receipt of a return message by the wireless device 12 in response to the in- vehicle message request sent at or before step 90 (see Fig. 5B). The system increases the polling rate (e.g., the transmission rate of AT commands sent from the HFT 14 is increased to a frequency of less than fifteen seconds) to the wireless device 12 so that any newly received messages are detected by the system soon after the messages are received by the wireless device 12.
[0071] In step 100, the algorithm determines if the system has received a new SMS message. If a new message has not been received, the algorithm returns to step 98 and the system remains in the Expectant Mode for a specified amount of time. If a new message has been received, the algorithm proceeds to step 106, where the system examines any new messages received and extracts the "sent from" information. In another embodiment, the "sent 'from" information is compared to the "sent to" phone number or CDC provider code of the message request previously sent by the user. Using the comparison results, the algorithm determines if the newly received SMS message is the requested message response the system has been expecting in step 104. If so, the system determines the received message to be in response to the message request sent by the user. The message is then sent to the NAVl 16 to process further (e.g., to notify the user and transfer to the NAVl Inbox (see Fig. 11 B)) in step 106. Next, the system exits the Expectant Mode and returns to the Ready Mode in step 82 via entry point B at block 81. If in step 104, the message received is determined not to be a response to the user's message request, then the system remains in the Expectant Mode and the algorithm returns to step 98.
[0072] Fig. 5D illustrates the detailed steps of the algorithm for the Reply Mode. Entry point D, as shown in block 97, is provided to allow other portions of the routine to return to this starting point. In step 108, the "send to" information for the reply message is retrieved from the previously received message so the user will not have to re-enter the information in formulating her reply message. The user selects a desired preset reply message from a list of available responses in step 110. The preset reply message can comprise "I am on my way," "Yes, thanks," "No, thanks," "I'm driving, "I'll talk to you later," and the like. [0073] In one embodiment, the user can select a desired message response by scrolling through various menus on the screen of the NAVI display 20. In other embodiments, the user can select a desired preset reply message from a list that is read aloud via the TTS software component 26 (see Fig. 2). In a variation of this embodiment, the user can speak her choice of available reply messages using voice recognition software that is integrated into the NAVI 16 system. In step 112, the selected reply message is sent by the NAVI 16 to the HFT 14 and the HFT 14 reformats the selected reply message. The HFT 12 then transmits the message to the wireless device 12 via the Bluetooth® communications link. The wireless device 12 in turn transmits the reply message to a remote location or service provider via a wireless network (not shown). Next, the wireless device 12 transmits a message to the HFT 14 confirming that the reply message has been sent over the wireless network in step 114. A "message sent" confirmation screen is then displayed on the NAVI display 20 in step 116. The system then exits the Reply Mode and returns to the Ready Mode in step 82 via entry point B at block 81.
[0074] Fig. 5E illustrates the steps of the algorithm for the Off Mode. Entry point E, as shown in block 93, is provided to allow other portions of the routine to return to this starting point. In step 118, the system stops polling the wireless device 12 for new messages. If the user has turned off her wireless device 12 or the batteries run low, the device may lose the communications link with the HFT 14 in step 92 (see Fig. 5B). However, once a Bluetooth® phone such as the wireless device 12 or another compatible device (e.g., a device with a new Bluetooth® ID) is detected, the algorithm returns to step 70 via entry point A at block 69, while the system exits the Off Mode and enters the Initiate Mode. If the vehicle ignition is no longer in the "ON" Position, as determined by the algorithm in step 94 (see Fig. 5B), the system enters the Off Mode. When the ignition is set to the ON position, the system will enter the Initiate Mode at step 70 via entry point A at block 69. On the other hand, if the ignition system is still in the "ON" position, but the system has merely lost communications with the wireless device 12 in step 92, the system can immediately proceed with establishing a link with the newly detected wireless device in step 70 (see Fig. 5 A). The system simply enters Initiate Mode as if the algorithm was first commenced after the vehicle's ignition was set to the ON position in step 68. The system clears its memory, retrieves all SMS messages from the wireless device 12, and monitor for newly received messages.
[0075] Fig. 6 is a diagram illustrating two exemplary data formats for SMS messages 122 and 124 received from two SMS message providers in response to a user inquiry, according to an embodiment of the system and method. Data format 126 illustrates two possible data formats for the address and phone number information contained in a received SMS message. Format 1 corresponds to the format of the data contained in the SMS messages 122. Format 2 similarly corresponds to the format of the data contained in SMS message 124. In Fig. 6, similar requests for the address and telephone numbers for the nearest locations of a particular business, Eric's Coffee Shop, were requested via two separate SMS messages. The SMS messages sent via the NAVI (not shown) contained the current location of the user and were sent to two different CSC service providers, though other types of service providers, as well as other types of messaging services (e.g., multimedia messaging service), can be utilized with the invention.
[0076] SMS message 122 contains the address and phone number listings for two locations of Eric's Coffee Shop that are located within a predetermined distance or radius from the user's current location. The two listings contain the business name followed by the address (street number, street name, city, state, and zip code) and then the corresponding telephone number for each location in the SMS message. SMS message 124 similarly contains the address and phone number listings for two locations of Eric's Coffee Shop within a predetermined radius of the user's location, but the phone number for each location of Eric's Coffee Shop appears after the business name, before the address information appears. SMS message responses from different CSC providers may return different numbers of business locations within the same predetermined distance from the user's location, depending on the particular algorithms used and data stored in the CSC provider's databases. Format 1 of data format 126 contains text characters followed by a first address, additional text characters followed by a first phone number for the first business location. This format repeats for a second address and a second corresponding phone number for a second business location and subsequently for as many business listings that are in the SMS message 122. Format 2 of data format 126 contains text characters followed by a first phone number, additional text characters followed by a first address for the first business location. This format repeats for a second phone number and a second corresponding address for a second business location and subsequently for as many business listings as there are in the SMS message 122.
[0077] Fig. 7 is a flow diagram for a method of associating address information with telephone information contained in an SMS message according to an embodiment of the system and method. The system can associate the address information with the telephone information for a particular listing contained in the received SMS message, whether the message follows format 1 or format 2 of data format 126 (see Fig. 6). If the data in a particular SMS message does not match format 1 or format 2, then the address and phone numbers contained in the SMS message will be stored separately. One skilled in the art will recognize, however, that the method can be easily modified to recognize additional formats.
[0078] The algorithm or method illustrated in Fig. 7 operates as follows. First, the vehicle ignition is set to the "ON" position in step 128 and the NAVI 16 retrieves an SMS message from a wireless telephone or mobile device 12 in step 130. Polling of the wireless device 12 is periodically carried out by the NAVI 16 to retrieve newly received SMS messages from the wireless device 12 (see Figs. 4 and 5A-5E; see also, related discussion thereto). The intelligent text recognition system determines if the received SMS message contains recognizable phone and address information in step 132 (see Figs. 12 to 14E for details of the method of extracting and recognizing addresses and phone numbers).
[0079] If no address or phone number information is recognized in the received SMS message, the information received in the message is converted to the system's internal data format or onboard format in step 143 and then stored in memory in step 144. If on the other hand, the address and phone number information are recognized, the system determines if the format of the received SMS message matches format 1 of data format 126 in step 134. If there is a match, the system associates the address and the phone number for a particular listing with each other in step 136 and the data is converted to the internal format used by the system in step 143. The converted data is then stored in memory in step 144. If there is no match with format 1, the method proceeds to step 138 and similarly determines if the format of the received SMS message matches format 2 of data format 126. If there is a match, the system associates the address and the phone number for a particular listing with each other in step 140, and the data is converted to the internal format used by the system in step 143. The converted data is then stored in memory in step 144. If there is no match with format 2, the method proceeds to step 142, where the method determines that the address and phone number information contained in the SMS message are to be stored separately in the system memory and proceeds to do so by first converting the data format in step 143. The system then stores the converted data in step 144. If there are additional messages received from the wireless device 12 in step 146, the method returns to step 132 and the system once again extracts and recognizes addresses from the received SMS message; otherwise, the method ends.
[0080] In another embodiment, the system can recognize keywords in the text of the SMS message at step 132, that will identify the service provider and thereby identify the format to be used to help parse the address and phone number information from the SMS message received at step 130. In yet another embodiment, the "sent from" number contained in the SMS message can be recognized at step 132, and then used to identify the service provider; thereby identifying the format to be used to help parse the address and phone number information from the SMS message received at step 130.
[0081] Figs. 8A-B are flow diagrams for an exemplary method of displaying different colored location icons on a map to distinguish newly received address information from previously received address information extracted from incoming SMS messages according to an embodiment of the system and method. In Fig. 8A, the vehicle ignition is set to the "ON" position in step 148 and the NAVI 16 retrieves all SMS messages from the mobile device 12 in step 150. In another embodiment, the NAVI 16 can retrieve all SMS messages from the HFT 14. Polling of the wireless device 12 is carried out by the NAVI 16 to retrieve additional SMS messages that are received by the wireless device 12 (see Figs. 4 and 5A-5E and related discussion thereto). The intelligent text recognition system determines if the received SMS message contains any phone and address information in step 152 (see Figs. 12 to 14E for details of the method of extracting and recognizing addresses and phone numbers) and extracts them. The method proceeds to step 154 where the system determines if a corresponding entry for the extracted address is already stored in the internal file, which comprises a table, an array, a database, or other data structure. If not, the extracted address is determined to be a new address and is added into the internal file in step 158. The method next proceeds to step 160. If the extracted address already exists in the internal file, in step 156, the address is determined not to be new and the system does not add the extracted address to the Address Book, but instead, the algorithm bypasses step 158, and proceeds to step 160. [0082] By determining that the address is new in this way, the address can be highlighted in a "pop up" screen (appearing on the NAVI display 20 or other display screens located in the user's vehicle) or the user can be prompted by TTS to notify her that the NAVI 16 recognized that there is a new address in one or more of the SMS messages received. A new address is likely to be of more interest to the user than a previously viewed address and allowing the user to easily route to the new address or place a phone call to the phone number contained in the relevant SMS message, is believed to be a significant benefit to vehicle users. In another embodiment, the internal file can be an Address Book that is automatically updated with the address it receives via the wireless device.
[0083] In step 160, the extracted address is shown in a first visual format, such as an icon or location icon in a first color or priority color (such as red) on a map that can be displayed on the NAVI display 20 (see Fig. 10A). The location icon comprises a first shape (such as a triangle). In another embodiment, the location icon is shown as a shaded diamond on the embodiment of Fig. 10A, but the actual map image that appears on the NAVI display 20 can comprise any visible color (or shading) and take any shape such as a circle, square or a complex shape such as a building (or even a particular type of building such as a gas station or hotel). In step 162, the text message is added to the NAVI Inbox (see Fig. 11 B). Next, in step 164, the method checks to see if there are additional messages retrieved by the NAVI 16 from the wireless mobile device 12. If so, the method returns to step 150 to retrieve the additional message and again checks if there are addresses to extract from the additional retrieved SMS messages in step 152.
[0084] The algorithm shown in Fig. 8B depicts the case where: 1) the vehicle ignition switch has been ON for a period of time and the NAVI 16 has already received and plotted (as a red location icon) one or more addresses as a result of completing the Initiate Mode, and 2) one or more additional addresses have been received at a later time and there is a need to distinguish the location of the newly received address from the previously received and plotted addresses. The operation of steps 168, 170 and 172 are slightly different from steps 148, 150, and 152 of Fig. 8A.
[0085] In step 168, the vehicle ignition has been in the "ON" position for a sufficient time period that at least one location icon of a first color has been shown to the user on a map on the NAVI display 20, in accordance with the method of Fig. 8 A. The system periodically polls the wireless device 12 over a Bluetooth® connection with the HFT 14 for newly received messages (see Figs. 4 and 5A-5E, and discussion thereto). In step 170, the NAVI 16 receives a new SMS message from a wireless device 12 and the intelligent text recognition system determines if the new SMS message contains any phone and address information in step 172. If not, the method proceeds to step 184; otherwise, the method proceeds to step 174 where any location icons of the first visual format (that are of the priority color since older addresses do not yet exist), generated from one or more of the previously-stored addresses and shown on the map on the NAVI display 20, are changed from the first visual format (the first shape and the first color (priority color (such as red) to a second color or non-priority color (such as grey) and a second shape. Then, the newly received address is plotted on the map in the priority color (e.g., Red). In this way, the most recently received addresses that are different from the previously-stored addresses will always be shown with the priority colored icons and the addresses previously received (older addresses) will be shown as icons of the second color or as non-priority colored icons (e.g., Grey) and the second shape. Next, the method proceeds to step 176 to determine if a corresponding entry for the extracted address is already stored in the internal file that can be loaded into the memory unit 8 (see Fig. 1). If not, the extracted address is added to the internal file in step 180 and the method proceeds to step 182. If the extracted address already exists in the internal file, the system does not add the extracted address to the internal file in step 178. Instead, the method bypasses step 180, and proceeds to step 182. As discussed above, in another embodiment, the internal file can be an Address Book.
[0086] In step 182, the extracted address is shown in the first visual format, such as the icon or location icon in the first color (such as red) on the map and can be displayed on the NAVI display 20 (see Fig. 10A). The location icon comprises the first shape and the first color (such as a red diamond in the embodiment of Fig. 10A), but can comprise any visible color and take any shape such as a circle, square or a complex shape. In step 184, the text message is added to the NAVI Inbox (see Fig. 1 IB). In step 186, the method checks if there are additional messages retrieved by the NAVI 16 from the wireless device 12. If so, the method returns to step 170 to retrieve the additional message and again checks if there are addresses to extract from the additional retrieved SMS messages in step 172.
[0087] In another embodiment, the algorithms depicted in Figs. 8A-B can be modified slightly so that phone number information extracted in step 152 is shown in a first color (such as red) in step 160 on the NAVI display 20. Similarly, when new phone number information extracted in step 172 all previously-stored phone numbers (stored in the internal file and can be loaded into the memory unit 8) initially shown in the first color or priority color (such as red) are changed to a second color or non-priority color (such as grey) in step 174. Next, newly extracted phone numbers that are different from the previously-stored phone numbers, are shown on the NAVI display 20 in the first color (e.g. red) in step 182.
[0088] Fig. 9 is a flow diagram for an exemplary method of storing address information from retrieved SMS messages while clearing map location icons and NAVI Inbox text messages when the vehicle ignition is turned "OFF" according to an embodiment of the system and method. That is, when the user deletes a text message on her cell phone or wireless device 12 (see Figs. 1-3), the corresponding map location icons, and NAVI Inbox message listing (discussed with respect to Figs. 8A and 8B, above) will continue to appear to the user until the vehicle ignition is set to the "OFF" position. At that time, the system will delete the location icons and NAVI Inbox message listings that were deleted from the user's cell. In another embodiment, optional step 191 will be performed after step 190 (described below) to delete the address information, unless the user elects to save it in the NAVI Address Book.
[0089] In step 188, the vehicle ignition switch has been set to the "OFF" position (e.g., the user turned off the engine and removed her key). The algorithm then proceeds to step 190 where internal file entries (not shown) contained in incoming SMS messages are deleted from the wireless device 12 while the vehicle's ignition was in the "ON" position, after the vehicle ignition has been set to the "OFF" position. In step 192, all location icons that correspond to addresses extracted from retrieved SMS messages on the wireless device 12, wherein the original SMS message has been deleted from the wireless device 12, are deleted from the NAVI map on the NAVI display 20 when the vehicle ignition is set to the "OFF" position. The deletion of location icons includes both location icons of the first and second color. In step 194, all messages deleted from the wireless device 12 while the vehicle's ignition was in the "ON" position will in turn be deleted from the NAVI inbox when the vehicle ignition is set to the "OFF" position.
[0090] Figs. 10A-B are examples of the NAVI display 20 showing maps of the current vehicle position with differently shaded location icons corresponding to addresses in received SMS messages according to an embodiment of the system and method. The actual image visible on the NAVI display 20, can however, comprise differently colored location icons as well. In Figs. 10A and 10B, location icons 196, 198, 200, 202, and 204 are visible. These location icons represent particular addresses on a map in relation to the current position of the user's vehicle. Current location icon 196 represents the vehicle's current location and the position of icon 196 on the map will change as the NAVI display screen 20 is refreshed, if the vehicle has since moved. In Fig. 10A, icon 196 is wing-shaped and is encircled to stand out from the other location icons on the map, but can be shaped differently in other embodiments, as well as comprising an icon that is of the same or different color than icons 198-204.
Location icons 198-204 are shown as diamond shaped icons placed on the map in the location that corresponds to the address extracted from SMS messages retrieved from the wireless device and listed in the NAVI inbox (not shown), but other shaped icons can be utilized as well. The use of the location icons as well as how and when they change color have been discussed with respect to the algorithms shown in Figs. 8A and 8B, above.
[0091] Icons 198 and 200 comprise the second visual format that can comprise the second color or non-priority color (e.g., grey) and can comprise the second shape. These icons depict older addresses and represent locations extracted from SMS messages in the NAVI inbox that have been initially retrieved from the wireless device 12. Location icons 202 and 204 also represent locations extracted from SMS messages in the NAVI inbox, but they represent more recently received messages and are thus represented by the priority- colored icons (e.g., red). In Fig. 10B, the map on the NAVI display 20 changes scale to zoom in and show the current location icon 196 in the center of the map and the previously viewed location icons 198 and 200 together with the newly received location icons 202 and 204. In another embodiment, there is time received information (e.g., time stamps) displayed in proximity to the corresponding icons 198-204 on the maps displayed on the NAVI display 20. The time received information can comprise the time of receipt of the SMS message that contains address information that is displayed to the user via the icons 198-204. In another embodiment, the time received information can include the date of receipt as well. In yet another embodiment, these times can be used to limit the number of icons shown on the NAVI display 20, by allowing only addresses that were contained in messages received within the last week to appear on the screen. [0092] Fig. 11 A is an example of a map of the current vehicle position with enumerated colored location icons corresponding to addresses in received SMS messages displayed in the NAVI Inbox on the NAVI display 20 according to an embodiment of the system and method. The map shown in Fig. 1 1A is similar to the map shown in Fig. 10A, with the addition of enumerated location icons in Fig. 11 A. The numbers illustrated are in the center of the diamond shaped location icons 210,212,214, and 216, but can appear in other formats too, such as smaller numerals located at the left or right portion of the location icons. The numerals appearing on the icons correspond to the enumerated SMS messages listed in the NAVI Inbox, as illustrated in Fig. 1 IB. The shape of these location icons can vary as well (e.g., square or circles) or in another embodiment, the icons can comprise a complex shape that correspond to a type of business of the particular extracted address (e.g., a gas pump for a gas station). Icons 210 and 216 represent initially viewed icons and comprise the second color or non-priority color (e.g., grey), while icons 212 and 214 represent newly received icons and comprise the first color or priority color (e.g., red), as discussed with respect to figures 10A and 10B, above.
[0093] Fig. 11 B illustrates the NAVI inbox that can be displayed on the NAVI display screen 20 when SMS messages are retrieved from the wireless device 12 according to an embodiment of the system and method. The message listings are enumerated and are shown in descending order and any newly received, unviewed message is marked as "NEW." As will be discussed in further detail with respect to Fig. 17A-18B, the user can route to a destination address displayed on the map as an icon, shown in the NAVI Address Book, or shown in the NAVI Inbox, as well as place a phone call to the corresponding phone number for any of these displayed items. One skilled in the art will recognize that the messages can be listed in other ways (such as in ascending order) and the unread messages can be demarked by other methods (such as being listed in bold font or listed in a second colored font).
[0094] The intelligent text recognition system mentioned above comprises an algorithm or method used to extract address and phone number data from a message, shown in overview form in the flow diagram of Fig. 12. The navigational data extracted from each message may then be sent to the NAVI 16 for routing or to the HFT 14 for calling. In an embodiment of the system and method, the intelligent text recognition system first receives an SMS message from a wireless telephone or mobile device 12 in step 220, after the vehicle ignition has been set to the "ON" position in step 218. Polling of the wireless device 12 is periodically carried out by the HFT 14 to retrieve newly received SMS messages from the wireless device 12 (see Figs. 4 and 5A-5E; see also, related discussion thereto). The algorithm then proceeds to parse through the message to determine if a telephone number is detected by identifying phone number patterns, as in step 222. If a phone number is detected, a call button on the NAVI display 20 is enabled and the phone number is stored in memory in step 224. The algorithm then proceeds to step 226 to determine if additional phone numbers are present in the SMS message. If so, step 222 is repeated until no additional phone numbers are present in the SMS message and the detected phone number strings are subsequently disregarded in step 228. The SMS message is then parsed through again to determine if an address is detected in step 230. If an address is detected, the route button on the NAVI display 20 is enabled and the address is stored in memory in step 232. The algorithm then proceeds to step 234 to determine if additional addresses are present in the SMS message.
[0095] Fig. 13 is a flow diagram illustrating a more detailed algorithm for an exemplary method of detecting the phone number data in an SMS message. The method corresponds to a more detailed breakdown of the algorithm that may be used in step 222 of Fig. 12. The algorithm starts at block 238. Entry point F, as shown in block 236, is provided to allow other portions of the routine to return to this starting point. In step 238, a parser checks each character string in the SMS message and determines in step 240 if there are additional character strings to analyze. If not, the algorithm ends in step 242. If there are more character strings to analyze, the current string is analyzed to determine if the string is a 7- digit numeric string in step 246. If so, the 7-digit string is saved as a 7-digit phone number in memory in step 248 and the parser moves to the next character string in step 254. The algorithm then returns to step 238 via entry point F, to analyze the next character string. If the string is not a 7-digit numeric string, the string is analyzed to determine if it is a 10-digit string in step 250. If the string is 10 digits long, then the string is stored in memory in step 252, and the parser moves to the next character string step 254. The algorithm then returns to step 238 via entry point F, to analyze the next character string. If the string is not 10 digits long, the string is analyzed in step 260 to determine if it is an 8-character string matching the format of ###*#### (e.g., 555-1212), where "#" represents a number and "*„ represents a
"(", ")", or a space. If the string matches the 8-character format, the 7 numeric digits are extracted and stored in memory in step 262, and the parser moves to the next character string step 274. The algorithm then returns to step 238 via entry point F, to analyze the next character string. If the string does not match the 8-character format, the string is analyzed for the 12-character format of ###*###*#### (e.g., 213-555-1212) in step 264. If the string matches the 12-character format, the 10 numeric digits are extracted from the character string and are stored in memory in step 264, and the parser moves to the next character string step 274. If the string does not match the 12-character format, the string is analyzed for the 13- character format of *###*###*#### (e.g., (213)555-1212) in step 266. If the string matches the 13 -character format, the 10 numeric digits are extracted from the character string and are stored in memory in step 268, and the parser moves to the next character string step 274. If the string does not match the 13 character format, the string is analyzed for the 14-character format of *###**###*#### (e.g., (213) 555-1212) in step 270. If the string matches the 14- characterformat, the 10 numeric digits are extracted from the character string and are stored in memory in step 272, and the parser moves to the next character string step 274. If there is no match, the parser simply moves to the next character string in step 274. The process is repeated for each character string encountered. It should be appreciated that other algorithms may be used for extracting a phone number from a text string and the above described steps may be performed in varying order from that presented in Fig. 13.
[0096] Figs. 14A-14E comprise different portions of a flow diagram illustrating a more detailed algorithm for an exemplary method of detecting the address data in an SMS message and corresponds to a more detailed breakdown of the algorithm that may be used in step 230 of Fig. 12. In an exemplary embodiment of the system and method, the intelligent text recognition system keeps a working copy of the SMS message used during the process of extracting each address. Fig. 14A shows a portion of the exemplary algorithm for extracting a zip code from the SMS message. Once the phone numbers are detected in the SMS message (as shown in the exemplary method described above), the phone number strings and any character strings containing phone numbers are deleted from the working SMS message, in step 276. Thus, the parser does not need to repeat the process for strings already known to be a phone number. Entry point K, as shown in block 292, is provided to allow other portions of the routine to return to this starting point. A parser moves to each character string in step 278, starting from the end of the string working backwards. Next, in step 280, the algorithm determines if there are additional character strings to analyze. If not, the algorithm ends in step 282. It should be appreciated that while the exemplary algorithm shown parses backwards through the SMS message to speed up the process of detecting zip codes that are generally located at the end of an address, the system and method is not limited to parsing backwards. If there are more character strings to analyze, the current string is analyzed to determine if the string is a 5-digit zip code in step 284. If the current string is a zip code, the 5-digit zip code is saved in memory as a backup in step 286. The parser then moves back one character string for analysis in step 288 and the algorithm proceeds to step 294 via entry point G at block 290. If the string is not a zip code, the algorithm proceeds to step 294 via entry point G at block 290, where the character string is analyzed to determine if it is a state.
[0097] Fig. 14B shows a portion of the exemplary algorithm for extracting a state from the SMS message. Entry point G, as shown in block 290, is provided to allow other portions of the routine to return to this starting point. In step 294, the current string is analyzed to determine if it is a state by comparing the character string to a list of states stored in memory to determine if there is a match. If the current string is a state, the state is saved in memory in step 296. A city list is also stored in memory, but is limited to only those cities within the detected state in step 298. The parser moves back one character string for analysis in step 300, and proceeds to step 312 via entry point H at block 310. If the string is not a state, the algorithm determines in step 302 if a zip code was previously stored in the preceding step 286. If a zip code was stored, the state associated with the stored zip code is stored in memory in step 304. The city list is then limited to only those cities within the state correlating with the zip code in step 308 and the algorithm proceeds to step 312 via entry point H at block 310. If a zip code was not in fact previously stored, then in step 306 the city list is limited to only those cities within the state where the vehicle is currently located. The vehicle location is determined via the GPS receiver (not shown) connected to the NAVI 16. The algorithm then proceeds to step 312 to extract a city via entry point H at block 310.
[0098] Fig. 14C shows the portion of the exemplary algorithm for extracting a city from the SMS message. Entry point H, as shown in block 310, is provided to allow other portions of the routine to return to this starting point. In step 312, the current string is analyzed to determine if it is a city by comparing the character string to a limited list of cities stored in memory to determine if there is a match. If the current string is a city in the list, the city is saved in memory in step 314. There is also a street list stored in memory that is limited to only those streets within the detected city in step 316. The parser moves back one character string for analysis in step 318, and the algorithm proceeds to step 330 to extract a street name via entry point I at block 328. If the string is not a city, the algorithm determines in step 320 if a zip code was stored in the preceding steps. If a zip code was stored, the city associated with the stored zip code is stored in memory in step 322. The street list is then limited to only those streets within the city in step 326 and the algorithm proceeds to step 330 in Fig. 14D via entry point I at block 328. If a zip code was not stored, the street list is limited to only those streets within the city where the vehicle is located in step 324. The vehicle location is determined via GPS from the NAVI 16 on the vehicle. The algorithm then proceeds to step 330 to extract a street name via entry point I at block 328.
[0099] Fig. 14D shows the portion of the exemplary algorithm for extracting a street name from the SMS message. Entry point I, shown in block 328, and entry point L, shown in block 332, are provided to allow other portions of the routine to return to step 330 as a starting point. In step 330, an internal counter in memory is incremented in order to keep a count of how many strings have been compared to the limited street list. The process of comparing street names to the limited list is performed four times to properly identify street address information in the exemplary embodiment, as address information may contain an apartment or suite designator, road type, direction, or other information (e.g., 400 South Main Street, Suite 100, Any Town, CA 90001). It should be appreciated that the system and method is not limited to matching street names solely containing four strings, but may cycle through any number of strings to attempt to extract a complete street name. In step 334, the current string is analyzed to determine if it is numeric in nature, such as would be the case if the address string being analyzed contains a suite number. If the string is numeric, the parser is moved back one character string in step 336 and the algorithm continues in step 330. If the string is not numeric, the current string is analyzed in step 338 to determine if it is a street name by comparing the character string to the limited list of streets stored in memory to determine if there is a match. If the current string is a street name in the list, the street name is saved in memory in step 340. A street number list stored in memory is limited to only those street numbers located on the detected street name in step 344. The parser moves back one character string for analysis in step 348 and the algorithm proceeds to step 354 (see Fig. 14E) for extraction of the street number via entry point J at block 352. If the current string does not match a street name stored in the limited street name list, then the parser moves back one-character string in step 342 and the value of the internal counter is checked to determine if four strings have been compared yet in step 346. If the value of the incremental counter is four, then the street name cannot be found in the SMS message in step 350, and the algorithm proceeds back to step 278 (see Fig. 14A) via entry point K at block 292.
[00100] Fig. 14E shows the portion of the exemplary algorithm for extracting a street number from the SMS message. Entry point J, as shown in block 352, is provided to allow other portions of the routine to return to this starting point. In step 354, the current string is analyzed to determine if it is a street direction indicator such as North, South, etc. by matching the string against a direction table stored in memory. If the current string is a direction indicator, the indicator is stored in memory in step 356, the parser moves back one character string in step 358, and the algorithm proceeds to step 360. If a direction indicator is not matched, the current string is analyzed in step 360 to determine if it is a street number by comparing the character string to the limited list of street numbers stored in memory to determine if there is a match. If the current string is a street number in the list, the street number is saved in memory in step 362 and the entire address is sent to the NAVI 16 for possible routing in step 366. The parser moves back one character string for further analysis in step 370, where the process is repeated in step 278 (see Fig. 14A) via entry point K at block 292, to determine if there are additional addresses in the SMS message. If the current string does not match a street number in the limited street number list, then the parser moves back one character string for further analysis in step 364 and the algorithm proceeds to step 368 to determine if the internal variable has reached four strings. If four strings have been compared, the algorithm returns to step 278 (see Fig. 14A) to determine if there are additional addresses for extraction via entry point K at block 292. If four strings have not yet been compared, the algorithm proceeds back to step 330 to compare additional strings via entry point L at block 332. In another embodiment, the order of the above steps in Figs. 14A-14E can be altered so that the system looks for all state and zip code information in the SMS message first. Then the algorithm uses the detected character strings as a basis for looking for address information, thereby reducing the number of iterations the system would otherwise have to perform.
[00101] Figs. 15A-15B illustrate different portions of a flow diagram of an algorithm for an exemplary method of routing to a destination contained in an SMS message. In Fig. 15 A, a received SMS message will be displayed on the NAVI display 20 in step 372. Entry point N, as shown in block 371, is provided to allow other portions of the routine to return to this starting point. Once the intelligent text recognition system detects an address in the received SMS message, a route selection icon or button (see Fig. 12) will be enabled via the HMI (not shown) for selection by the user. If the user makes a selection to route to an address in step 374, the algorithm checks to see if there is one address or multiple addresses to present to the user in step 376. If the user has not made a routing selection in step 376, the system determines if the user has input a selection (via the HMI) for the NAVI to make a call, read a message, or optionally, to delete a message in steps 380, 384, or 387, respectively. The method then returns to step 374 to determine if "Route" has been selected by the user.
[00102] Continuing with step 376, if there is only one address to present to the user, the address extracted from the SMS message is displayed to the user in step 382 and the HMI prompts the user as to whether the user wants to edit (step 386), route (step 384), or cancel (step 390) the requested routing to the displayed address. The method proceeds through a series of steps to determine if the user has selected any of these available commands via the HMI in steps 386 -390. If the user selected "Edit," in step 386, the user edits the address data in step 388 and the method returns to step 382 to display the newly edited address. If "Edit" is not selected in step 386, but instead "Route" is selected in step 384, the NAVI 16 will calculate and display a route to the presented address in step 385. If "Route" has not been selected by the user in step 384 and "Cancel" has been selected in step 390, the algorithm returns to step 372 and the SMS message is once again displayed in the NAVI display 20. In another embodiment, the address displayed on the NAVI display 20 in step 382 will not be editable by the user. Thus, the user can either "Route" to the address or "Cancel" the requested routing, thereby simplifying the algorithm by the elimination of steps 386 and 388.
[00103] If in step 376 there are multiple addresses to present to the user, the algorithm proceeds to step 392 (see Fig. 15B) via entry point M at block 378. The method prompts the user via the HMI as to whether she wants to view the next extracted address (step 394), edit the current address (step 398), route to the current address (step 402), or cancel (step 406) the routing to the displayed address. The method determines if the user has selected any of these options via the HMI in steps 394, 398, 402, and 406. If the user selects "Next" in step 394, the HMI displays the next address extracted from the SMS message in step 396 and returns to step 392. If the user selects "Edit" in step 398, the HMI allows for editing of the address data in step 400 and returns to step 392 to display the newly edited address in the NAVI display 20. If "Edit" is not selected in step 398, but instead "Route" is selected in step 402, the NAVI 16 will calculate and display a route to the presented address in step 404. If "Route" is not selected in step 402 and "Cancel" is selected in step 406, the algorithm returns to step 373 via entry point N at block 372, and the SMS message is once again displayed on the NAVI display 20. In another embodiment, all of the addresses displayed on the NAVI display 20 in step 392 will be shown in a list, thereby allowing the user to directly choose the address of interest. Again, the address displayed on the NAVI display 20 will not be editable by the user and so the user can either "Route" to the address or "Cancel" the requested routing, thereby simplifying the algorithm by the elimination of steps 398 and 400.
[00104] Figs. 16A-16B comprise different portions of a flow diagram illustrating an algorithm for an exemplary method of calling a telephone number contained in an SMS message. In Fig. 16A, a received SMS message is displayed on the NAVI display 20 in step 408. Entry point P, as shown in block 410, is provided to allow other portions of the routine to return to this starting point. Once the intelligent text recognition system detects a telephone number in the received SMS message (see step 222 in Fig. 12), a call selection icon or button will be enabled via the HMI for selection by the user in step 224 (see Fig. 12). Returning now to the flow diagram in Fig. 16A, if the user selects the "Call" command in step 412, the method then checks if there is one phone number or multiple phone numbers to present to the user in step 414. If the user has not selected the "Call" command in step 412, then the method proceeds through a series of steps to determine if she has selected to route to an address (step 418), read a message (step 422), or optionally, to delete a message (step 428) prior to the method returning to step 412, to determine if "Call" has been selected via the HMI. Continuing with step 414, if there is only one phone number to present to the user, the phone number extracted from the SMS message is displayed in step 420 and the HMI prompts the user to determine if she wants to edit (step 424), call (step 430), or cancel (step 434) the telephone call to the displayed phone number. Next, the method determines if the user has selected any of these options via the HMI in steps 424, 430, and 434. If the user selects "Edit" in step 424, the method allows the phone number to be edited in step 426 and returns to step 420 to display the newly edited phone number on the NAVI display 20. If "Edit" is not selected in step 424, but instead "Call" is selected in step 430, a call will be placed to the presented phone number via the HFT 14 in step 432 and the method returns to step 408 to display the SMS message. If "Call" is not selected in step 430 and "Cancel" is selected in step 434, the method returns to step 408 and the SMS message is once again displayed on the NAVI display 20. In another embodiment, the phone number shown on the NAVI display 20 at step 420 will not be editable by the user. Thus, the user can either "Call" the phone number shown on the NAVI display 20 or "Cancel" the requested phone call, thereby simplifying the algorithm by the elimination of steps 424 and 426.
[00105] If in step 414, there are multiple phone numbers to present to the user, the algorithm proceeds to step 436 (see Fig. 16B) via entry point O at block 416. In Fig. 16B, the method prompts the user via the HMI, to determine if she wants to view the next phone number in the SMS message (step 438), edit the current phone number (step 442), call the current phone number (step 446), or cancel the call (step 450) request to the displayed phone number. The method determines if the user has selected any of these options via the HMI in steps 438, 442, 446, and 450. If the user selects "Next" in step 438, the HMI displays the next phone number extracted from the SMS message in step 440 and then returns to step 436. If the user selects "Edit" in step 442, the method allows the phone number to be edited in step 444 and returns to step 436 to display the newly edited phone number. If "Edit" is not selected, but instead "Call" is selected, a call will be placed to the presented phone number via the HFT 14 in step 448, and the algorithm returns to step 408 to display the SMS message on the NAVI display 20. If "Call" is not selected in step 446 and "Cancel" is selected in step 450, the algorithm returns to step 408 via entry point P at block 410, and the SMS message is once again displayed on the NAVI display 20.
[00106] Figs. 17A-17B show exemplary NAVI display screen images for a navigational system according to an embodiment of the system and method. In Fig. 17 A, a screen 452 shows the screen image on the NAVI display 20 when an SMS message is received. The screen 452 shows a map with the user's current location encircled. The received message is indicated by the envelope icon in the upper right of the screen 452. The user may choose to get more information via the HMI, that displays screen 456 with a menu of available user prompts on the NAVI display 20. The user may then select "Messages" by touching the appropriate portion of the screen 456 to view a list of received messages that are next displayed in screen 454. The user then selects the SMS message to view by selecting the message number. Screen 460 is then displayed listing the text of the SMS message in the top half of the screen image and a menu in the bottom half of the screen. Entry point R, as shown in block 458, is provided to allow other portions of the routine to return to screen 460. The menu in screen 460 allows the user the option to read the message aloud via the TTS software component, reply to the SMS message, route to an address extracted from the SMS message, or call a telephone number extracted from the SMS message. If the user selects "Route" or "Call," the screen transitions to either screen 464 or screen 466, respectively, via entry point Q at block 462. If the "Reply" function is selected by the user the system shows preset messages from which the user can select from to reply to the sender of the SMS text message.
[00107] In another embodiment, the arrangement of the text message and menu options can vary, such as the menu occupying the top portion of the screen and the text portion of the SMS message occupying the bottom portion of the screen image. The SMS message may be displayed in full or may be truncated depending on available space on the screen. If truncated, the HMI may allow for scrolling of the SMS message to allow non-visible portions to be viewed on the NAVI display 20. In yet another embodiment, the "Route" and "Call" selections will only be enabled when an address and phone number, respectively, are extracted from the SMS message.
[00108] Turning now to Fig. 17B, entry point Q, as shown in block 462, is provided to allow other screens to change to screens 464 and 466. If the user selects "Route," the HMI displays screen 464 to confirm the correct address that the user wishes to route to. Once confirmed, a route is calculated and screen 468 will be displayed. As discussed in reference to Fig. 15B, if multiple addresses are extracted from the SMS message, the "Next" selection will be enabled so that the user can view and select another address that was extracted from the received SMS message. If the user once again selects "Route," a route is calculated from the current location of the vehicle to the address that was extracted and selected by the user, as shown in screen 468. A progress bar informs the user how much longer it will be for the system to calculate the route requested. On completion, screen 470 shows the calculated route on the NAVI display 20, as the NAVI 16 directs the user to the desired destination address.
[00109] If instead of selecting "Route" the user selects "Call" at screen 460, the HMI displays screen 466 to confirm the correct phone number the user wishes to call. After the user confirms she wants to place a call to the displayed phone number, the system makes the call. The display 20 then transitions back to displaying the screen 460 (see Fig. 17 A) via entry point R, at block 458. The screen shows the text of the received SMS message on the top portion of the screen and the menu on the bottom half of the screen. As discussed in reference to Fig. 16B, if multiple phone numbers are extracted from the SMS message, the "Next" selection will be enabled in step 466. If the user once again selects "Call," the phone number to be called is sent to the HFT 14 and a call is generated to the selected phone number that was extracted from the incoming SMS message. The screen then transitions back to viewing the SMS message as shown in screen 460.
[00110] Figs. 18A-18B show exemplary NAVI display screen images for a navigational system according to another embodiment of the system and method. In Fig. 18A, a screen 472 shows the screen image on the NAVI display 20, when an SMS message is received. The screen 472 shows a map with the user's current location encircled. The received message is indicated by the envelope icon in the upper right of the screen 472. The user may choose to get more information via the HMI, which displays screen 476 with a menu of available user prompts on the NAVI display 20. If the user wishes to obtain POI information for routing purposes, the user may then select "Point of Interest" by touching the appropriate portion of the screen 476. The NAVI display 20 then transitions to screen 474 where the user enters the place name for which she wishes to get navigation data, via the HMI. The user may enter information such as company name, city, state, longitude, latitude, zip code, or the like using the alphabet wheel and "Delete/Space" button that appear on the screen 474. In other embodiments, information may be entered into the HMI via other methods such as an alphanumeric keypad or via the user speaking aloud the characters into a microphone in the vehicle (wherein a VR software component is utilized). If a specific location is not selected by the user, the SMS request message 40 (see Fig. 3) may be generated using location information retrieved via the GPS receiver (not shown) connected to the NAVI 16. It should be appreciated that a subject, such as restaurants, or other POI indicators may alternately be entered to retrieve POI navigational data on the NAVI 16. Once the entry is entered by the user, an SMS message addressed to a POI SMS message service provider will be generated and transmitted via a wireless Bluetooth® connection to the mobile device 12 (see Figs. 2 and 3). [00111] The NAVI display 20 transitions to screen 478 and shows the user the message transmission progress as the SMS message is transmitted over the wireless network 22 (e.g., a GSM or CDMA network). When an SMS message response is received from the POI SMS message service provider (such as a CSC service provider like Google), the screen transitions to screen 482 (see Fig. 18B) via entry point T at block 480. The screen 482 lists the text of the SMS message and allows the user the option of having the system read aloud the received message via the TTS software component (not shown), or optionally, to delete the SMS message (not shown), route to an address extracted from the SMS message, or call a telephone number extracted from the SMS message. The SMS message may be displayed in full or may be truncated depending on available space. If truncated, the HMI may allow for scrolling of the SMS message to view the non-visible portions of the message. When the SMS message is sent from a CSC service provider (e.g., in response to a Point of Interest request as illustrated in Figure 18 A), the "Reply" option is disabled (or grayed out) as in screen 482. This is in contrast to the personal SMS message received from a person such as a friend or associate (as was illustrated in Figure 17 A), where the user may wish to reply to the sender of the SMS message by selecting the "Reply" feature shown in screen 460, which allows the user to select a preset message. The system enables or disables the "Reply" function by determining if the sender's phone number in the SMS message is from a CSC provider or an individual.
[00112] In another embodiment, the "Route" and "Call" selections are only enabled when an address and phone number, respectively, are extracted from the SMS message. If the user selects "Route," the NAVI display 20 shows the screen 486 for the user to confirm the correct address to be routed. As discussed in reference to Fig. 15B, if multiple addresses are extracted from the SMS message, the "Next" selection icon or button will be enabled on the HMI. Returning now to Fig. 18B, if the user once again selects "Route," a route is calculated from the current location of the vehicle to the extracted and selected POI address. A progress bar informs the user how much longer it will be for the system to calculate the route requested as shown on screen 484. On completion, screen 488 shows the calculated route to the desired POI on the NAVI display 20, as the NAVI 16 directs the user to the desired destination address. In an alternate embodiment, the NAVI 16 may automatically route to the address located in the received SMS message rather than requiring selection by the user. A POI icon may be used to indicate the location of the extracted address on the routing map displayed. Additionally, the NAVI 16 may automatically store the extracted addresses and/or phone numbers in an address book stored on the vehicle. In a variation of this embodiment, a timer may be implemented in the NAVI 16 such that an error message can be displayed if the allotted time expires and an SMS response message has not yet been received from the SMS message service provider. In another embodiment, the user may request information other than address and phone number information from the service provider by the use of additional available selections in screen 476. Both the wireless carrier and the service providers will then return other requested information such as "Weather", "Business News", "Movie Show Times," etc., by the system sending a correctly coded text message. In this way, the user will be able to view "Headline News" as an SMS text message in her vehicle in a similar fashion as with personal text messages received from a friend.
[00113] Figs. 19-24 illustrate exemplary display screens on the NAVI display 20 in one embodiment in which a user may select one of a number of preset text reply messages in order to respond to a received text message. Fig. 19 illustrates an exemplary display screen showing a list of received text messages after a user has indicated a desire to view the list of received text message. The user may indicate the desire to view the list of received text messages by touching an appropriate portion of a display screen, as previously discussed with respect to display screen 456. In this example, Fig. 19 shows only one message. However, the display screen of Fig. 19 may be capable of displaying numerous messages.
[00114] Fig. 20 illustrates an exemplary display screen which may be displayed in response to the user selecting message 1 from the display screen of Fig. 19. The displayed message of Fig. 20 may include a text portion 490, an originator's address/phone number 496 and a sent time 494. The user may have an option of selecting read 498 or reply 500. In other embodiments, fewer, more, or different options may be provided to the user.
[00115] Fig. 21 illustrates an exemplary display screen which may be displayed in response to the user selecting reply 500 from the display screen of Fig. 20. The exemplary display screen of Fig. 21 may list a number of preset text reply messages which the user may select as a reply to a received displayed text message. As shown in Fig. 21, messages 1 and 2 may be location-related text reply messages. For example, in response to the user selecting message 1 from the display screen of Fig. 21, a navigation system or device may determine a current location of a vehicle, may prepare a reply including information, such as, for example, a heading or driving direction, a street on which the vehicle is currently located, and a cross street within a predetermined distance ahead of the vehicle. In response to the user selecting message 2 from the display screen of Fig. 21, the navigation system or device may determine an amount of time to reach a set destination and a distance to reach the set destination. The navigation system or device may then prepare a preset a reply message including information, such as, for example, an amount of time and a distance to reach the set destination from the current location of the vehicle. In response to the user selecting any one of messages 3-6 of the display screen of Fig. 21, the navigation system or device may prepare a preset reply message including text from the selected one of the messages 3-6.
[00116] The exemplary display of Fig. 21 shows six reply messages from which the user may select one. In other embodiments a number of reply messages from which the user may select may be less than six or greater than six. In addition, a number of location-related reply messages may be fewer than two or greater than two and may contain additional or different location-related information than the location-related reply messages shown in Fig. 21.
[00117] Fig. 22 illustrates an exemplary display screen which may be displayed after the user selects reply message 1 from the display screen of Fig. 21. The display screen of Fig. 22 may show a prepared text reply message 502 and a recipient's address/phone number 504. The navigation system or device may prepare the text reply message 502, corresponding to the selected reply message, by inserting a heading, or direction of travel, and a name of a street on which the vehicle is currently located into the prepared text reply message 502. The navigation system or device may also include the recipient's address/phone number, with respect to the prepared text reply message 502. The user may have an option of selecting one of send 506, call sender 507, cancel 508 or call 510.
[00118] If the user selects cancel 508, the display screen of Fig. 21 may again be presented to the user. If the user selects send 506, the prepared text reply message 502 may be sent to an originator of the received text message. If the user selects call sender 507, a phone call may be made to a number in the received message. Call 510 may be masked if a phone number is not found in the text message.
[00119] Fig. 23 illustrates an exemplary display which may be presented to the user after selecting send 506 from the display screen of Fig. 22. The display screen of Fig. 23 may include a sending indicator 512, to indicate that the text reply message is currently being sent, and a time or progress indicator 514 to indicate an amount of progress made toward sending the text reply message. While the text reply message is being sent, the user may select cancel 515, which may result in the display screen of Fig. 22 being redisplayed. In other
embodiments, cancel 515 may not appear in the display screen of Fig. 23. [00120] Fig. 24 illustrates an exemplary display screen which may be displayed if an error occurs while attempting to send the text reply message. The exemplary display screen of Fig. 24 may include an error message 516 to inform the user of the error. In this embodiment, the user may cause the display screen of Fig. 22 to be redisplayed by selecting cancel 518 from the display screen of Fig. 24.
[00121] Figs. 25-27 are flowcharts illustrating an exemplary process that may be performed by a navigation system or device in various embodiments. The process may begin with a navigation device receiving a selection from a user of one of a number of reply text messages with respect to a received text message (act 600). The navigation device may determine an originator's address/phone number with respect to the received text message (act 602). The navigation device may then determine whether a first location-related reply text message (reply 1; see Fig. 21) is selected (act 604).
[00122] If, during act 604, the navigation device determines that the first location-related reply text message was selected, then the navigation device may determine a current location of a vehicle (act 606). In some embodiments, a result of determining the current location of the vehicle may include a latitude and a longitude with respect to the current location of the vehicle, which may be used to determine a corresponding city (act 608). In some
embodiments, the navigation device may refer to one or more databases to determine the city. Next, the navigation device may attempt to determine a street on which the vehicle is located ("on" street) based on the latitude and longitude (act 610). The navigation device may determine the street by referring to the one or more databases.
[00123] The navigation device may then determine whether the "on" street has a valid street name (act 612). In some embodiments, a valid street name is a street name, from the one or more databases, which is associated with a street or road that has been verified. In at least some of the embodiments, a non-street, such as, for example, a parking lot, an open field, or other non-street may not have a valid street name.
[00124] If, during act 612, the "on" street is determined to not have the valid street name, then the navigation device may prepare a reply text message with a name of the determined city (act 637). For example, the navigation device may prepare a location-related reply text message including "I'm driving in Torrance, CA". Of course, the navigation device may prepare a location-related reply text message including a name of a different city or town based on a current location of the vehicle. The navigation device may then send the prepared reply text message to the originator of the received text message (act 626; Fig. 26). In some embodiments, the navigation device may obtain the originator's address/phone number from the received text message.
[00125] If, during act 612, the "on" street is determined to have the valid street name, then the navigation device may determine a current compass heading of a direction of travel of the vehicle by tracking a movement of the vehicle (act 614). Next, the navigation device may determine a cross street within a predefined distance in front of, or ahead of, the vehicle (act 616; Fig. 26). In some of the embodiments, the cross street may be a highest class of street within the predefined distance ahead of the vehicle. A street may have a class, such as, for example, in descending class order: a freeway, a 4-lane road, a 2-lane road, and a side street. If cross street candidates include, for example, a 4-lane road and a side street, then the navigation device may determine the 4-lane road as the cross street. Of course, in other embodiments, street may have additional or different classes.
[00126] Next, the navigation device may determine whether the "on" street is a freeway (i.e. has a class of freeway) (act 618). If the "on" street is a freeway, then the navigation device may determine whether the cross street is a ramp (act 620). If the cross street is determined not to be a ramp or the "on" street is not a freeway, then the navigation device may determine whether the cross street has a valid street name (act 622). If the navigation device determines that the cross street has the valid street name, then the navigation device may prepare a reply text message which includes a name of the determined city, a name of the on street, a name of the cross street and the heading (act 624). One example of such a prepared reply text message may be "I'm heading South on Hawthorne Blvd near 190th St. in Torrance, CA". Of course, the prepared reply text message may vary in other embodiments. Next, the navigation device may send the prepared reply text message to the originator of the received text message (act 626). The process may then be completed.
[00127] If, during act 622, the navigation device determines that the name of the cross street is not the valid name, then the navigation device may prepare a reply text message which includes the name of the determined city, the name of the "on" street, and the heading (act 630). One example of such a prepared reply text message may be "I'm heading South on Hawthorne Blvd in Torrance, CA. The navigation device may then send the prepared reply text message to the originator of the received text message (act 626). The process may then be completed.
[00128] If, during act 620, the navigation device determines that the cross street is a ramp (the "on" street having previously been determined to be a freeway during act 618), then the navigation device may set the name of the cross street to be a name associated with the ramp (act 628). The navigation device may then perform acts 624 and 626 as described previously.
[00129] In some embodiments, a second location-related reply text message (i.e. a time/distance to destination message) may include a distance to a set destination, and an amount of time to arrive at the set destination based on the current location of the vehicle (see Fig. 21). In various embodiments, the second location-related reply text message may only be selected if the navigation device has a set destination and has planned a route to the set destination. In some embodiments, if the navigation device does not have a set destination, then reply 2 (see Fig. 21) may not appear as a choice on the display screen or may be grayed- out.
[00130] If, during act 607, the navigation device determines that the second location- related reply text message (reply 2; see Fig. 21) was not selected, then the navigation device may send the selected preset reply text message to the originator of the received text message (act 632; Fig. 25). Thus, if a non-location-related reply text message, such as, for example, "I'm on my way now" is selected, then the navigation device may send the reply text message, "I'm on my way now" to the originator of the received text message. The process may then be completed.
[00131] If, during act 607, the navigation device determines that the selected reply text message is the second location-related reply text message, then the navigation device may determine a current location of the vehicle (act 634). In some embodiments the determined current location of the vehicle may include a latitude and longitude corresponding to the current location of the vehicle. Next, the navigation device may determine a distance to the set destination (act 636). In some embodiments, the distance may be determined in miles. In other embodiments, the distance may be determined in kilometers. In some other embodiments, the distance may be determined in another suitable unit of measure.
[00132] Next, the navigation device may determine an amount of time to reach the set destination (act 638; Fig. 27). The amount of time may be determined in minutes, hours and minutes, or in another suitable time unit or combination of time units. The navigation device may then determine whether the set destination has a name (act 640). For example, in some embodiments, the set destination may have a name, which may be set by the user. One example of a destination name is "UCLA Marina Center".
[00133] If, during act 640, the navigation device determines that the set destination has a name, then the navigation device may determine whether the set destination has a corresponding address (act 642). In some embodiments, the navigation device may refer to one or more databases to determine whether the set destination has a corresponding address. If the navigation device determines that the set destination has the corresponding address, then the navigation device may prepare a reply text message which includes a number of miles (or other unit for measuring distance) to the set destination, the time to reach the set destination, the destination name and the destination address (act 644). One example of such a prepared reply text message may be "I'm 31 miles and 42 minutes from UCLA Marina Aquatic Center at 14001 Fiji Way, Marina Del Rey, CA." The navigation device may then send the prepared reply text message to the originator of the received message (act 626; see Fig. 26). The process may then be completed.
[00134] If, during act 642, the navigation device determines that the set destination does not have an address, then the navigation device may prepare a reply text message which includes the number of miles (or other unit for measuring distance) to the set destination, the time to reach the set destination and the destination name (act 646). One example of such a prepared reply text message may be "I'm 31 miles and 42 minutes from UCLA Marina Aquatic Center." The process may then be completed.
[00135] If, during act 640, the navigation device determines that the set destination does not have a name, then the navigation device may prepare a reply text message which includes the number of miles (or other unit for measuring distance) to the set destination, the time to reach the set destination, and the destination address (act 648). One example of such a prepared reply text message may be "I'm 31 miles and 42 minutes from 14001 Fiji Way, Marina Del Rey, CA." The navigation device may then send the prepared reply text message to the originator of the received message (act 626; see Fig. 26). The process may then be completed. [00136] Although the examples and processes discussed with respect to Figs. 19-27 refer to text messages, the examples and processes may apply to other types of messages including, but not limited, to e-mail messages and SMS messages.
[00137] Having thus described a preferred embodiment of a method and system for utilizing a wireless messaging service to obtain data for navigational routing, placing telephone calls and sending email messages from an in-vehicle navigation system, it should be apparent to those skilled in the art that certain advantages of the described method and system have been achieved. It should also be appreciated that various modifications, adaptations, and alternative embodiments thereof may be made within the scope and spirit of the present system and method. For example, reception of navigational data via an SMS message has been illustrated, but it should be apparent that the inventive concepts described above would be equally applicable to other messaging services such as Simple Mail Transfer Protocol over Transmission Control Protocol and the Internet Protocol, Enhanced Messaging Service, Multimedia Messaging Service, or the like. Additionally, it should be apparent that the inventive concepts described above would be equally applicable to extracting
navigational data from messages outgoing from the vehicle as well as incoming to the vehicle. Further, it should be apparent that the system could comprise both a TTS engine and a VR software component so the extracted navigational data or messages could be read aloud to the user, while user input and message composition could be provided by the user speaking aloud her choices.

Claims

CLAIMS I claim as my invention:
1. A method comprising:
providing, by a navigation device, a facility for permitting a user to select one of a plurality of preset reply text messages to send in response to receiving a text message, at least some of the plurality of preset reply text messages including information related to a current location of a vehicle;
preparing a location-related text message when the user selects one of the at least some of the plurality of preset reply messages including the information related to the current location of the vehicle; and
transmitting, by the navigation device to an originator of the received text message, the prepared location-related text message.
2. The method of claim 1, further comprising:
determining, by the navigation device, a name of a street on which the vehicle is currently located and a current heading; and
including, by the navigation device, the name of the street and the current heading in the prepared location-related text message.
3. The method of claim 2, further comprising:
determining, by the navigation device, a name of a cross street within a predefined distance of the vehicle; and
including, by the navigation device, the name of the cross street in the prepared location-related text message.
4. The method of claim 2, wherein:
the determining a name of a street on which the vehicle is currently located and the current heading is based on a current latitude of the vehicle, a current longitude of the vehicle and a current compass heading of a direction of travel of the vehicle.
5. The method of claim 2, wherein the determining a name of a street on which the vehicle is currently located and a current heading further comprises:
determining, by the navigation device, a name of a city in which the vehicle is currently located.
6. The method of claim 2, further comprising:
determining, by the navigation device, whether the determined name of the street is a valid street name; and
including, by the navigation device, the name of the street in the prepared location- related text message only when the name of the street is determined to be the valid street name.
7. The method of claim 2, wherein the determining a name of a street on which the vehicle is currently located and a current heading further comprises:
determining, by the navigation device, whether the street on which the vehicle is currently located is a freeway;
determining, by the navigation device, whether a cross street within the predefined distance ahead of the vehicle is a ramp when the street on which the vehicle is currently located is determined to be the freeway; determining, by the navigation device, that that the name of the cross street is a street name linked to the ramp when the cross street within the predefined distance ahead of the vehicle is determined to be the ramp; and
including, by the navigation device, the name of the cross street in the prepared location-related text message.
8. The method of claim 3, further comprising:
determining, by the navigation device, whether the determined name of the cross street is a valid street name; and
including, by the navigation device, the name of the cross street in the prepared location-related text message only when the name of the cross street is determined to be the valid street name.
9. An apparatus for use in a vehicle, the apparatus comprising:
a transceiver;
a display unit coupled to the transceiver;
a processor operatively coupled to the transceiver and the display unit; and a memory operatively coupled to the processor, the memory comprising executable code for the processor to perform a method comprising:
receiving a selection of a location-related reply text message from a plurality of reply text messages in response to presenting a received text message to a user; determining a current location of the vehicle;
preparing the location-related reply text message based on the determined current location of the vehicle; and transmitting the prepared location-related text message to an originator of the received text message.
10. The apparatus of claim 9, wherein:
the determining a current location of the vehicle determines a current latitude and a current longitude with respect to the current location of the vehicle, and
the preparing the location-related reply text message is based on the determined current latitude and the determined current longitude.
11. The apparatus of claim 9, wherein the preparing the location-related reply text message further comprises:
determining a heading of the vehicle based on tracking a movement of the vehicle; and
including the determined heading in the location-related reply text message.
12. The apparatus of claim 9, wherein the method further comprises:
receiving a selection of a non-location-related reply text message from a plurality of reply text messages in response to presenting a received text message to a user; and
transmitting the selected non-location-related text message to an originator of the received text message.
13. The apparatus of claim 9, wherein the preparing the location-related reply text message further comprises:
determining a name of a city in which the vehicle is located based on the determined current location; determining a name of a street on which the vehicle is located based on the determined current location;
determining whether the name of the street is a valid street name;
including the name of the street and the name of the city in the location-related reply text message when the name of the street is determined to be the valid street name; and
including the name of the city in the location-related reply text message and excluding the name of the street from the location-related reply text message when the name of the street is determined not to be a valid street name.
14. The apparatus of claim 13, wherein when a street is located at the determined current location and the street is determined to have a name in a database then the street has the valid street name.
15. The apparatus of claim 13, wherein the preparing the location-related reply text message further comprises:
determining a name of a cross street within a predetermined distance ahead of the vehicle; and
including the name of the cross street in the location-related reply text message.
16. The apparatus of claim 15, wherein the preparing the location-related reply text message further comprises:
determining whether the street on which the vehicle is located is a freeway;
determining whether the cross street is a ramp; and determining that the name of the cross street is a name associated with the ramp only when the street on which the vehicle is located is determined to be the freeway and the cross street is determined to be the ramp.
17. The apparatus of claim 15, wherein the preparing the location-related reply text message further comprises:
determining whether the cross street has the valid street name; and
including the name of the cross street in the location-related reply text message only when the cross street is determined to have the valid street name.
18. The apparatus of claim 15, wherein the determining a name of a cross street within a predetermined distance ahead of the vehicle further comprises:
determining a highest class of road, within the predetermined distance ahead of the vehicle, which crosses the street on which the vehicle is located.
19. The apparatus of claim 9, wherein:
the method further comprises:
determining whether a route to a destination is set, and
determining a time and a distance to the destination based on the determined current location of the vehicle when the route to the destination is set; and the preparing the location-related reply text message further comprises
including the determined time and the determined distance in the location- related reply text message when the route to the destination is set.
20. The apparatus of claim 9, wherein the method further comprises:
determining whether the selected location-related reply text message is a
time/distance to destination type message;
performing, when the selected location-related reply message is the time/distance to destination type message:
determining a time and a distance to a set destination based on the determined current location of the vehicle; and
including the determined time and the determined distance to the set destination in the location-related reply text message.
PCT/US2011/029174 2010-03-29 2011-03-21 Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system WO2011123273A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP11710653A EP2553397A1 (en) 2010-03-29 2011-03-21 Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system
CN2011800266298A CN102918362A (en) 2010-03-29 2011-03-21 Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system
JP2013502632A JP5705303B2 (en) 2010-03-29 2011-03-21 Method and system for transmitting and receiving navigation data by wireless message service of navigation system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US12/749,108 US8102281B2 (en) 2006-08-11 2010-03-29 Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system
US12/749,108 2010-03-29
US12/891,916 US8134481B2 (en) 2006-08-11 2010-09-28 Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system
US12/891,916 2010-09-28

Publications (1)

Publication Number Publication Date
WO2011123273A1 true WO2011123273A1 (en) 2011-10-06

Family

ID=44246403

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2011/029174 WO2011123273A1 (en) 2010-03-29 2011-03-21 Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system

Country Status (5)

Country Link
US (1) US8134481B2 (en)
EP (1) EP2553397A1 (en)
JP (1) JP5705303B2 (en)
CN (1) CN102918362A (en)
WO (1) WO2011123273A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104537859A (en) * 2015-01-22 2015-04-22 安徽联合星通信息科技股份有限公司 Car-mounted terminal integrated with intelligent mobile phone
US9949096B2 (en) 2014-11-17 2018-04-17 Hyundai Motor Company Navigation device, system for inputting location to navigation device, and method for inputting location to the navigation device from a terminal
JP2020042041A (en) * 2019-12-03 2020-03-19 株式会社ユピテル System, notification terminal, server device, and program

Families Citing this family (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
KR101111004B1 (en) * 2007-11-29 2012-03-13 교세라 가부시키가이샤 Mobile terminal
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US20120033583A1 (en) * 2010-08-03 2012-02-09 Hu Qingmin J Policy-Based Network and Service Domain Selection for Legacy Non-IP Telecommunication Services Over Heterogeneous Networks
US8686864B2 (en) 2011-01-18 2014-04-01 Marwan Hannon Apparatus, system, and method for detecting the presence of an intoxicated driver and controlling the operation of a vehicle
US8718536B2 (en) 2011-01-18 2014-05-06 Marwan Hannon Apparatus, system, and method for detecting the presence and controlling the operation of mobile devices within a vehicle
US8849931B2 (en) 2011-03-15 2014-09-30 Idt Messaging, Llc Linking context-based information to text messages
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US9063629B2 (en) * 2011-10-31 2015-06-23 Nokia Technologies Oy Responding to a received message in a locked user interaction mode
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US8812035B2 (en) * 2012-03-23 2014-08-19 Giimme, Inc. Apparatii and methods for providing texting services to voice grade telephone numbers
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9633125B1 (en) * 2012-08-10 2017-04-25 Dropbox, Inc. System, method, and computer program for enabling a user to synchronize, manage, and share folders across a plurality of client devices and a synchronization server
US8958981B2 (en) * 2012-11-06 2015-02-17 Cheng-Yu Wang Near field communication mobile device and navigation device communication system
WO2014101726A1 (en) * 2012-12-31 2014-07-03 Harman International Industries, Incorporated System and method for sending messages
EP2954514B1 (en) 2013-02-07 2021-03-31 Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US8914229B2 (en) 2013-03-15 2014-12-16 Google Inc. Systems and methods for transferring navigation data
DE102013007055A1 (en) * 2013-04-23 2014-10-23 Volkswagen Aktiengesellschaft Method for communication between a transmitter and a vehicle and corresponding device
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
WO2014200728A1 (en) 2013-06-09 2014-12-18 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
KR102215815B1 (en) * 2013-07-24 2021-02-16 엘지전자 주식회사 Mobile terminal and method for controlling the same
CN103453912A (en) * 2013-08-03 2013-12-18 惠州华阳通用电子有限公司 Method and device for sharing navigation point of interest (POI) by vehicle-mounted system through intelligent mobile terminal
US10937187B2 (en) 2013-10-07 2021-03-02 Apple Inc. Method and system for providing position or movement information for controlling at least one function of an environment
KR20190021496A (en) * 2013-10-07 2019-03-05 애플 인크. Method and system for providing position or movement information for controlling at least one function of a vehicle
US9503843B2 (en) * 2013-11-13 2016-11-22 At&T Intellectual Property I, L.P. Method and apparatus for sending a request to locate an individual via a text message
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
DE102014006561B3 (en) * 2014-05-06 2015-08-27 Audi Ag Method for operating a navigation system of a motor vehicle and motor vehicle
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
JP6436844B2 (en) * 2015-04-13 2018-12-12 アルパイン株式会社 Navigation system and in-vehicle device
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
JP2018522239A (en) 2015-07-14 2018-08-09 ドライビング マネージメント システムズ, インコーポレイテッド Phone location detection using RF radio and ultrasound signals
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
JP6186467B1 (en) * 2016-03-18 2017-08-23 ヤフー株式会社 Terminal device, program, and insurance condition determination device
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
EP3255540A1 (en) * 2016-06-11 2017-12-13 Apple Inc. Intelligent task discovery
CN107491469B (en) * 2016-06-11 2020-11-24 苹果公司 Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179343B1 (en) * 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. User interface for correcting recognition errors
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. Low-latency intelligent automated assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. Far-field extension for digital assistant services
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
CN114387736A (en) * 2018-05-09 2022-04-22 西安艾润物联网技术服务有限责任公司 Vehicle access method, mechanical garage management system and storage medium
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. Virtual assistant operation in multi-device environments
DK179822B1 (en) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. User activity shortcut suggestions
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11043220B1 (en) 2020-05-11 2021-06-22 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US20220377051A1 (en) * 2021-05-20 2022-11-24 Ford Global Technologies, Llc Vehicle network address assignment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995021435A1 (en) * 1994-02-02 1995-08-10 Rolf Rising Information system for controlling of vehicles
GB2379270A (en) * 2001-09-01 2003-03-05 At & T Lab Cambridge Ltd Vehicle navigation system
US20030079135A1 (en) * 2001-09-01 2003-04-24 Jones Alan Henry Vehicle occupant response system
US20030212479A1 (en) * 2000-09-30 2003-11-13 Ahang Baghshomali Method for transferring individual data items to motor vehicles
US20040054469A1 (en) * 2000-12-28 2004-03-18 Joachim Rentel Vehicle navigation system
US20080036586A1 (en) * 2006-08-11 2008-02-14 Eric Shigeru Ohki Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6363323B1 (en) 1993-05-18 2002-03-26 Global Research Systems, Inc. Apparatus and method for monitoring travel of a mobile vehicle
JPH07311738A (en) 1994-05-16 1995-11-28 Aqueous Res:Kk Electronic notebook
JP3203979B2 (en) 1994-10-06 2001-09-04 トヨタ自動車株式会社 Vehicle data processing system, vehicle data processing device, and vehicle data processing method
US6161012A (en) 1996-03-29 2000-12-12 British Telecommunications Public Limited Company Short code dialling
GB9606748D0 (en) 1996-03-29 1996-06-05 British Telecomm Short code subscription
JPH1089976A (en) 1996-09-13 1998-04-10 Hitachi Ltd Information display and navigation system
DE19640735A1 (en) 1996-10-02 1998-04-23 Bosch Gmbh Robert Telematics device for a motor vehicle
JP3490261B2 (en) 1997-07-31 2004-01-26 本田技研工業株式会社 E-mail transmission / reception system and recording medium recording e-mail display program
US6707421B1 (en) 1997-08-19 2004-03-16 Siemens Vdo Automotive Corporation Driver information system
US6112153A (en) 1997-09-15 2000-08-29 Alpine Electronics, Inc. User interface for selecting destinations by address in a vehicle navigation system
JP2000009479A (en) 1998-06-22 2000-01-14 Mitsubishi Electric Corp Navigation system
GB2341523B (en) 1998-09-12 2003-10-29 Ibm Apparatus and method for establishing communication in a computer network
FI106823B (en) 1998-10-23 2001-04-12 Nokia Mobile Phones Ltd Information retrieval system
US6362730B2 (en) 1999-06-14 2002-03-26 Sun Microsystems, Inc. System and method for collecting vehicle information
US6374177B1 (en) 2000-09-20 2002-04-16 Motorola, Inc. Method and apparatus for providing navigational services in a wireless communication device
US6725022B1 (en) 1999-09-22 2004-04-20 Motorola, Inc. Method and apparatus for enabling the selection of content on a wireless communication device
US6266615B1 (en) * 1999-09-27 2001-07-24 Televigation, Inc. Method and system for an interactive and real-time distributed navigation system
JP2002048558A (en) 2000-08-03 2002-02-15 Sony Corp Service providing system and navigation device
DE10041099C2 (en) 2000-08-22 2002-10-24 Bosch Gmbh Robert Method for the transmission of data packets between motor vehicles
US6956831B1 (en) 2000-08-28 2005-10-18 Converse Ltd. Wireless initiated messaging
US6735516B1 (en) 2000-09-06 2004-05-11 Horizon Navigation, Inc. Methods and apparatus for telephoning a destination in vehicle navigation
US6768942B1 (en) 2000-09-18 2004-07-27 Navigation Technologies Corp. Navigation system with decryption functions and secure geographic database
US7177651B1 (en) 2000-09-22 2007-02-13 Texas Instruments Incorporated System and method for the exchange of location information in a telephone network
DE10047279A1 (en) 2000-09-23 2002-04-18 Henryk Bury Gmbh Dipl Ing Motor vehicle with car telephone with small display and navigation system with display has ability to transfer short text messages to display of navigation system
JP4809979B2 (en) 2001-01-11 2011-11-09 クラリオン株式会社 Navigation device and route search program
ES2377638T3 (en) * 2001-01-24 2012-03-29 Telenav, Inc. Real-time navigation system for mobile environment
EP1263146B1 (en) 2001-05-28 2006-03-29 Matsushita Electric Industrial Co., Ltd. In-vehicle communication device and communication control method
JP2003004474A (en) 2001-06-26 2003-01-08 Matsushita Electric Ind Co Ltd Portable terminal device and route guidance system
US7082365B2 (en) 2001-08-16 2006-07-25 Networks In Motion, Inc. Point of interest spatial rating search method and system
JP2003109185A (en) 2001-09-27 2003-04-11 Fujitsu Ten Ltd On-vehicle information communication device
US6871067B2 (en) 2001-10-15 2005-03-22 Electronic Data Systems Corporation Method and system for communicating telematics messages
US20030109986A1 (en) 2001-12-12 2003-06-12 Eric Tseng Road navigation method and system
US7606908B2 (en) 2002-02-21 2009-10-20 General Motors Corporation Speedy delivery of communication to a vehicle
KR20020038925A (en) 2002-03-29 2002-05-24 모인텔레콤(주) Car Movingation System a used GPS CDMA Cellular Phone
JP4030794B2 (en) 2002-05-08 2008-01-09 三菱電機株式会社 In-vehicle device, information terminal device, and in-vehicle information system
JP3964734B2 (en) 2002-05-17 2007-08-22 富士通テン株式会社 Navigation device
JP2003344081A (en) 2002-05-31 2003-12-03 Fujitsu Ten Ltd Method for guiding route using network
JPWO2003107303A1 (en) * 2002-06-14 2005-10-20 松下電器産業株式会社 Position notification device
KR100474705B1 (en) 2002-06-29 2005-03-10 삼성전자주식회사 Method for transmitting and receiving data between mobile station and information center in navigation system
US6842696B2 (en) 2002-07-01 2005-01-11 Intel Corporation Method and device for location detection for a scheduling program
WO2004008073A1 (en) 2002-07-17 2004-01-22 Xanavi Informatics Corporation Navigation method, processing method for navigation system, map data management device, map data management program, and computer program
WO2004010505A1 (en) 2002-07-18 2004-01-29 Shin-Etsu Handotai Co.,Ltd. Soi wafer and production method therefor
JP2004085486A (en) 2002-08-28 2004-03-18 Honda Motor Co Ltd Vehicle navigation server
US8019362B2 (en) 2003-02-07 2011-09-13 Sybase 365, Inc. Universal short code administration facility
US7460873B2 (en) 2003-02-07 2008-12-02 Sybase 365, Inc. Universal short code administration facility
US7031724B2 (en) 2003-03-12 2006-04-18 General Motors Corporation Location-based services for a telematics service subscriber
US6839628B1 (en) 2003-06-13 2005-01-04 Alpine Electronics, Inc Display method and apparatus for arranging order of listing points of interest for navigation system
US7065349B2 (en) 2003-09-29 2006-06-20 Nattel Group, Inc. Method for automobile safe wireless communications
US20050074028A1 (en) 2003-10-02 2005-04-07 Openwave System Inc. System and method for mobile access to resources
DE20315556U1 (en) 2003-10-07 2004-05-06 Arneth, Borros Personal navigation system comprises a mobile phone equipped with a GPS receiver and navigation system enabling, for example, SMS querying of phone position and provision of public transport information
DE10355578A1 (en) 2003-11-28 2005-06-30 Bayerische Motoren Werke Ag Apparatus and method for displaying information
DE602004003789T2 (en) 2004-02-26 2007-04-05 Alcatel Method for entering destination information via a mobile terminal
US7483707B2 (en) 2004-03-02 2009-01-27 Sybase 365, Inc. Voting campaigns using universal voting card
KR100591275B1 (en) 2004-03-11 2006-06-19 주식회사 파인디지털 Navigation Operating System with POI Code Number and Method Thereof
US7656885B2 (en) 2004-03-12 2010-02-02 Sybase 365, Inc. Intermediary content gateway system and method
US20050222754A1 (en) 2004-03-30 2005-10-06 Naftali Meisler SMS vehicle information system
US8055283B2 (en) 2004-05-18 2011-11-08 Sybase 265, Inc. System and method for message-based interactive services
JP4401883B2 (en) * 2004-07-15 2010-01-20 三菱電機株式会社 In-vehicle terminal, mobile communication terminal, and mail transmission / reception system using them
US7289024B2 (en) 2004-08-19 2007-10-30 General Motors Corporation Method and system for sending pre-scripted text messages
US20060030298A1 (en) 2004-08-19 2006-02-09 General Motors Corporation. Method and system for sending pre-scripted text messages
US20060068808A1 (en) * 2004-09-25 2006-03-30 Dimitrios Karavias Method, System and apparatus for using mobile telephone and GPS receiver to inexpensively access the server based GIS context for navigation operations
CN101044746B (en) 2004-10-06 2012-05-02 赛贝斯365有限公司 System and method for message-based access
DE102005008285B3 (en) 2005-02-23 2006-09-28 Bury Sp.Z.O.O Navigation device for vehicles
US20060224305A1 (en) 2005-04-01 2006-10-05 Siemens Vdo Automotive Corporation Vehicle unit for controlling communications between a vehicle and a wireless device
US7957744B2 (en) 2005-05-13 2011-06-07 General Motors Llc Method and system for delivering telematics services via a handheld communication device
EP1891848B1 (en) 2005-06-13 2015-07-22 Intelligent Mechatronic Systems Inc. Vehicle immersive communication system
NZ540819A (en) * 2005-06-16 2007-07-27 Brunswick New Technologies Asi Navigation system with analysis and merging of multiple similar location results
US20070054702A1 (en) 2005-07-06 2007-03-08 Rokusek Daniel S Mobile device enhancement via a vehicular telematics system
US7277713B2 (en) 2005-07-06 2007-10-02 Agere Systems Inc. Sender location identifier, method of identifying a sender location and communication system employing the same
KR101165850B1 (en) 2005-09-23 2012-07-13 주식회사 현대오토넷 System and method for sharing positioning information using mobile communication system
JP4946511B2 (en) * 2007-02-28 2012-06-06 株式会社Jvcケンウッド Navigation device
US8060123B2 (en) 2007-03-19 2011-11-15 Sony Corporation System and method for using SMS and tagged message to send position and travel information to server and/or to peers

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995021435A1 (en) * 1994-02-02 1995-08-10 Rolf Rising Information system for controlling of vehicles
US20030212479A1 (en) * 2000-09-30 2003-11-13 Ahang Baghshomali Method for transferring individual data items to motor vehicles
US20040054469A1 (en) * 2000-12-28 2004-03-18 Joachim Rentel Vehicle navigation system
GB2379270A (en) * 2001-09-01 2003-03-05 At & T Lab Cambridge Ltd Vehicle navigation system
US20030079135A1 (en) * 2001-09-01 2003-04-24 Jones Alan Henry Vehicle occupant response system
US20080036586A1 (en) * 2006-08-11 2008-02-14 Eric Shigeru Ohki Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2553397A1

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9949096B2 (en) 2014-11-17 2018-04-17 Hyundai Motor Company Navigation device, system for inputting location to navigation device, and method for inputting location to the navigation device from a terminal
CN104537859A (en) * 2015-01-22 2015-04-22 安徽联合星通信息科技股份有限公司 Car-mounted terminal integrated with intelligent mobile phone
JP2020042041A (en) * 2019-12-03 2020-03-19 株式会社ユピテル System, notification terminal, server device, and program
JP7033327B2 (en) 2019-12-03 2022-03-10 株式会社ユピテル Systems, notification terminals, server devices and programs

Also Published As

Publication number Publication date
US20110021211A1 (en) 2011-01-27
US8134481B2 (en) 2012-03-13
CN102918362A (en) 2013-02-06
JP2013528012A (en) 2013-07-04
JP5705303B2 (en) 2015-04-22
EP2553397A1 (en) 2013-02-06

Similar Documents

Publication Publication Date Title
US8134481B2 (en) Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system
US8102281B2 (en) Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system
US7999703B2 (en) Method and system for receiving and sending navigational data via a wireless messaging service on a navigation system
US8670727B2 (en) Automatic discovery of wireless communication settings
KR100877376B1 (en) Navigation system
JP4166953B2 (en) Car navigation system
US7676233B1 (en) System and method for accessing computer services via a wireless network
US9786169B2 (en) On-vehicle information providing device, information providing center, and information providing system
WO2007027193A1 (en) Off-board navigation with a portable device
US20080306682A1 (en) System serving a remotely accessible page and method for requesting navigation related information
GB2425858A (en) Map correction
WO2011072745A1 (en) Dynamic point of interest suggestion
US7623959B2 (en) Method and system for providing voice-based supplementary information service using road map data
JP2001255160A (en) Navigation system
US8423286B2 (en) Method for displaying activity information on a navigation device and related navigation device
JP2007212185A (en) Map information cooperation system
JP2004340854A (en) Map information delivery system
KR200291353Y1 (en) Automatic destination display device using cellular phone
KR20070017147A (en) Methods for displaying a route traveled by mobile users in a communication network
WO2011072744A1 (en) Dynamic point of interest suggestion
JPH08180295A (en) Destination information acquisition system

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180026629.8

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11710653

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2011710653

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2011710653

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2013502632

Country of ref document: JP