[go: up one dir, main page]

EP1623585A2 - Two-way sms/xml position location api - Google Patents

Two-way sms/xml position location api

Info

Publication number
EP1623585A2
EP1623585A2 EP04752263A EP04752263A EP1623585A2 EP 1623585 A2 EP1623585 A2 EP 1623585A2 EP 04752263 A EP04752263 A EP 04752263A EP 04752263 A EP04752263 A EP 04752263A EP 1623585 A2 EP1623585 A2 EP 1623585A2
Authority
EP
European Patent Office
Prior art keywords
location
wireless communication
request
communication device
information
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP04752263A
Other languages
German (de)
French (fr)
Other versions
EP1623585A4 (en
Inventor
Marc Ische
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of EP1623585A2 publication Critical patent/EP1623585A2/en
Publication of EP1623585A4 publication Critical patent/EP1623585A4/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information

Definitions

  • This invention relates generally to wireless communication systems and more particularly to locating wireless communication devices via a wireless communication network.
  • Conventional wireless communication networks and wireless communication devices provide cumbersome and proprietary ways to obtain the location of a particular wireless communication device.
  • conventional systems employ a global positioning system (“GPS") on the wireless communication device to obtain the GPS location information for the device.
  • GPS global positioning system
  • Conventional systems additionally require a specialized server that sends a proprietary message to the wireless communication device, instructing the device to provide its GPS location information to the server.
  • This type of conventional solution lacks portability between wireless communication networks based on the proprietary nature of the particular message in use by a certain carrier. Furthermore, these conventional solutions are limited to providing location information.
  • a communication interface that may be used on any carrier's network communicates between a position-location server and a wireless communication device.
  • the interface provides for messages in an ubiquitous extensible markup language
  • the position-location sever composes a position-location request and sends the request to a wireless communication device.
  • the request seeks information from the wireless communication device, including at least information regarding at least one of: an altitude, a velocity, an orientation of the wireless communication device, and an error estimate indicating an accuracy of the information reported, and an error code indicating a reason that requested information could not be reported.
  • the wireless communication device provides a position-location response thereto
  • Figure 1 is a high-level diagram illustrating an example data communication network
  • Figure 2 is a block diagram illustrating an example wireless communication device
  • Figure 3 is a block diagram illustrating an example data storage area in association with the wireless communication device of Fig. 2;
  • FIG. 4 is a block diagram illustrating an example server
  • Figure 5 is a block diagram illustrating an example data storage area in association with the server of Fig. 4;
  • Figure 6 is a block diagram illustrating an example access point
  • Figure 7 is a block diagram illustrating an example position-location application
  • Figure 8 is a flow diagram illustrating an example method for obtaining position and location information from a wireless communication device
  • Figure 9 is a flow diagram illustrating an example method for providing position and location information to a server
  • Figure 10 is a block diagram illustrating an exemplary computer system that may be used in connection with the various embodiments described herein.
  • Certain embodiments provide for wireless communication systems and methods for requesting and receiving position and location information from a wireless communication device in communication with a server via a wireless communication network. For example, one method allows for a server to compose a request in a universal format for transfer to a wireless communication device over any of several wireless communication networks. The wireless communication device obtains requested information about its position and location in response to the request and provides that information to the requesting server. >
  • a data communication network includes a wireless communication device 10 in communication with a server computer 20 (herein referred simply as a "server") over a wireless communication network 30.
  • the wireless communication device 10 (sometimes referred to as a “wireless device” or a “handset”) has an associated data storage area 12.
  • the server 20 has an associated data storage area 22.
  • an access point 50 is in communication n with the wireless communication device 10 and the server 20 via a public network 40 and the wireless communication network 30.
  • the access point 50 may in communication with the server 20 directly via the public network 40. Also, the access point 50 may be indirectly coupled with the wireless communication device 10, requiring a communication bridge, such as the server 20, to facilitate communications between the access point 50 and the wireless communication device 10.
  • the wireless communication device 10 may be a digital cellular telephone, personal digital assistant ("PDA"), laptop computer, or any other type of device with the ability to establish a data communication link over the wireless communication network 30. Establishing and maintaining data communications over a wireless communication network is well known and not described in detail herein. As will be understood, the wireless communication device 10 is a network device having the ability to perform data communications over the wireless communication network 30.
  • PDA personal digital assistant
  • the data storage areas 12, 22, and 52 provide computer readable media for storing executable instructions and data for program execution on the wireless communication device 10, the server 20, or the access point 50.
  • the data storage areas 12, 22, and 52 can be any of a variety of data storage devices, either integral, external, or removable, as described more fully below with reference to Fig. 10.
  • the executable instructions stored in the data storage area 12, when executed, preferably enable the wireless communication device 10 to perform the various features and functions described herein.
  • the server computer 20 can be a general-purpose digital computer, with one or more processors, as described more fully below with reference to Fig. 10.
  • the server computer 20 is preferably able to communicate with wireless communication device 10 over the wireless communication network 30. Additionally, the server 20 may be directly or indirectly connected to public network 40, for example, via the Internet.
  • the access point 50 can be a general-purpose digital computer, or other type device that is capable of data communications over the public network 40.
  • the access point 50 can be a personal computer (PC), PDA, laptop, or a tablet PC, or the like.
  • the access point 50 may also be a wireless communication device directly or indirectly connected to the wireless communication network 30.
  • the access point 50 may be connected to a separate wireless communication network (not shown) that is in communication with the wireless communication network 30 through the public network 40, or some other network or combination of networks.
  • the public network 40 can be a local area network (LAN), wide area network (WAN), or some combination of networks, including, for example, the ubiquitous Internet.
  • the wireless communication device 10 has a number of components, including a request manager 100, a location module 110, an altitude module 120, an orientation module 130, a velocity module 140, an estimator 150, and an error handler 160.
  • the wireless communication device 10 need not be modularized as shown.
  • the various functional components could alternatively be integrated into a single module or some subset of modules.
  • the embodiment illustrated presents the various components separately.
  • the wireless communication device 10 also has a data storage area 12 and an antenna 14.
  • the various components preferably work collectively to receive position-location requests via a wireless communication network and respond to those requests via the same communication channel.
  • the request manager 100 preferably controls the overall process for receiving position-location requests and responding to such requests.
  • the request manager 100 receives a position-location request, parses the request, and sends corresponding queries to the various other components to gather the information needed to respond to the request. Once the various components have provided their responses, the request manager 100 composes a response to the request and sends that response to the requesting server 20 or other requesting entity.
  • the request manager 100 may parse the request to determine what position-location information is being requested. For instance, a position-location request may seek information that includes the location, in GPS or latitude-longitude format, the altitude, the velocity, and the orientation of the wireless communication device 10. After determining what information the position-location request is seeking, the request manager 100 may then request that information from the various components of the wireless communications device 10.
  • the location module 110 serves to receive and respond to queries from the request manager 100, and operates to obtain the location of the wireless communication device 10 in a desired format.
  • the location module may obtain the location of the wireless communication device 10 in a GPS format, a latitude and longitude format, or the like.
  • the location module 100 may obtain the location of the wireless communication device 10 in a GPS format and then convert it to a latitude and longitude format. In such conversion, the location module 110 may consult a remote server via the wireless communication network.
  • the altitude module 120 receives and responds to queries from the request manager 100, and operates to obtain the altitude of the wireless communication device 10.
  • the altitude may be acquired from an integral altimeter or by a table lookup or conversion of the GPS or latitude and longitude coordinates.
  • the altitude module may query a remote server via the wireless communication network in order to determine the altitude for the wireless communication device 10.
  • the remote server may find the GPS location for the wireless communication device 10 on a topological map to determine the altitude.
  • the altitude would necessarily assume that the wireless communication device 10 was on or near the ground.
  • an integral altimeter is preferable.
  • the orientation module 130 also receives and responds to queries from the request manager 100 and operates to determine the orientation or direction of the wireless communication device 10.
  • the orientation may be acquired from an integral compass or by a local or remote calculation of the heading based on location information.
  • the wireless communication device 10 may obtain a first position and then, after a certain period, obtain a second position. Additional positions may also be obtained to increase accuracy. These two positions may then be plotted on a map to determine the orientation or heading of the wireless communication device 10. Calculating the orientation from the two or more positions obtained by the wireless communication device 10 can be carried out locally or the positions can be sent to a remote server for calculation, with the orientation information being sent back to the wireless communication device 10.
  • the wireless communication device 10 may periodically obtain its position and store the position information so that an orientation or direction, over time, can be provided.
  • the velocity module 140 is configured to receive and respond to queries from the request manager 100, and operates to determine the speed of the wireless communication device 10.
  • the velocity module 140 determines the velocity by obtaining two or more locations for the wireless communication device 10 and a corresponding timestamp for each position.
  • the wireless communication device 10 can calculate the distance between the two or more locations and then determine the velocity required for the wireless communication device 10 to travel that distance during the time between the corresponding timestamps. Determining the velocity can provide other useful information, such as whether the wireless communication device 10 is accelerating or decelerating.
  • the calculation to determine the velocity of the wireless communication device 10 can be carried out locally by the wireless communication device 10 or remotely by a server in communication with the wireless communication device 10 via a wireless communication network. Other ways of determining velocity may be used, as well, such as, for example, integrating data from an accelerometer.
  • the estimator 150 estimates the accuracy of the various measurements made by the wireless communication device 10, or made by a remote server on behalf of the wireless communication device 10.
  • the estimator 150 has access to various metrics and data, for example, stored in the data storage area 12, that allow the accuracy of a particular measurement to be estimated.
  • the accuracy of the velocity of the wireless communication device 10 may increase with the number of locations obtained and used to determine the velocity.
  • the accuracy of the location may vary based on the velocity of the wireless communication device 10.
  • the error handler 160 processes errors that result from any of the various components or from the position-location request. For example, if the wireless communication device 10 were unable to determine its location due to electrical interference or lack of GPS satellite coverage, the error handler 160 can determine that the location is unavailable and provide the request manager 100 with an appropriate error message.
  • the error messages corresponding to the various potential errors that may occur may be represented by error codes in the data storage area 12. Thus, if an error is reported by the wireless communication device 10 in the position-location response, only an error code is provided to decrease the overall size of the response and increase the efficiency of data communications over the wireless communication network.
  • a data storage area 12 is shown as a database with corresponding database management utilities.
  • the data storage area can be implemented as a file system, registers in memory, or other form of digitally stored data.
  • the data storage area 12 may include executable functions that can be utilized by the wireless communication device 10; for example, certain executable functions that may be included in the data storage area 12 include location, altitude, orientation, velocity, estimation, and error processing, or the like.
  • the metrics referred to above that are used by the estimator may be stored in the data storage area 12. (The metrics may also be stored remotely.). Additional data that can be stored in the data storage area 12 includes error codes, function codes, and historical data, such as previous positions, altitudes, orientations, and velocities. Other types of information useful in responding to position-location requests may also be stored in the data storage area 12.
  • the server 20 comprises a position- location manager 200, a request builder 210, a protocol handler 220, a public request handler 230, and a response handler 240.
  • the server 20 also has a data storage area 22.
  • the various components preferably work collectively to compose and send position- location requests via a wireless communication network and receive, via the same communication channel, and process position-location responses.
  • the position-location manager 200 controls the overall process for composing position-location requests and receiving and processing position-location responses. For example, the position-location manager 200 may compose a position-location request, addresses the request, and send the request to a particular wireless communication device via a wireless communication network. .
  • the server 20 may be tasked with tracking a particular wireless communication device, for example, in a search and rescue mission, in a stolen vehicle recovery operation, or the like. In performing this tracking function, the server 20 may periodically compose and send a position-location request to the wireless communication device 10.
  • the position-location request may request various types of information from the wireless communication device 10, including its location, altitude, orientation, and velocity, as well as an estimation of the accuracy of the requested information.
  • the position- location manager 200 may parse the response to obtain the requested information and then store that information in data storage area 22. Additionally, the information may be provided, for example, to an operator or application.
  • the position-location system need not be modularized as shown in the illustrated embodiment.
  • the various functional components can also be integrated into a single module or some subset of modules.
  • the illustrated embodiment presents the various components separately.
  • the request builder 210 composes a position-location request.
  • the position- location requests may ask for various types of information, such as a location request, a location and velocity request, a location and velocity and orientation request, a location and velocity and orientation and altitude request, and so on. Additional information and additional combinations of information may also be employed to construct a significant number of discrete requests seeking a variety of different information from the wireless communication device 10.
  • the request builder 210 may compose the position-location request in a mark-up style language that facilitates transmission over a variety of underlying transport layers.
  • the request builder 210 can compose the position-location request in the extensible markup language (XML).
  • the protocol handler 220 formats the position-location request for transmission over the particular underlying transport layer. For example, the protocol handler 220 may format a position-location request that was created in XML for transmission as part of a short message service (SMS) message. Alternatively, the protocol handler 220 may format a position-location request that was created in XML for transmission over a wireless communication network employing the TCP/IP protocol.
  • SMS short message service
  • the protocol handler 220 may format a position-location request that was created in XML for transmission over a wireless communication network employing the TCP/IP protocol.
  • the use of a mark up style language such as XML in the creation of the position-location request facilitates transmission using any of a variety of transport mechanisms including SMS, TCP/IP, and others.
  • the public request handler 230 receives and processes externally generated inquiries for position-location information for a specific wireless communication device. For example, an access point outside of the wireless communication network or a wireless communication device within the wireless communication network may send a inquiry to the server 20 requesting position-location information for a specifically identified wireless communication device.
  • the inquiry may include the mobile identification number (MIN) for the particular wireless communication device.
  • the inquiry may include the system identification number (SID) for the wireless device. This may be advantageous, for example, when the server 20 has access to wireless devices on more than one carrier network.
  • the inquiry may include a list of the detailed position-location information that is being requested.
  • the inquiry may indicate that the location, velocity, altitude, and orientation of the wireless device are desired.
  • the inquiry may be received by the public request handler 240 in an acceptable XML format.
  • the inquiry may be received in a different format and the public request handler 240 can route the inquiry to the position-location manager 200 for processing or the public request handler 240 can route the inquiry directly to the request builder 210 for proper formatting.
  • the public request handler 240 may also validate the inquiry to confirm that the inquiry is requesting available information and to confirm that the inquiry is properly formatted. For example, the validation process may signal the public request handler 240 to route the inquiry directly to the request builder 210 for reformatting. Alternatively, the validation process may confirm that the requesting device is authorized to obtain position-location information for the particular wireless communication device identified in the inquiry. Authorization, for example, may require a usemame and password combination or may require that the MID/SDD combination of the requesting device be listed as an authorized device on the server 20.
  • the public request handler 240 routes the response back to the remote device that made the inquiry. For example, the public request handler 240 may review the response to be sent to the requesting device to confirm that no information is provided to the requesting device that is not pre-authorized. For instance, a particular MID/SID that identifies a requesting device may be restricted to obtaining only the velocity and orientation of the wireless communication device. Thus, the public request handler 240 would remove any information related to the location or altitude of the wireless communication device prior to sending the response to the requesting device.
  • the response handler 240 is configured to receive position-location responses from a wireless communication device and process those responses. Thus, the response handler 240 receives a position-location response and parses the response to obtain the position-location information. The response handler 240 then stores the position- location information in data storage area 22. If the position-location response corresponds to a remote request, then the response handler 240 sends the position- location response to the public request handler 240 for further processing.
  • the response handler 240 may maintain a historical database of position- location information for a plurality of wireless communication devices. This information can be used to generate reports, forecast locations, travel times, and predict patterns. If a wireless communication device deviates from the normal pattern, a message can be sent if desired to notify the owner of the device. For example, such a notice may alert the owner to misuse or theft of the particular wireless communication device.
  • the data storage area 22 is shown as a database with the corresponding database management utilities.
  • the data storage area can be implemented as a file system, registers in memory, or other manifestation of digitally stored data.
  • the data storage area 22 includes executable functions that can be utilized by the server 20 to carry out the methods herein.
  • certain executable functions that may be included in the data storage area 22 include track location, predict location, build request, validate request, track altitude, track orientation, track velocity, and report errors, or the like.
  • Data such as the historical data referred to above that are used by the response handler, may also be stored in the data storage area 22.
  • Other examples of data that can be stored in the data storage area 22 include error codes and function codes. Communications with the wireless communication device may also employ codes to identify particular error conditions and functions to perform in order to make the data communications more efficient, that is, to reduce the byte size of the transmission).
  • Other types of information useful in composing position-location requests and receiving position-location responses can also be stored in the data storage area 22.
  • the access point 50 can be a wireless communication device in communication with the server 20 via a wireless communication network, a public network, such as the Internet, or both.
  • the access point 50 is associated with a data storage area 52.
  • the access point 50 is configured also to execute a position-location application 300.
  • the position-location application 300 provides the ability for the access point 50 to construct a position-location inquiry that may or may not be in the format of a position-location request.
  • the position-location application 300 composes the position-location inquiry and the access point 50 sends the position-location inquiry to the server 20, receives a response to the position- location inquiry, and provides that information to the user of the access point 50.
  • the information from the position-location response can be stored in the data storage area 52.
  • the position-location application 300 includes an inquiry builder 310, a response handler 320, and a communication manager 330.
  • the inquiry builder 310 serves to compose a position-location inquiry, which may or may not be in the format of a position-location request.
  • the inquiry may include additional information and may be compressed or otherwise formatted for optimal transmission from the access point to the server 20.
  • the inquiry may include the position-location information sought in addition to authentication information, such as a user name and password combination.
  • the inquiry also may include a unique identifier for the wireless communication device from which the position and location information is sought.
  • the inquiry may comprise the MID/SID for the target wireless communication device, and the MID/SID, Ethernet address, or MAC address of the requesting device, as well as a usemame and password combination, and a listing of information requested including location, velocity, altitude, and orientation.
  • the response handler 320 receives responses from the server 20 and provides the information in the response to the user.
  • the response handler 320 may store the information in the data storage area 52.
  • the response handler 320 can also report any error messages. For example, if response may include a particular error code, the response handler 320 can obtain the error message text from the data storage area 52 that corresponds to that particular error code. The error message text can then be provided to the user of the access point.
  • the communication manager 330 sends position-location inquiries to the server 20 and receives corresponding responses from the server 20.
  • the communication manager 330 dynamically obtains the network address for the server 20, so that upon power up of the access point, the communication manager 330 can perform its function.
  • the network address for the server 20 may be stored in data storage area 52.
  • the communication manager 330 may obtain the network address from the data storage area, and send a status message to the server 20. If the server 20 does not respond for any reason (e.g., it is off-line) then the communication manager may dynamically query the network for the address of the current server and update the data storage area with the new address information.
  • step 400 the server 20 builds the position-location request.
  • the position-location request includes a unique identifier for the particular wireless communication device to which it is targeted. Additionally, the position-location request can include a variety of elements that identify the information being sought.
  • the position-location request can identify elements including the location in GPS format, latitude and longitude coordinate format, or both, the velocity, the altitude, and the orientation of the wireless communication device. These elements can be identified by codes in order to reduce the size of the transmission.
  • the request may also include additional information; for example, the request may be piggy backed on an SMS message that contains other data or information.
  • the position-location request is composed in a format that facilitates transmission over a variety of underlying transport protocols and mechanisms.
  • the position-location request can be composed in XML, which allows for efficient transmission as part of an SMS message or via a TCP/IP data communication session.
  • the request is sent to the wireless communication device, as illustrated in step 402.
  • the request may be sent as a data communication over a packet switched TCP/IP connection, or, alternatively, as part of an SMS message sent over a dedicated circuit connection.
  • the position-location request is addressed to the MID/SID that uniquely identifies a particular wireless communication device. If desired, the position-location request can be compressed to facilitate more efficient use of the bandwidth in the wireless communication network.
  • the server 20 After sending the position-location request, the server 20 next receives a position-location response from the wireless communication device.
  • the position- location response preferably includes information pertaining to each element that was identified in the position-location request. For example, if the request included the velocity element, the response preferably includes velocity information for the wireless device. If velocity information is not available, the response may include an error message or error code that identifies why the velocity information was not available.
  • the server 20 may parse the response to obtain the various elements of information. This information may then be provided downstream to a remote requesting entity or stored in a data storage area, as shown in step 406, or both. For example, if the request was originated by a remote device, then the response can be reformatted and stripped down to exclude any unauthorized information and sent to the remote device. Alternatively, or in combination, the information can be populated into a database that allows the server 20 to later provide tracking information corresponding to the wireless device. For example, the server 20 could provide a map of the various locations for the wireless device over time. Additionally, the server 20 could provide a history of tracking information including the location, altitude, velocity, and orientation for the wireless device.
  • the wireless device receives a position-location request from the server 20.
  • the position- location request may be received over a wireless communication network as a data communication over a packet switched TCP/IP connection, or as part of an SMS message over a dedicated circuit connection.
  • the wireless device parses the request in step 502 to determine the particular elements or parameters that are being requested. For example, the request may seek information related to the location, velocity, altitude, orientation of the wireless device, or like information. After the requested position-location elements have been determined, the wireless device next gets the location information, in step 504.
  • the wireless device may have a plurality of discrete functions, with a single function or combination of functions employed for each element of information.
  • the wireless device may have a GPS location function that determines the location of the device.
  • the device may have a latitude-longitude function that converts the GPS location information into latitude and longitude coordinates.
  • the conversion function may contact a remote server via the wireless communication network in order to obtain the latitude and longitude coordinates.
  • the wireless device may obtain the requested information in an efficient manner so that position-location elements that depend on data from another position- location element are determined downstream.
  • An example of such an efficient operation occurs when the position-location request is seeking the location and altitude of the wireless device.
  • the wireless device When the wireless device is not equipped with an integral altimeter, the device must provide its location to a remote server to obtain its altitude, or, alternatively, use its location as the index to an altitude lookup table stored in a local data storage area.
  • the most efficient mode of operation is to obtain the location information first, then use the location information when obtaining the altitude information.
  • the wireless device may eliminate unnecessary steps by engaging its altitude function, then using the location information necessarily obtained to respond to the position-location request.
  • Various other methods of efficient operation by the wireless device may also be used.
  • the wireless device next estimates the accuracy of each element of the information in step 506. For example, the calculated altitude of the wireless device may vary in accuracy based on the terrain and whether the wireless device is moving. Similarly, when the wireless device is moving, any location information is subject to varying degrees of accuracy, depending upon the speed of the wireless device.
  • any errors are identified.
  • the wireless device may not be able to obtain some or all of the requested position-location information.
  • the wireless device may provide an error code that identifies the error. Trouble shooting information may also be provided, where possible.
  • the wireless device may also provide an error code that indicates that a remote server was unavailable. Such error may be received, for example, if a remote server for calculating altitude based on GPS position is been off-line or otherwise not responding.
  • the error code may also indicate more granular information, such as whether there was any response at all from the altitude server or the type of error message provided by the altitude server.
  • the wireless device composes a position-location response in step 510.
  • the position- location response should include all of the position-location information, the accuracy estimates, and any error codes, for example, in XML mark-up language. Use of such a mark-up language facilitates transmission of the position-location response over a variety of communication protocols, including data communications over a packet switched TCP/IP connection and SMS messages over a circuit switched connection.
  • the wireless device sends the response to the server, in step 512.
  • the position-location response may be compressed prior to transmission to the server over the wireless communication network.
  • the position-location response may be sent using a variety of communication means, including communications over a packet switched TCP/IP connection, SMS messages over a circuit switched connection, or the like.
  • the computer system 550 may be used in conjunction with a position-location server or an external access point.
  • many of the general computing system platform aspects of the computer system 550 may be used in conjunction with a wireless communication device.
  • the microprocessor(s), data storage area(s), computer readable media, and communication interface(s) may be applicable to the general-purpose computing aspects of a wireless communication device.
  • other computer systems and/or architectures may be used.
  • the computer system 550 includes one or more processors, such as processor 552. Additional processors may be provided. For example, an auxiliary processor may be provided to manage input/output. The auxiliary processor may also perform floating point mathematical operations. A special-purpose microprocessor having an architecture suitable for fast execution of signal processing algorithms (e.g., digital signal processor) may also be used. A slave processor subordinate to the main processing system (e.g., back-end processor) may be provided. An additional microprocessor or controller for dual or multiple processor systems, or a coprocessor may also be used. Such auxiliary processors may be discrete processors or may be integrated with the processor 552.
  • processors such as processor 552.
  • the processor 552 is connected to a communication bus 554.
  • the communication bus 554 may include a data channel to facilitate information transfer between storage and other peripheral components of the computer system 550.
  • the communication bus 554 further may provide a set of signals used for communication with the processor 552, including a data bus, address bus, and control bus (not shown).
  • the communication bus 554 may comprise any standard or non-standard bus architecture.
  • bus architectures include, for example, bus architectures compliant with industry standard architecture (“ISA”), extended industry standard architecture (“EISA”), Micro Channel Architecture (“MCA”), peripheral component interconnect (“PCI”) local bus, or standards promulgated by the Institute of Electrical and Electronics Engineers (“IEEE”) including IEEE 488 general-purpose interface bus (“GPIB”), IEEE 696/S-100, and the like.
  • ISA industry standard architecture
  • EISA extended industry standard architecture
  • MCA Micro Channel Architecture
  • PCI peripheral component interconnect
  • IEEE Institute of Electrical and Electronics Engineers
  • IEEE Institute of Electrical and Electronics Engineers
  • GPIB general-purpose interface bus
  • IEEE 696/S-100 IEEE 696/S-100
  • Computer system 550 preferably includes a main memory 556, and may also include a secondary memory 558.
  • the main memory 556 provides storage of instructions and data for programs executing on the processor 552.
  • the main memory 556 is typically semiconductor-based memory such as dynamic random access memory (“DRAM”) and/or static random access memory (“SRAM”).
  • DRAM dynamic random access memory
  • SRAM static random access memory
  • Other semiconductor- based memory types include, for example, synchronous dynamic random access memory (“SDRAM”), Rambus dynamic random access memory (“RDRAM”), ferroelectric random access memory (“FRAM”), and the like, including read only memory (“ROM”).
  • SDRAM synchronous dynamic random access memory
  • RDRAM Rambus dynamic random access memory
  • FRAM ferroelectric random access memory
  • ROM read only memory
  • the secondary memory 558 may optionally include a hard disk drive 560 and/or a removable storage drive 562, for example a floppy disk drive, a magnetic tape drive, a compact disc (“CD”) drive, a digital versatile disc (“DVD”) drive, etc.
  • the removable storage drive 562 reads from and/or writes to a removable storage medium 564 in a well-known manner.
  • Removable storage medium 564 may be, for example, a floppy disk, magnetic tape, CD, DVD, etc.
  • the removable storage medium 564 may be a computer readable medium having stored thereon computer executable code, or software, and/or data.
  • the computer software or data stored on the removable storage medium 564 is read into the computer system 550 as electrical communication signals 578.
  • secondary memory 558 may include other similar ways for allowing computer programs or other data or instructions to be loaded into the computer system 550.
  • Such ways may include, for example, an external storage medium 572 and an interface 570.
  • external storage medium 572 include an external hard disk drive, an external optical drive, an external magneto-optical drive, or the like.
  • secondary memory 558 include semiconductor-based memory, such as programmable read-only memory (“PROM”), erasable programmable read-only memory (“EPROM”), electrically erasable read-only memory (“EEPROM”), or flash memory (block oriented memory similar to EEPROM), or the like. Also included are any other removable storage units 572 and interfaces 570, which allow software and data to be transferred from the removable storage unit 572 to the computer system 550.
  • PROM programmable read-only memory
  • EPROM erasable programmable read-only memory
  • EEPROM electrically erasable read-only memory
  • flash memory block oriented memory similar to EEPROM
  • Computer system 550 may also include a communication interface 574.
  • the communication interface 574 allows software and data to be transferred between computer system 550 and external devices (e.g. printers), networks, or information sources.
  • external devices e.g. printers
  • computer software or executable code may be transferred to computer system 550 from a network server via communication interface 574.
  • Examples of communication interface 574 include a modem, a network interface card ("NIC"), a communications port, a PCMCIA slot and card, an infrared interface, and an IEEE 1394 fire-wire, just to name a few.
  • Communication interface 574 preferably implements industry promulgated protocol standards, such as Ethernet IEEE 802 standards, Fiber Channel, digital subscriber line (“DSL”), asynchronous digital subscriber line (“ADSL”), frame relay, asynchronous transfer mode (“ATM”), integrated digital services network (“ISDN”), personal communications services (“PCS”), transmission control protocol/Internet protocol (“TCP/IP”), serial line Internet protocol/point to point protocol (“SLIP/PPP”), and so on, but may also implement customized or non-standard interface protocols as well.
  • industry promulgated protocol standards such as Ethernet IEEE 802 standards, Fiber Channel, digital subscriber line (“DSL”), asynchronous digital subscriber line (“ADSL”), frame relay, asynchronous transfer mode (“ATM”), integrated digital services network (“ISDN”), personal communications services (“PCS”), transmission control protocol/Internet protocol (“TCP/IP”), serial line Internet protocol/point to point protocol (“SLIP/PPP”), and so on, but may also implement customized or non-standard interface protocols as well.
  • Communication channel 576 carries signals 578 and can be implemented using a variety of communication means including wire or cable, fiber optics, conventional phone line, cellular phone link, radio frequency (RF) link, or infrared link, just to name a few.
  • RF radio frequency
  • Computer executable code i.e., computer programs or software
  • main memory 556 and/or the secondary memory 558 Computer programs can also be received via communication interface 574 and stored in the main memory 556 and/or the secondary memory 558.
  • Such computer programs when executed, enable the computer system 550 to perform the various functions of the present invention as previously described.
  • the term "computer readable medium” is used to refer to any media used to provide computer executable code (e.g., software and computer programs) to the computer system 550. Examples of these media include main memory 556, secondary memory 558 (including hard disk drive 560, removable storage medium 564, and external storage medium 572), and any peripheral device in communication with communication interface 574 (including a network information server or other network device). These computer readable mediums are means for providing executable code, programming instructions, and software to the computer system 550. [0082] In an embodiment that is implemented using software, the software may be stored on a computer readable medium and loaded into computer system 550 by way of removable storage drive 562, interface 570, or communication interface 574. In such an embodiment, the software is loaded into the computer system 550 in the form of electrical communication signals 578. The software, when executed by the processor 552, preferably causes the processor 552 to perform the inventive features and functions previously described herein.
  • Various embodiments may also be implemented primarily in hardware using, for example, components such as application specific integrated circuits ("ASICs"), or field programmable gate arrays ("FPGAs"). Implementation of a hardware state machine capable of performing the functions described herein will also be apparent to those skilled in the relevant art. Various embodiments may also be implemented using a combination of both hardware and software.
  • ASICs application specific integrated circuits
  • FPGAs field programmable gate arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

A communication protocol for use between a position-location server and a wireless communication device provides for messages in the ubiquitous extensible markup language (XML) to be sent between the position-location server and the wireless communication device over a wireless communication network. In particular, the position-location sever composes a position-location request, and sends the request to a wireless communication device. The request seeks information from the wireless communication device, and may include information relating to the location, altitude, velocity, and orientation of the wireless communication device. In return, the wireless communication device provides a position-location response that includes the requested information. Additionally, information relating to the accuracy of the position and location information can be included with the response to improve any predictive metrics that are later determined by the position-location server.

Description

TWO-WAY SMS/XML POSITION LOCATION API
Background Related Applications
[0000] This application claims priority to U.S. Provisional Application No. 60/471,442, filed on May 15, 2003.
Field
[0001] This invention relates generally to wireless communication systems and more particularly to locating wireless communication devices via a wireless communication network.
Related Art
[0002] Conventional wireless communication networks and wireless communication devices provide cumbersome and proprietary ways to obtain the location of a particular wireless communication device. Typically, conventional systems employ a global positioning system ("GPS") on the wireless communication device to obtain the GPS location information for the device. Conventional systems additionally require a specialized server that sends a proprietary message to the wireless communication device, instructing the device to provide its GPS location information to the server. This type of conventional solution lacks portability between wireless communication networks based on the proprietary nature of the particular message in use by a certain carrier. Furthermore, these conventional solutions are limited to providing location information.
[0003] Therefore, what is needed is a system and method that addresses these problems.
Summary
[0004] A communication interface that may be used on any carrier's network communicates between a position-location server and a wireless communication device.
The interface provides for messages in an ubiquitous extensible markup language
(XML) to be sent between the position-location server and the wireless communication device. [0005] In particular, the position-location sever composes a position-location request and sends the request to a wireless communication device. The request seeks information from the wireless communication device, including at least information regarding at least one of: an altitude, a velocity, an orientation of the wireless communication device, and an error estimate indicating an accuracy of the information reported, and an error code indicating a reason that requested information could not be reported. In return, the wireless communication device provides a position-location response thereto
Brief Description of the Drawing
[0006] The details of the present invention, both as to its structure and operation, will be apparent from the accompanying drawing, when read in conjunction with the following detailed description, when read in conjunction with the appended claims. In the drawing, like reference numerals refer to like or similar parts.
[0007] Figure 1 is a high-level diagram illustrating an example data communication network;
[0008] Figure 2 is a block diagram illustrating an example wireless communication device;
[0009] Figure 3 is a block diagram illustrating an example data storage area in association with the wireless communication device of Fig. 2;
[0010] Figure 4 is a block diagram illustrating an example server;
[0011] Figure 5 is a block diagram illustrating an example data storage area in association with the server of Fig. 4;
[0012] Figure 6 is a block diagram illustrating an example access point;
[0013] Figure 7 is a block diagram illustrating an example position-location application;
[0014] Figure 8 is a flow diagram illustrating an example method for obtaining position and location information from a wireless communication device; [0015] Figure 9 is a flow diagram illustrating an example method for providing position and location information to a server; and
[0016] Figure 10 is a block diagram illustrating an exemplary computer system that may be used in connection with the various embodiments described herein.
Detailed Description
[0017] Certain embodiments provide for wireless communication systems and methods for requesting and receiving position and location information from a wireless communication device in communication with a server via a wireless communication network. For example, one method allows for a server to compose a request in a universal format for transfer to a wireless communication device over any of several wireless communication networks. The wireless communication device obtains requested information about its position and location in response to the request and provides that information to the requesting server. >
[0018] With reference first to Fig. 1, a data communication network includes a wireless communication device 10 in communication with a server computer 20 (herein referred simply as a "server") over a wireless communication network 30. The wireless communication device 10 (sometimes referred to as a "wireless device" or a "handset") has an associated data storage area 12. Similarly, the server 20 has an associated data storage area 22. Finally, an access point 50, with an associated data storage area 52, is in communication n with the wireless communication device 10 and the server 20 via a public network 40 and the wireless communication network 30.
[0019] In alternative embodiments (not shown), the access point 50 may in communication with the server 20 directly via the public network 40. Also, the access point 50 may be indirectly coupled with the wireless communication device 10, requiring a communication bridge, such as the server 20, to facilitate communications between the access point 50 and the wireless communication device 10.
[0020] The wireless communication device 10 may be a digital cellular telephone, personal digital assistant ("PDA"), laptop computer, or any other type of device with the ability to establish a data communication link over the wireless communication network 30. Establishing and maintaining data communications over a wireless communication network is well known and not described in detail herein. As will be understood, the wireless communication device 10 is a network device having the ability to perform data communications over the wireless communication network 30.
[0021] The data storage areas 12, 22, and 52 provide computer readable media for storing executable instructions and data for program execution on the wireless communication device 10, the server 20, or the access point 50. The data storage areas 12, 22, and 52 can be any of a variety of data storage devices, either integral, external, or removable, as described more fully below with reference to Fig. 10. The executable instructions stored in the data storage area 12, when executed, preferably enable the wireless communication device 10 to perform the various features and functions described herein.
[0022] The server computer 20 can be a general-purpose digital computer, with one or more processors, as described more fully below with reference to Fig. 10. The server computer 20 is preferably able to communicate with wireless communication device 10 over the wireless communication network 30. Additionally, the server 20 may be directly or indirectly connected to public network 40, for example, via the Internet.
[0023] The access point 50 can be a general-purpose digital computer, or other type device that is capable of data communications over the public network 40. For example, the access point 50 can be a personal computer (PC), PDA, laptop, or a tablet PC, or the like. Although not illustrated, the access point 50 may also be a wireless communication device directly or indirectly connected to the wireless communication network 30. For example, the access point 50 may be connected to a separate wireless communication network (not shown) that is in communication with the wireless communication network 30 through the public network 40, or some other network or combination of networks. The public network 40 can be a local area network (LAN), wide area network (WAN), or some combination of networks, including, for example, the ubiquitous Internet.
[0024] With reference additionally now to Fig. 2, the wireless communication device 10 has a number of components, including a request manager 100, a location module 110, an altitude module 120, an orientation module 130, a velocity module 140, an estimator 150, and an error handler 160. The wireless communication device 10 need not be modularized as shown. The various functional components could alternatively be integrated into a single module or some subset of modules. For ease of explanation, the embodiment illustrated presents the various components separately. The wireless communication device 10 also has a data storage area 12 and an antenna 14. The various components preferably work collectively to receive position-location requests via a wireless communication network and respond to those requests via the same communication channel.
[0025] The request manager 100 preferably controls the overall process for receiving position-location requests and responding to such requests. In operation, the request manager 100 receives a position-location request, parses the request, and sends corresponding queries to the various other components to gather the information needed to respond to the request. Once the various components have provided their responses, the request manager 100 composes a response to the request and sends that response to the requesting server 20 or other requesting entity.
[0026] For example, upon receiving a position-location request, the request manager 100 may parse the request to determine what position-location information is being requested. For instance, a position-location request may seek information that includes the location, in GPS or latitude-longitude format, the altitude, the velocity, and the orientation of the wireless communication device 10. After determining what information the position-location request is seeking, the request manager 100 may then request that information from the various components of the wireless communications device 10.
[0027] The location module 110 serves to receive and respond to queries from the request manager 100, and operates to obtain the location of the wireless communication device 10 in a desired format. For example, the location module may obtain the location of the wireless communication device 10 in a GPS format, a latitude and longitude format, or the like. In one embodiment, the location module 100 may obtain the location of the wireless communication device 10 in a GPS format and then convert it to a latitude and longitude format. In such conversion, the location module 110 may consult a remote server via the wireless communication network. [0028] The altitude module 120 receives and responds to queries from the request manager 100, and operates to obtain the altitude of the wireless communication device 10. The altitude may be acquired from an integral altimeter or by a table lookup or conversion of the GPS or latitude and longitude coordinates. For example, once the GPS coordinates for the wireless communication device 10 are known, the altitude module may query a remote server via the wireless communication network in order to determine the altitude for the wireless communication device 10. The remote server may find the GPS location for the wireless communication device 10 on a topological map to determine the altitude. In such an embodiment, of course, the altitude would necessarily assume that the wireless communication device 10 was on or near the ground. To determine the altitude for a wireless communication device 110 that was above or below the ground, for example in an airplane or submarine, an integral altimeter is preferable.
[0029] The orientation module 130 also receives and responds to queries from the request manager 100 and operates to determine the orientation or direction of the wireless communication device 10. The orientation may be acquired from an integral compass or by a local or remote calculation of the heading based on location information. For example, the wireless communication device 10 may obtain a first position and then, after a certain period, obtain a second position. Additional positions may also be obtained to increase accuracy. These two positions may then be plotted on a map to determine the orientation or heading of the wireless communication device 10. Calculating the orientation from the two or more positions obtained by the wireless communication device 10 can be carried out locally or the positions can be sent to a remote server for calculation, with the orientation information being sent back to the wireless communication device 10. Alternatively, the wireless communication device 10 may periodically obtain its position and store the position information so that an orientation or direction, over time, can be provided.
[0030] The velocity module 140 is configured to receive and respond to queries from the request manager 100, and operates to determine the speed of the wireless communication device 10. Preferably, the velocity module 140 determines the velocity by obtaining two or more locations for the wireless communication device 10 and a corresponding timestamp for each position. Using the location information, the wireless communication device 10 can calculate the distance between the two or more locations and then determine the velocity required for the wireless communication device 10 to travel that distance during the time between the corresponding timestamps. Determining the velocity can provide other useful information, such as whether the wireless communication device 10 is accelerating or decelerating. The calculation to determine the velocity of the wireless communication device 10 can be carried out locally by the wireless communication device 10 or remotely by a server in communication with the wireless communication device 10 via a wireless communication network. Other ways of determining velocity may be used, as well, such as, for example, integrating data from an accelerometer.
[0031] The estimator 150 estimates the accuracy of the various measurements made by the wireless communication device 10, or made by a remote server on behalf of the wireless communication device 10. Preferably, the estimator 150 has access to various metrics and data, for example, stored in the data storage area 12, that allow the accuracy of a particular measurement to be estimated. For instance, the accuracy of the velocity of the wireless communication device 10 may increase with the number of locations obtained and used to determine the velocity. Similarly, the accuracy of the location may vary based on the velocity of the wireless communication device 10.
[0032] The error handler 160 processes errors that result from any of the various components or from the position-location request. For example, if the wireless communication device 10 were unable to determine its location due to electrical interference or lack of GPS satellite coverage, the error handler 160 can determine that the location is unavailable and provide the request manager 100 with an appropriate error message. The error messages corresponding to the various potential errors that may occur may be represented by error codes in the data storage area 12. Thus, if an error is reported by the wireless communication device 10 in the position-location response, only an error code is provided to decrease the overall size of the response and increase the efficiency of data communications over the wireless communication network.
[0033] With reference now additionally to Fig. 3, a data storage area 12 is shown as a database with corresponding database management utilities. Alternatively, the data storage area can be implemented as a file system, registers in memory, or other form of digitally stored data. The data storage area 12 may include executable functions that can be utilized by the wireless communication device 10; for example, certain executable functions that may be included in the data storage area 12 include location, altitude, orientation, velocity, estimation, and error processing, or the like.
[0034] Additionally, the metrics referred to above that are used by the estimator may be stored in the data storage area 12. (The metrics may also be stored remotely.). Additional data that can be stored in the data storage area 12 includes error codes, function codes, and historical data, such as previous positions, altitudes, orientations, and velocities. Other types of information useful in responding to position-location requests may also be stored in the data storage area 12.
[0035] With reference now additionally to Fig. 4 the server 20 comprises a position- location manager 200, a request builder 210, a protocol handler 220, a public request handler 230, and a response handler 240. The server 20 also has a data storage area 22. The various components preferably work collectively to compose and send position- location requests via a wireless communication network and receive, via the same communication channel, and process position-location responses.
[0036] The position-location manager 200 controls the overall process for composing position-location requests and receiving and processing position-location responses. For example, the position-location manager 200 may compose a position-location request, addresses the request, and send the request to a particular wireless communication device via a wireless communication network. .
[0037] The server 20 may be tasked with tracking a particular wireless communication device, for example, in a search and rescue mission, in a stolen vehicle recovery operation, or the like. In performing this tracking function, the server 20 may periodically compose and send a position-location request to the wireless communication device 10. The position-location request may request various types of information from the wireless communication device 10, including its location, altitude, orientation, and velocity, as well as an estimation of the accuracy of the requested information. Upon receiving a response to the position-location request, the position- location manager 200 may parse the response to obtain the requested information and then store that information in data storage area 22. Additionally, the information may be provided, for example, to an operator or application.
[0038] The position-location system need not be modularized as shown in the illustrated embodiment. The various functional components can also be integrated into a single module or some subset of modules. For ease of explanation, the illustrated embodiment presents the various components separately.
[0039] The request builder 210 composes a position-location request. The position- location requests may ask for various types of information, such as a location request, a location and velocity request, a location and velocity and orientation request, a location and velocity and orientation and altitude request, and so on. Additional information and additional combinations of information may also be employed to construct a significant number of discrete requests seeking a variety of different information from the wireless communication device 10.
[0040] The request builder 210 may compose the position-location request in a mark-up style language that facilitates transmission over a variety of underlying transport layers. For example, the request builder 210 can compose the position-location request in the extensible markup language (XML).
[0041] The protocol handler 220 formats the position-location request for transmission over the particular underlying transport layer. For example, the protocol handler 220 may format a position-location request that was created in XML for transmission as part of a short message service (SMS) message. Alternatively, the protocol handler 220 may format a position-location request that was created in XML for transmission over a wireless communication network employing the TCP/IP protocol. The use of a mark up style language such as XML in the creation of the position-location request facilitates transmission using any of a variety of transport mechanisms including SMS, TCP/IP, and others.
[0042] The public request handler 230 receives and processes externally generated inquiries for position-location information for a specific wireless communication device. For example, an access point outside of the wireless communication network or a wireless communication device within the wireless communication network may send a inquiry to the server 20 requesting position-location information for a specifically identified wireless communication device. The inquiry may include the mobile identification number (MIN) for the particular wireless communication device. Additionally, the inquiry may include the system identification number (SID) for the wireless device. This may be advantageous, for example, when the server 20 has access to wireless devices on more than one carrier network.
[0043] Additionally, the inquiry may include a list of the detailed position-location information that is being requested. For example, the inquiry may indicate that the location, velocity, altitude, and orientation of the wireless device are desired. The inquiry may be received by the public request handler 240 in an acceptable XML format. Alternatively, the inquiry may be received in a different format and the public request handler 240 can route the inquiry to the position-location manager 200 for processing or the public request handler 240 can route the inquiry directly to the request builder 210 for proper formatting.
[0044] The public request handler 240 may also validate the inquiry to confirm that the inquiry is requesting available information and to confirm that the inquiry is properly formatted. For example, the validation process may signal the public request handler 240 to route the inquiry directly to the request builder 210 for reformatting. Alternatively, the validation process may confirm that the requesting device is authorized to obtain position-location information for the particular wireless communication device identified in the inquiry. Authorization, for example, may require a usemame and password combination or may require that the MID/SDD combination of the requesting device be listed as an authorized device on the server 20.
[0045] When the server 20 receives a response to a position-location request corresponding to a remote inquiry, the public request handler 240 routes the response back to the remote device that made the inquiry. For example, the public request handler 240 may review the response to be sent to the requesting device to confirm that no information is provided to the requesting device that is not pre-authorized. For instance, a particular MID/SID that identifies a requesting device may be restricted to obtaining only the velocity and orientation of the wireless communication device. Thus, the public request handler 240 would remove any information related to the location or altitude of the wireless communication device prior to sending the response to the requesting device.
[0046] The response handler 240 is configured to receive position-location responses from a wireless communication device and process those responses. Thus, the response handler 240 receives a position-location response and parses the response to obtain the position-location information. The response handler 240 then stores the position- location information in data storage area 22. If the position-location response corresponds to a remote request, then the response handler 240 sends the position- location response to the public request handler 240 for further processing.
[0047] The response handler 240 may maintain a historical database of position- location information for a plurality of wireless communication devices. This information can be used to generate reports, forecast locations, travel times, and predict patterns. If a wireless communication device deviates from the normal pattern, a message can be sent if desired to notify the owner of the device. For example, such a notice may alert the owner to misuse or theft of the particular wireless communication device.
[0048] With reference additionally now to Fig. 5, the data storage area 22 is shown as a database with the corresponding database management utilities. Alternatively, the data storage area can be implemented as a file system, registers in memory, or other manifestation of digitally stored data. The data storage area 22 includes executable functions that can be utilized by the server 20 to carry out the methods herein. For example, certain executable functions that may be included in the data storage area 22 include track location, predict location, build request, validate request, track altitude, track orientation, track velocity, and report errors, or the like.
[0049] Data, such as the historical data referred to above that are used by the response handler, may also be stored in the data storage area 22. Other examples of data that can be stored in the data storage area 22 include error codes and function codes. Communications with the wireless communication device may also employ codes to identify particular error conditions and functions to perform in order to make the data communications more efficient, that is, to reduce the byte size of the transmission). Other types of information useful in composing position-location requests and receiving position-location responses can also be stored in the data storage area 22.
[0050] With reference now additionally to Fig. 6, the access point 50 can be a wireless communication device in communication with the server 20 via a wireless communication network, a public network, such as the Internet, or both. The access point 50 is associated with a data storage area 52. The access point 50 is configured also to execute a position-location application 300. The position-location application 300 provides the ability for the access point 50 to construct a position-location inquiry that may or may not be in the format of a position-location request. The position-location application 300 composes the position-location inquiry and the access point 50 sends the position-location inquiry to the server 20, receives a response to the position- location inquiry, and provides that information to the user of the access point 50. The information from the position-location response can be stored in the data storage area 52.
[0051] With reference additionally now to Fig. 7, the position-location application 300 includes an inquiry builder 310, a response handler 320, and a communication manager 330. The inquiry builder 310 serves to compose a position-location inquiry, which may or may not be in the format of a position-location request. For example, the inquiry, may include additional information and may be compressed or otherwise formatted for optimal transmission from the access point to the server 20.
[0052] The inquiry may include the position-location information sought in addition to authentication information, such as a user name and password combination. The inquiry also may include a unique identifier for the wireless communication device from which the position and location information is sought. For example, the inquiry may comprise the MID/SID for the target wireless communication device, and the MID/SID, Ethernet address, or MAC address of the requesting device, as well as a usemame and password combination, and a listing of information requested including location, velocity, altitude, and orientation.
[0053] The response handler 320 receives responses from the server 20 and provides the information in the response to the user. The response handler 320 may store the information in the data storage area 52. The response handler 320 can also report any error messages. For example, if response may include a particular error code, the response handler 320 can obtain the error message text from the data storage area 52 that corresponds to that particular error code. The error message text can then be provided to the user of the access point.
[0054] The communication manager 330 sends position-location inquiries to the server 20 and receives corresponding responses from the server 20. The communication manager 330 dynamically obtains the network address for the server 20, so that upon power up of the access point, the communication manager 330 can perform its function. For example, the network address for the server 20 may be stored in data storage area 52. Upon power up of the access point, the communication manager 330 may obtain the network address from the data storage area, and send a status message to the server 20. If the server 20 does not respond for any reason (e.g., it is off-line) then the communication manager may dynamically query the network for the address of the current server and update the data storage area with the new address information.
[0055] With reference additionally now to Fig. 8, initially, in step 400 the server 20 builds the position-location request. The position-location request includes a unique identifier for the particular wireless communication device to which it is targeted. Additionally, the position-location request can include a variety of elements that identify the information being sought.
[0056] For example, the position-location request can identify elements including the location in GPS format, latitude and longitude coordinate format, or both, the velocity, the altitude, and the orientation of the wireless communication device. These elements can be identified by codes in order to reduce the size of the transmission. The request may also include additional information; for example, the request may be piggy backed on an SMS message that contains other data or information.
[0057] The position-location request is composed in a format that facilitates transmission over a variety of underlying transport protocols and mechanisms. For example, the position-location request can be composed in XML, which allows for efficient transmission as part of an SMS message or via a TCP/IP data communication session. [0058] Once the position-location request has been composed, the request is sent to the wireless communication device, as illustrated in step 402. The request may be sent as a data communication over a packet switched TCP/IP connection, or, alternatively, as part of an SMS message sent over a dedicated circuit connection. The position-location request is addressed to the MID/SID that uniquely identifies a particular wireless communication device. If desired, the position-location request can be compressed to facilitate more efficient use of the bandwidth in the wireless communication network.
[0059] After sending the position-location request, the server 20 next receives a position-location response from the wireless communication device. The position- location response preferably includes information pertaining to each element that was identified in the position-location request. For example, if the request included the velocity element, the response preferably includes velocity information for the wireless device. If velocity information is not available, the response may include an error message or error code that identifies why the velocity information was not available.
[0060] Upon receiving the position-location response, the server 20 may parse the response to obtain the various elements of information. This information may then be provided downstream to a remote requesting entity or stored in a data storage area, as shown in step 406, or both. For example, if the request was originated by a remote device, then the response can be reformatted and stripped down to exclude any unauthorized information and sent to the remote device. Alternatively, or in combination, the information can be populated into a database that allows the server 20 to later provide tracking information corresponding to the wireless device. For example, the server 20 could provide a map of the various locations for the wireless device over time. Additionally, the server 20 could provide a history of tracking information including the location, altitude, velocity, and orientation for the wireless device.
[0061] In Fig. 9, to which reference is now additionally made, initially, in step 500 the wireless device receives a position-location request from the server 20. The position- location request may be received over a wireless communication network as a data communication over a packet switched TCP/IP connection, or as part of an SMS message over a dedicated circuit connection. [0062] Upon receiving the position-location request in step 500, the wireless device parses the request in step 502 to determine the particular elements or parameters that are being requested. For example, the request may seek information related to the location, velocity, altitude, orientation of the wireless device, or like information. After the requested position-location elements have been determined, the wireless device next gets the location information, in step 504.
[0063] The wireless device may have a plurality of discrete functions, with a single function or combination of functions employed for each element of information. For example, the wireless device may have a GPS location function that determines the location of the device. Correspondingly, the device may have a latitude-longitude function that converts the GPS location information into latitude and longitude coordinates. Additionally, the conversion function may contact a remote server via the wireless communication network in order to obtain the latitude and longitude coordinates. The wireless device may obtain the requested information in an efficient manner so that position-location elements that depend on data from another position- location element are determined downstream.
[0064] An example of such an efficient operation occurs when the position-location request is seeking the location and altitude of the wireless device. When the wireless device is not equipped with an integral altimeter, the device must provide its location to a remote server to obtain its altitude, or, alternatively, use its location as the index to an altitude lookup table stored in a local data storage area. Thus, the most efficient mode of operation is to obtain the location information first, then use the location information when obtaining the altitude information. Alternatively, the wireless device may eliminate unnecessary steps by engaging its altitude function, then using the location information necessarily obtained to respond to the position-location request. Various other methods of efficient operation by the wireless device may also be used.
[0065] Once the requested position-location information has been obtained, the wireless device next estimates the accuracy of each element of the information in step 506. For example, the calculated altitude of the wireless device may vary in accuracy based on the terrain and whether the wireless device is moving. Similarly, when the wireless device is moving, any location information is subject to varying degrees of accuracy, depending upon the speed of the wireless device.
[0066] In step 508, any errors are identified. For example, in certain instances, the wireless device may not be able to obtain some or all of the requested position-location information. In such case, the wireless device may provide an error code that identifies the error. Trouble shooting information may also be provided, where possible. The wireless device may also provide an error code that indicates that a remote server was unavailable. Such error may be received, for example, if a remote server for calculating altitude based on GPS position is been off-line or otherwise not responding. The error code may also indicate more granular information, such as whether there was any response at all from the altitude server or the type of error message provided by the altitude server.
[0067] Once the position-location information has been obtained, the accuracy of the information has been estimated, and any error messages have been determined, the wireless device composes a position-location response in step 510. The position- location response should include all of the position-location information, the accuracy estimates, and any error codes, for example, in XML mark-up language. Use of such a mark-up language facilitates transmission of the position-location response over a variety of communication protocols, including data communications over a packet switched TCP/IP connection and SMS messages over a circuit switched connection.
[0068] After the position-location response has been composed, the wireless device sends the response to the server, in step 512. The position-location response may be compressed prior to transmission to the server over the wireless communication network. As mentioned, the position-location response may be sent using a variety of communication means, including communications over a packet switched TCP/IP connection, SMS messages over a circuit switched connection, or the like.
[0069] In Fig. 10, to which reference is now additionally made, the computer system 550 may be used in conjunction with a position-location server or an external access point. Similarly, many of the general computing system platform aspects of the computer system 550 may be used in conjunction with a wireless communication device. For example, the microprocessor(s), data storage area(s), computer readable media, and communication interface(s) may be applicable to the general-purpose computing aspects of a wireless communication device. Furthermore, other computer systems and/or architectures may be used.
[0070] The computer system 550 includes one or more processors, such as processor 552. Additional processors may be provided. For example, an auxiliary processor may be provided to manage input/output. The auxiliary processor may also perform floating point mathematical operations. A special-purpose microprocessor having an architecture suitable for fast execution of signal processing algorithms (e.g., digital signal processor) may also be used. A slave processor subordinate to the main processing system (e.g., back-end processor) may be provided. An additional microprocessor or controller for dual or multiple processor systems, or a coprocessor may also be used. Such auxiliary processors may be discrete processors or may be integrated with the processor 552.
[0071] The processor 552 is connected to a communication bus 554. The communication bus 554 may include a data channel to facilitate information transfer between storage and other peripheral components of the computer system 550. The communication bus 554 further may provide a set of signals used for communication with the processor 552, including a data bus, address bus, and control bus (not shown). The communication bus 554 may comprise any standard or non-standard bus architecture. Examples of bus architectures include, for example, bus architectures compliant with industry standard architecture ("ISA"), extended industry standard architecture ("EISA"), Micro Channel Architecture ("MCA"), peripheral component interconnect ("PCI") local bus, or standards promulgated by the Institute of Electrical and Electronics Engineers ("IEEE") including IEEE 488 general-purpose interface bus ("GPIB"), IEEE 696/S-100, and the like.
[0072] Computer system 550 preferably includes a main memory 556, and may also include a secondary memory 558. The main memory 556 provides storage of instructions and data for programs executing on the processor 552. The main memory 556 is typically semiconductor-based memory such as dynamic random access memory ("DRAM") and/or static random access memory ("SRAM"). Other semiconductor- based memory types include, for example, synchronous dynamic random access memory ("SDRAM"), Rambus dynamic random access memory ("RDRAM"), ferroelectric random access memory ("FRAM"), and the like, including read only memory ("ROM").
[0073] The secondary memory 558 may optionally include a hard disk drive 560 and/or a removable storage drive 562, for example a floppy disk drive, a magnetic tape drive, a compact disc ("CD") drive, a digital versatile disc ("DVD") drive, etc. The removable storage drive 562 reads from and/or writes to a removable storage medium 564 in a well-known manner. Removable storage medium 564 may be, for example, a floppy disk, magnetic tape, CD, DVD, etc.
[0074] The removable storage medium 564 may be a computer readable medium having stored thereon computer executable code, or software, and/or data. The computer software or data stored on the removable storage medium 564 is read into the computer system 550 as electrical communication signals 578.
[0075] In alternative embodiments, secondary memory 558 may include other similar ways for allowing computer programs or other data or instructions to be loaded into the computer system 550. Such ways may include, for example, an external storage medium 572 and an interface 570. Examples of external storage medium 572 include an external hard disk drive, an external optical drive, an external magneto-optical drive, or the like.
[0076] Other examples of secondary memory 558 include semiconductor-based memory, such as programmable read-only memory ("PROM"), erasable programmable read-only memory ("EPROM"), electrically erasable read-only memory ("EEPROM"), or flash memory (block oriented memory similar to EEPROM), or the like. Also included are any other removable storage units 572 and interfaces 570, which allow software and data to be transferred from the removable storage unit 572 to the computer system 550.
[0077] Computer system 550 may also include a communication interface 574. The communication interface 574 allows software and data to be transferred between computer system 550 and external devices (e.g. printers), networks, or information sources. For example, computer software or executable code may be transferred to computer system 550 from a network server via communication interface 574. Examples of communication interface 574 include a modem, a network interface card ("NIC"), a communications port, a PCMCIA slot and card, an infrared interface, and an IEEE 1394 fire-wire, just to name a few.
[0078] Communication interface 574 preferably implements industry promulgated protocol standards, such as Ethernet IEEE 802 standards, Fiber Channel, digital subscriber line ("DSL"), asynchronous digital subscriber line ("ADSL"), frame relay, asynchronous transfer mode ("ATM"), integrated digital services network ("ISDN"), personal communications services ("PCS"), transmission control protocol/Internet protocol ("TCP/IP"), serial line Internet protocol/point to point protocol ("SLIP/PPP"), and so on, but may also implement customized or non-standard interface protocols as well.
[0079] Software and data transferred via communication interface 574 are generally in the form of electrical communication signals 578. These signals 578 are provided to communication interface 574 via a communication channel 576. Communication channel 576 carries signals 578 and can be implemented using a variety of communication means including wire or cable, fiber optics, conventional phone line, cellular phone link, radio frequency (RF) link, or infrared link, just to name a few.
[0080] Computer executable code (i.e., computer programs or software) is stored in the main memory 556 and/or the secondary memory 558. Computer programs can also be received via communication interface 574 and stored in the main memory 556 and/or the secondary memory 558. Such computer programs, when executed, enable the computer system 550 to perform the various functions of the present invention as previously described.
[0081] In this description, the term "computer readable medium" is used to refer to any media used to provide computer executable code (e.g., software and computer programs) to the computer system 550. Examples of these media include main memory 556, secondary memory 558 (including hard disk drive 560, removable storage medium 564, and external storage medium 572), and any peripheral device in communication with communication interface 574 (including a network information server or other network device). These computer readable mediums are means for providing executable code, programming instructions, and software to the computer system 550. [0082] In an embodiment that is implemented using software, the software may be stored on a computer readable medium and loaded into computer system 550 by way of removable storage drive 562, interface 570, or communication interface 574. In such an embodiment, the software is loaded into the computer system 550 in the form of electrical communication signals 578. The software, when executed by the processor 552, preferably causes the processor 552 to perform the inventive features and functions previously described herein.
[0083] Various embodiments may also be implemented primarily in hardware using, for example, components such as application specific integrated circuits ("ASICs"), or field programmable gate arrays ("FPGAs"). Implementation of a hardware state machine capable of performing the functions described herein will also be apparent to those skilled in the relevant art. Various embodiments may also be implemented using a combination of both hardware and software.

Claims

WHAT IS CLAIMED IS:
1. A system, comprising: a wireless communication network; a position-location server to create a position-location request, requesting at least one of an altitude, a velocity, an orientation, an error estimate indicating an accuracy of the information reported, and an error code indicating a reason that requested information could not be reported; and a wireless communication device in communication with the position-location server via the wireless communication network to receive the position-location request and report said requested position-location information in response thereto.
2. The wireless communication system of claim 1 wherein the reported position-location information comprises GPS coordinates.
3. The wireless communication system of claim 1 wherein the reported position-location information comprises latitude and longitude coordinates.
4. The wireless communication system of claim 1 wherein the position-location request is received as an SMS message.
5. The wireless communication system of claim 1 wherein the position-location request is composed in an extensible markup language.
6. A system comprising: a position-location server; a wireless communication network; a wireless communication device in communication with said server via said wireless communication network, including an execution area to receive and respond to a position-location request for at least an altitude, a velocity, an orientation, an error estimate indicating an accuracy of the information reported, and an error code indicating a reason that requested information could not be reported.
7. The wireless communication device of claim 6 wherein the reported position-location information comprises GPS coordinates.
8. The wireless communication device of claim 6 wherein the reported position-location information comprises latitude and longitude coordinates.
9. The wireless communication device of claim 6 wherein the position-location request is received as an SMS message.
10. The wireless communication device of claim 6 wherein the position-location request is composed in the extensible markup language.
11. The wireless communication device of claim 6 wherein the position-location report is sent as an SMS message.
12. The wireless communication device of claim 6 wherein the position-location report is composed in an extensible markup language.
13. A method for operating a wireless communication device comprising: receiving a request for position-location information, including a request for at least one of an altitude, a velocity, an orientation, an error estimate indicating an accuracy of the information reported, and an error code indicating a reason that requested information could not be reported; and responding to the request with the requested position-location information.
14. The method of claim 13 wherein the position-location information comprises GPS coordinates.
15. The method of claim 13 wherein the position-location information comprises latitude and longitude coordinates.
16. The method of claim 13 wherein the composing step comprises composing the position-location request in an extensible markup language.
17. The method of claim 16 wherein the sending step comprises sending the position- location request as an SMS message.
18. The method of claim 13 wherein the receiving step comprises receiving the position- location response as an SMS message.
19. The method of claim 18 wherein the position-location response is composed in an extensible markup language.
20. A method comprising: receiving a position-location request via a wireless communication network from a position-location server, the request containing a location request, an altitude request, a velocity request, and an orientation request; obtaining a location for the wireless communication device; obtaining an altitude for the wireless communication device; obtaining a velocity for the wireless communication device; obtaining an orientation for the wireless communication device; composing a position-location response including the location, altitude, velocity, and orientation of the wireless communication device; and sending the position-location response to the position-location server via the wireless communication network.
21. The method of claim 20 where in the position-location information comprises GPS coordinates.
22. The method of claim 20 wherein the position-location information comprises latitude and longitude coordinates.
23. The method of claim 20 wherein the receiving comprises receiving the position- location request as an SMS message.
24. The method of claim 23 wherein the position-location request is composed in an extensible markup language.
25. The method of claim 20 wherein the composing comprises composing the position- location response in an extensible markup language.
26. The method of claim 25 wherein the sending comprises sending the position- location response as an SMS message.
27. A computer readable medium having stored thereon instructions for causing a computer to obtain position-location information comprising: building a position-location request comprising a location request that contains a request for at least one of an altitude, a velocity, an orientation, an error estimate indicating an accuracy of the information reported, and an error code indicating a reason that requested information could not be reported; sending the position-location request to a wireless communication device via a wireless communication network; and receiving a response to the request.
28. The computer readable medium of claim 27 wherein the position-location information comprises GPS coordinates.
29. The computer readable medium of claim 27 wherein the position-location information comprises latitude and longitude coordinates.
30. The computer readable medium of claim 27 wherein the building comprises composing the position-location request in an extensible markup language.
31. The computer readable medium of claim 30 wherein the sending comprises sending the position-location request as an SMS message.
32. The computer readable medium of claim 27 wherein the receiving comprises receiving the position-location response as an SMS message.
33. The computer readable medium of claim 32 wherein the response is composed in an extensible markup language.
34. A computer readable medium having stored a sequence of instructions for execution by a computer for providing position-location information from a wireless communication device, the instructions effecting the steps comprising: receiving a position-location request via a wireless communication network from a position-location server, the request containing a location request, an altitude request, a velocity request, and an orientation request; obtaining a location for the wireless communication device; obtaining an altitude for the wireless communication device; obtaining a velocity for the wireless communication device; obtaining an orientation for the wireless communication device; building a position-location response comprising the location, altitude, velocity, and orientation of the wireless communication device; and sending the position-location response to the position-location server.
35. The computer readable medium of claim 34 where in the position-location information comprises GPS coordinates.
36. The computer readable medium of claim 34 wherein the position-location information comprises latitude and longitude coordinates.
37. The computer readable medium of claim 34 wherein the receiving comprises receiving the position-location request as an SMS message.
38. The computer readable medium of claim 37 wherein the position-location request is composed in an extensible markup language.
39. The computer readable medium of claim 34 wherein the composing comprises composing the position-location response in the extensible markup language.
40. The computer readable medium of claim 39 wherein said sending comprises sending the position-location response as an SMS message.
EP04752263A 2003-05-15 2004-05-14 BIDIRECTIONAL TWO-WAY POSITION LOCATION SMS / XML API SMS / XML POSITION LOCATION API Withdrawn EP1623585A4 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US47144203P 2003-05-15 2003-05-15
PCT/US2004/015203 WO2004105295A2 (en) 2003-05-15 2004-05-14 Two-way sms/xml position location api

Publications (2)

Publication Number Publication Date
EP1623585A2 true EP1623585A2 (en) 2006-02-08
EP1623585A4 EP1623585A4 (en) 2011-02-16

Family

ID=33476846

Family Applications (1)

Application Number Title Priority Date Filing Date
EP04752263A Withdrawn EP1623585A4 (en) 2003-05-15 2004-05-14 BIDIRECTIONAL TWO-WAY POSITION LOCATION SMS / XML API SMS / XML POSITION LOCATION API

Country Status (7)

Country Link
EP (1) EP1623585A4 (en)
JP (1) JP2007503792A (en)
KR (1) KR20060009004A (en)
CN (1) CN1788505A (en)
BR (1) BRPI0410275A (en)
MX (1) MXPA05012256A (en)
WO (1) WO2004105295A2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8509822B1 (en) 2007-01-19 2013-08-13 Sprint Spectrum L.P. Highly scalable, lower precision idle mode locating method for wireless devices
US8073590B1 (en) 2008-08-22 2011-12-06 Boadin Technology, LLC System, method, and computer program product for utilizing a communication channel of a mobile device by a vehicular assembly

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2868417B2 (en) * 1994-10-13 1999-03-10 レーム プロパティズ ビーブイ Daily report creation device, transportation expense report creation device, daily report creation method, and transportation expense report creation method
US7366522B2 (en) * 2000-02-28 2008-04-29 Thomas C Douglass Method and system for location tracking
FI112433B (en) * 2000-02-29 2003-11-28 Nokia Corp Location-related services
JP2002040129A (en) * 2000-07-26 2002-02-06 Sony Corp Positioning method, positioning device, and navigation device
US6374179B1 (en) * 2000-08-11 2002-04-16 Motorola, Inc. Method and system for distributing position information
JP2002196063A (en) * 2000-12-25 2002-07-10 Matsushita Electric Works Ltd Position detector using gps and network assist-ready gps position detecting system using it
US6433735B1 (en) * 2000-12-26 2002-08-13 Telefonaktiebolaget (Lme) Mobile terminal and system and method for determining the geographic location of a mobile terminal

Also Published As

Publication number Publication date
MXPA05012256A (en) 2006-02-10
EP1623585A4 (en) 2011-02-16
WO2004105295A3 (en) 2005-02-10
WO2004105295A2 (en) 2004-12-02
JP2007503792A (en) 2007-02-22
CN1788505A (en) 2006-06-14
KR20060009004A (en) 2006-01-27
BRPI0410275A (en) 2006-05-16

Similar Documents

Publication Publication Date Title
US7388491B2 (en) Mobile RFID reader with integrated location awareness for material tracking and management
US6757545B2 (en) Location information management system and method for mobile communications unit
EP2270534B1 (en) Method and device for position determination
JP4330628B2 (en) Apparatus and associated method for facilitating mobile station location determination according to location-based applications
JP5260288B2 (en) Method for detecting the physical location of a mobile phone at a given time
CN102667519B (en) Concept for generating empirical messages for updating reference databases
JP2006508603A (en) Communication device having wireless LAN access point search function and method thereof
AU2001282157A1 (en) Method and device for position determination
US20090287415A1 (en) Systems, devices and methods for increasing location based service accuracy
EP3000262B1 (en) A method and apparatus for recording information from a plurality of mobile devices in an area
CN102448166A (en) Positioning method and system, and mobile terminal
WO2014067345A1 (en) Satellite positioning method, apparatus and system
KR100648269B1 (en) Positioning system and method of mobile communication terminal for positioning enhancement through self-learning algorithm
KR100451896B1 (en) A real-time traffic information process system and method
EP1623585A2 (en) Two-way sms/xml position location api
US8217837B2 (en) System and method for providing triggered location information
CN118301737A (en) Positioning model management method and communication device
CN102480676B (en) A kind of transmission method positioning information and system
CN118191886A (en) Vehicle positioning method, device, terminal equipment and storage medium
CN118377679A (en) Outdoor server, switch management method, device, equipment and storage medium thereof
HK1086430A (en) Two-way sms/xml position location api
JP5239608B2 (en) MOBILE BODY MONITORING DEVICE, MOBILE BODY MONITORING METHOD, MOBILE BODY MONITORING SYSTEM, AND COMPUTER PROGRAM
US20220264253A1 (en) Method and terminal for communicating an estimate of the location of at least one radio endpoint to a connected object
RU32653U1 (en) Mobile terminal
CN117319924A (en) Positioning method, positioning device, terminal equipment and storage medium

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20051028

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PL PT RO SE SI SK TR

DAX Request for extension of the european patent (deleted)
A4 Supplementary search report drawn up and despatched

Effective date: 20110118

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20110415