`(12) Patent Application Publication (10) Pub. No.: US 2005/0282557 A1
`(43) Pub. Date:
`Dec. 22, 2005
`Mikko et al.
`
`US 20050282557A1
`
`(54) SYSTEM AND METHOD FOR
`IMPLEMENTING AREMOTE LOCATION
`ACQUISITION APPLICATION PROGRAM
`INTERFACE
`(75) Inventors: Blomqvist Mikko, Tampere (FI); Petri
`Rauhala, Tampere (FI); Tommi Laine,
`Tempere (FI)
`Correspondence Address:
`FOLEY & LARDNER
`321 NORTH CLARK STREET
`SUTE 2800
`CHICAGO, IL 60610-4764 (US)
`(73) Assignee: Nokia Corporation, NOKIA GROUP
`(FI)
`(21) Appl. No.:
`(22) Filed:
`
`10/870,335
`Jun. 17, 2004
`Publication Classification
`
`(51) Int. Cl." ....................................................... H04Q 7/20
`
`
`
`(52) U.S. Cl. ................ 455/4.56.1; 455/456.2; 455/456.3
`
`(57)
`
`ABSTRACT
`
`An Application Program Interface (API) is defined at a
`requesting terminal. The API provides a common interface
`between an application program requesting a location for a
`target mobile terminal and a location Server at the requesting
`terminal. The location server may be integrated into the API
`or may be a separate entity. The application program execut
`ing on the requesting terminal sends a request through the
`API for the location of the target mobile terminal. Thus, the
`API hides the positioning technology details and complexi
`ties from the requesting application program. The API
`communicates with a location determining Source that deter
`mines the location of the target mobile terminal. The loca
`tion determining Source may be the target mobile terminal.
`Alternatively, the location determining Source may be a
`network location Server Such as a Gateway Mobile Location
`Center or Mobile Positioning Center.
`
`KNS
`
`e S2
`
`s
`
`s
`
`N
`
`Page 1 of 12
`
`SAMSUNG EX-1058
`
`
`
`Patent Application Publication Dec. 22, 2005 Sheet 1 of 4
`
`US 2005/0282557 A1
`
`
`
`4AX7
`
`CZZZZAX7
`
`Page 2 of 12
`
`
`
`Patent Application Publication Dec. 22, 2005 Sheet 2 of 4
`
`US 2005/0282557 A1
`
`
`
`
`
`>JOSSE OO?HoH
`
`Page 3 of 12
`
`
`
`Patent Application Publication Dec. 22, 2005 Sheet 3 of 4
`
`US 2005/0282557 A1
`
`
`
`3Z (JEAN-JES
`
`NO||L\/OOT
`
`Page 4 of 12
`
`
`
`Patent Application Publication Dec. 22, 2005 Sheet 4 of 4
`
`US 2005/0282557 A1
`
`
`
`Page 5 of 12
`
`
`
`US 2005/0282557 A1
`
`Dec. 22, 2005
`
`SYSTEMAND METHOD FOR IMPLEMENTING A
`REMOTE LOCATION ACQUISITION
`APPLICATION PROGRAM INTERFACE
`
`FIELD OF THE INVENTION
`0001. The present invention is related to software appli
`cations. More particularly, the present invention relates to an
`application program interface developed to provide an inter
`face for determining the location of devices.
`
`BACKGROUND OF THE INVENTION
`0002 An application program provides computing
`devices with the capability to perform a wide variety of tasks
`including drafting documents, communicating with others,
`preparing presentations, locating information, etc. An appli
`cation program is an organized list of instructions that, when
`executed, cause the computer to behave in a predetermined
`manner. Processing to prepare an application program for
`execution may include the use of an assembler, a compiler,
`an interpreter, or a translator depending on the implemen
`tation language.
`0003) An Application Program Interface (API) is a for
`malized set of Software calls and routines that can be
`referenced by an application program in order to access the
`Supporting System or network Services. The API is the
`Specific method prescribed by a computer operating System
`or by an application program by which a programmer in
`writing an application program makes requests of the oper
`ating System or of another application program. The API
`generally also receives requests from the operating System
`or another application program and routes these requests to
`the appropriate application program.
`0004. The operating system is the low-level software
`installed on a computer to handle the interface to peripheral
`hardware, to Schedule tasks, to allocate memory, and to
`present a default interface to the user when no application
`program is running. The kernel is the core part of the
`operating System that is responsible for resource allocation,
`for low-level hardware interfacing, for Security, etc. The
`operating System makes the resources available to applica
`tion programs using functions collectively known as the
`API. The functions are often grouped in terms of what
`resource or Service is provided to the application program
`mer. Thus, for example, an API may be directed to the
`computing Systems Security Services. For example, the Secu
`rity Services API provides application programmers with
`uniform access to Security Services atop a variety of under
`lying cryptographic mechanisms by providing a layer of
`abstraction over Security mechanisms that perform authen
`tication, message integrity protection, and message privacy
`protection.
`0005. Application programs request resources by calling
`individual API functions. API functions also serve as the
`means by which messages and information provided by the
`operating System are relayed back to the application pro
`gram. The API is defined at the source code level and
`provides a level of abstraction between the application
`program and the kernel or other application programs to
`ensure the portability of the code from one machine to
`another, and thus, provide platform independence. An API
`can also provide an interface between a high level language
`and lower level utilities and services that were written
`
`without consideration for the calling conventions Supported
`by the high level language. In this case, the API's main task
`may be the translation of parameter lists from one format to
`another and the interpretation of call-by-value and call-by
`reference arguments in one or both directions. The calling
`convention is the arrangement of arguments for a procedure
`or function call Such that the data transferred through the
`interface maps to the proper parameter. Different program
`ming languages may require arguments to be pushed onto a
`Stack or entered in registers in left-to-right or right-to left
`order, and either the caller or the callee may be responsible
`for removing the arguments from the Stack or register in the
`proper Sequence. The calling convention also determines if
`a variable number of arguments is allowed.
`0006 The API provides common functionality to satisfy
`Specific underlying needs. Use of an API reduces the pro
`gramming time and increases the reliability of application
`programs by providing a common interface to what may be
`an unknown operating System or application program to
`which the API interfaces. Thus, an API hides complexities
`from and provides portability and broader use of application
`programs acroSS different computing devices with different
`Software and hardware configurations.
`0007. Application programs have been developed that
`allow a request for the current location of a mobile terminal
`by another computing device. Application programs have
`also been developed that allow a mobile terminal to request
`its current location. These applications may, for example,
`request accurate, real-time positioning of the mobile termi
`nal itself in order to connect the terminal user to nearby
`points of interest, to advise them of current traffic or weather
`conditions, or to provide routing information. Additionally,
`applications related to fleet management Such as in the
`trucking, delivery, and taxi busineSS areas need to determine
`the location of multiple mobile terminals and provide this
`information to another computing device. Additionally,
`applications Supporting emergency Services have been
`developed that require a determination of a location for a
`mobile terminal.
`0008 Various methods have been developed for deter
`mining the location of the mobile terminal. For example,
`Some mobile terminals may include a Global Positioning
`System (GPS) as part of the device. The GPS uses satellites
`to triangulate to the location of the GPS. Alternatively, other
`methods utilize a ground based network of antennas or base
`stations to determine the mobile terminal location. For
`example, an application program might make a request to a
`wireless carrier network. The wireless carrier would then use
`one of Several methods to determine a user's location on the
`wireleSS network and return the latitude and longitude
`coordinates to the application program. One method
`involves identifying the cell or base Station closest to the
`mobile terminal. The antenna in communications with the
`mobile terminal may then be used to determine the relative
`direction of the mobile terminal. Using the round trip time,
`the distance from the base Station can be determined pro
`Viding an location with an accuracy approaching 100 meters.
`Another method using multiple base Stations may be used in
`Some circumstances. The location of the mobile terminal can
`be determined using typically three base Stations capable of
`communicating with the mobile terminal and triangulating
`the estimated location of the mobile terminal from each
`
`Page 6 of 12
`
`
`
`US 2005/0282557 A1
`
`Dec. 22, 2005
`
`individual base Station. More precise location estimates
`approaching 30 meters can be achieved using this method.
`0009. The location methods fall into three primary cat
`egories: network overlay, handset enhanced, and enhanced
`cell ID. The methods that a specific carrier implements
`depend on the level of accuracy required, the network
`technology, and the existing infrastructure. Newer networks
`and mobile terminals have capabilities that do not exist on
`legacy Systems. There are Several network based positioning
`technologies such as Time of Arrival (TOA) that provides
`triangulation of a mobile terminal's position based on the
`Speed at which a user is moving away from or toward
`various base Stations. This technology is primarily for legacy
`mobile terminal Support and provides accuracy within about
`300 meters. Other network based positioning technologies
`are the Enhanced Observed Time Difference (E-OTD) which
`requires additional mobile terminal capabilities (e.g., device
`processing) to locate a mobile terminal's position based on
`triangulation. E-OTD location methods provide accuracy
`within about 50 to 100 meters. Enhanced cell ID is another
`example of a network based positioning technology. It uses
`methods of enhancing current cell ID technologies to
`improve accuracy. These enhancements include Receiver
`cell signal (RX) strength. Enhanced cell ID methods provide
`accuracy within about 1000 meters. Network assisted posi
`tioning technologies include for example Network assisted
`GPS, where the network provides the terminal with assis
`tance data for the GPS which may be connected to the
`terminal or integrated with the terminal. For example, "time
`to first fix” and indoor coverage can be improved with the
`assistance data. A traditional GPS device provides an
`example of handset Stand-alone positioning technology
`where the traditional GPS has been enhanced with commu
`nication capabilities.
`0.010
`Wireless carriers implement and manage servers
`according to American National Standards Institute (ANSI),
`Global System for Mobile Communications (GSM), and
`Universal Mobile Telecommunications System (UMTS)
`Standards that are designed to calculate the location of
`mobiles terminals that are connected to the network. These
`Servers, commonly known as network location Servers, have
`different implementations depending on the wireleSS Stan
`dard. For GSM and UMTS, the network location server is
`known as the Gateway Mobile Location Center (GMLC),
`and, in ANSI standards, it is called the Mobile Positioning
`Center (MPC). Functionally, GMLC and MPC are the same.
`The network location server is the software platform that
`provides the location information by implementing the
`above-mentioned location determination methods. The net
`work location Servers determine a mobile terminal's location
`using Specific and often proprietary methods, and then
`communicate this information using different data protocols.
`Using enhanced handsets or GPS enabled handsets, the
`mobile terminal itself may provide the location information.
`0.011 The development of application programs that
`require location information is challenged by the disparate
`location technologies implemented by various wireleSS car
`riers, Service providers, and equipment vendors. In particu
`lar, the question of how wireleSS carriers and Service pro
`viders will implement and utilize their different location
`infrastructures results in many answers depending upon to
`whom the question is addressed. As a result, developers of
`these types of application programs must Support multiple,
`
`disparate location determination technologies, a wide vari
`ety of geo-Spatial and content implementations (for
`example, the coordinate System used and the accuracy of the
`calculation), and multiple data transport protocols.
`0012 What is needed is an API to hide the implementa
`tion details of the location determination technologies from
`an application program executing at a requesting mobile
`terminal that requests a location determination for a target
`mobile terminal. Further, there is a need for an API imple
`mented at the requesting mobile terminal.
`
`SUMMARY OF THE INVENTION
`0013 An exemplary embodiment of the invention relates
`to a method of providing a mobile terminal location. The
`method comprises providing a location for a target mobile
`terminal in an application program interface (API) executing
`at a requesting terminal.
`0014) Another exemplary embodiment of the invention
`relates to a method of providing a mobile terminal location.
`The method compriseS receiving a request for a location of
`a target mobile terminal from an application program in an
`application program interface (API) at a requesting mobile
`terminal, Selecting a location determining Source in the API
`to determine the location of the target mobile terminal,
`communicating the request from the API to the Selected
`location determining Source, determining the location of the
`target mobile terminal, receiving the location of the target
`mobile terminal at the API in the requesting terminal, and
`providing the location of the target mobile terminal to an
`application program from the API.
`0015 The request from the API to the selected location
`determining Source may be communicated using a messag
`ing Service Such as a short messaging Service, a multimedia
`messaging Service, an Instant MeSSaging Service, etc., or a
`protocol Such as an Internet protocol, a Hyper-Text Transfer
`Protocol, etc. The API may provide, but is not limited to, a
`protocol to receive the request from the application program,
`a protocol to Send the request to the location determining
`Source, a protocol to receive the location from the location
`determining Source, and a protocol to Send the location to the
`application program. The location determining Source may
`be, but is not limited to, any of the target mobile terminal and
`a network location Server. The network location Server may
`be, but is not limited to, any of a gateway mobile location
`center and a mobile positioning center. The request may be
`Sent using a wireleSS network, a cellular telephone network,
`the Internet, etc. in combination or in the alternative.
`0016 Still another exemplary embodiment of the inven
`tion relates to an application program interface (API) for
`providing a mobile terminal location. The API comprises
`computer code configured to receive a request for a location
`of a target mobile terminal from an application program,
`Select a location determining Source to determine the loca
`tion of the target mobile terminal, communicate the request
`to the Selected location determining Source, receive the
`location of the target mobile terminal, and Send the location
`to the application program.
`0017. The request from the API to the selected location
`determining Source may be communicated using a messag
`ing Service Such as a short messaging Service, a multimedia
`messaging Service, an Instant MeSSaging Service, etc., or a
`
`Page 7 of 12
`
`
`
`US 2005/0282557 A1
`
`Dec. 22, 2005
`
`protocol Such as an Internet protocol, a Hyper-Text Transfer
`Protocol, etc. The computer code may be further configured
`to provide a protocol to receive the request from the appli
`cation program, to provide a protocol to Send the request to
`the location determining Source, to provide a protocol to
`receive the location from the location determining Source,
`and/or to provide a protocol to Send the location to the
`application program. The location determining Source may
`be, but is not limited to, any of the target mobile terminal and
`a network location Server. The network location Server may
`be, but is not limited to, any of a gateway mobile location
`center and a mobile positioning center. The request may be
`Sent using a wireleSS network, a cellular telephone network,
`the Internet, etc. in combination or in the alternative.
`0.018
`Still another exemplary embodiment of the inven
`tion relates to a device for providing a mobile terminal
`location. The device comprises a processor, an application
`program interface (API), and a communication interface.
`The processor couples to the communication interface and
`executes an application program and the API. The API
`comprises computer code configured to receive a request for
`a location of a target mobile terminal from an application
`program, Select a location determining Source to determine
`the location of the target mobile terminal, communicate the
`request to the Selected location determining Source, receive
`the location of the target mobile terminal, and Send the
`location to the application program. The communication
`interface is configured to Send the request to the Selected
`location determining Source and to receive the location of
`the target mobile terminal.
`0019. The request from the API to the selected location
`determining Source may be communicated using a messag
`ing Service Such as a short messaging Service, a multimedia
`messaging Service, an Instant Messaging Service, etc., or a
`protocol Such as an Internet protocol, a Hyper-Text Transfer
`Protocol, etc. The computer code of the API may be further
`configured to provide a protocol to receive the request from
`the application program, to provide a protocol to Send the
`request to the location determining Source, to provide a
`protocol to receive the location from the location determin
`ing Source, and/or to provide a protocol to Send the location
`to the application program. The location determining Source
`may be, but is not limited to, any of the target mobile
`terminal and a network location Server. The network location
`Server may be, but is not limited to, any of a gateway mobile
`location center and a mobile positioning center. The request
`may be sent using a wireleSS network, a cellular telephone
`network, the Internet, etc. in combination or in the alterna
`tive.
`0020 Still another exemplary embodiment of the inven
`tion relates to a System for providing a mobile terminal
`location. The System comprises a requesting terminal and a
`location determining Source. The requesting mobile terminal
`comprises a processor, an application program interface
`(API), and a communication interface. The processor
`couples to the communication interface and executes an
`application program and the API. The API comprises com
`puter code configured to receive a request for a location of
`a target mobile terminal from an application program, Select
`a location determining Source to determine the location of
`the target mobile terminal, communicate the request to the
`Selected location determining Source, receive the location of
`the target mobile terminal, and Send the location to the
`
`application program. The communication interface is con
`figured to Send the request to the Selected location deter
`mining Source and to receive the location of the target
`mobile terminal. The location determining Source receives
`the request for the location of the target mobile terminal,
`determines the location of the target mobile terminal, and
`Sends the location to the requesting terminal.
`0021. The request from the API to the selected location
`determining Source may be communicated using a messag
`ing Service Such as a short messaging Service, a multimedia
`messaging Service, an Instant MeSSaging Service, etc., or a
`protocol Such as an Internet protocol, a Hyper-Text Transfer
`Protocol, etc. The computer code of the API may be further
`configured to provide a protocol to receive the request from
`the application program, to provide a protocol to Send the
`request to the location determining Source, to provide a
`protocol to receive the location from the location determin
`ing Source, and/or to provide a protocol to Send the location
`to the application program. The location determining Source
`may be, but is not limited to, any of the target mobile
`terminal and a network location Server. The network location
`Server may be, but is not limited to, any of a gateway mobile
`location center and a mobile positioning center. The request
`may be sent using a wireleSS network, a cellular telephone
`network, the Internet, etc. in combination or in the alterna
`tive.
`0022. Other principal features and advantages of the
`invention will become apparent to those skilled in the art
`upon review of the following drawings, the detailed descrip
`tion, and the appended claims.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`0023 The exemplary embodiments will hereafter be
`described with reference to the accompanying drawings,
`wherein like numerals will denote like elements.
`0024 FIG. 1 is an overview diagram of a telecommuni
`cations System in accordance with an exemplary embodi
`ment.
`0025 FIG. 2 is an overview diagram of a device in
`accordance with an exemplary embodiment.
`0026 FIG. 3 is a overview diagram of an exemplary
`embodiment showing the communication between devices.
`0027 FIG. 4 is a overview diagram of an alternative
`embodiment showing the communication between devices
`wherein the target mobile terminal is a legacy terminal.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`0028. The term “terminal” should be understood to
`include, without limitation, cellular telephones, Personal
`Data Assistants (PDAs), such as those manufactured by
`PALM, Inc., Instant Messaging Devices (IMD), such as
`those manufactured by Blackberry, Inc., Bluetooth Devices
`Such as Bluetooth GPS, and other hand-held devices; note
`book computers, laptop computers, desktop computers,
`mainframe computers, multi-processor Systems, Bluetooth
`Beacons, etc. The term “mobile terminal” should be under
`stood to include, without limitation, cellular telephones,
`PDAs and IMDs with telephonic or wireless communication
`capabilities, notebook and laptop computers with telephonic
`
`Page 8 of 12
`
`
`
`US 2005/0282557 A1
`
`Dec. 22, 2005
`
`or wireleSS communication capabilities, and other mobile
`devices that can communicate using various transmission
`technologies (including Code Division Multiple Access,
`GSM, UMTS, Time Division Multiple Access, and others)
`or media (radio, infrared, laser, and the like).
`0029. An API provides a level of abstraction between the
`application and the kernel or other application programs and
`lower level utilities and services that facilitates the portabil
`ity of the Software from one computing device to another.
`The API is used by a programmer in writing an application
`program to define the interface to the operating System or
`another application program or System Service without need
`ing to understand the details of the operating System, appli
`cation program, or System Service. These elements may be
`implemented in different forms, but the programmer need
`only be concerned with the interface. Thus, the programmer
`focuses on the information that is required as an input to the
`API and the information that is output from the API.
`0030. With reference to FIG. 1, the system 2 is com
`prised of multiple terminals that are connected through a
`network that may include, but is not limited to, a cellular
`telephone network and the Internet. The terminals may
`include, but are not limited to, a cellular telephone 4, a PDA
`6, an IMD 8, a desktop computer 10, and a notebook
`computer 12. Mobile terminals may include, but are not
`limited to, a cellular telephone 4, a PDA 6, an IMD 8, and
`a notebook computer 10. The mobile terminals may be
`Stationary or moving as when carried by an individual who
`is moving. The mobile terminals may also be located in a
`mode of transportation including, but not limited to, an
`automobile, a truck, a taxi, a bus, a boat, an airplane, a
`bicycle, a motorcycle, etc. The mobile terminals may send
`and receive calls and messages through the base Station 14.
`The network server 16 allows communication between the
`mobile terminals and other terminals that may also be
`mobile. The network server 16 may connect the mobile
`terminals with other terminals through the Internet 18.
`0031. In a preferred embodiment, the mobile terminal 20,
`as shown in FIG. 2, comprises a display 22, a processor 24,
`a communication interface 26, a location Server 28, an
`application program 30, and an API 32. The exact architec
`ture of the mobile terminal 20 is not important. Different and
`additional mobile terminal compatible devices may be incor
`porated into the mobile terminal 20 and/or the system 2 as
`long as the location server 28 and API 32 can be imple
`mented on the mobile terminal 20 as described below.
`0.032 The display 22 presents information for display and
`for editing including information generated by the applica
`tion program 30. The display 22 can be a thin film transistor
`(TFT) display, a light emitting diode (LED) display, a Liquid
`Crystal Display (LCD), or any of a variety of different
`displays known to those skilled in the art.
`0033. The processor 24 executes instructions from the
`application program 30, the API 32, and the location server
`28 in addition to other instructions contained within the
`processor 24. Application programs are open for execution
`after a user requests that the mobile terminal 20 launch the
`application program. Launching the application generally
`requires copying an executable for the application program
`30 from a permanent memory device to System memory that
`is generally Some form of random acceSS memory. A termi
`nal user executes an application program 30 by Selecting the
`
`application for launch. The System memory holds the oper
`ating System and application programs 30 and data in current
`use So that they can be reached quickly by the computer's
`processor. The application programs 30, the API 32, and the
`location Server 28 may be executed by the same processor
`24. Alternatively, the application programs 30, the API 32,
`and the location server 28 may be executed by different
`processors. The application programs 30, the API32, and the
`location server 28 may be written in the same or different
`computer languages including, but not limited to high level
`languages, Scripting languages, and assembly languages,
`etc. Additionally, the application program 30, the API 32,
`and the location Server 28 operations may be carried out by
`a Special purpose computer, logic circuits, or hardware
`circuits. Thus, the application program 30, the API 32, and
`the location server 28 may be implemented in hardware,
`firmware, Software, or any combination of these methods.
`0034. The communication interface 26 provides an inter
`face for receiving and transmitting calls, messages, and any
`other information communicable acroSS a network. Com
`munications between a terminal and a mobile terminal may
`be through one or more of the following connection meth
`ods, without limitation: a link established according to the
`Bluetooth Standards and Protocols, an infrared communi
`cations link, a wireleSS communications link, a cellular
`network link, a physical Serial connection, a physical par
`allel connection, a link established according to the Trans
`mission Control Protocol/Internet Protocol and Standards
`(TCP/IP), etc. Other connection methods may be used.
`Transferring content between mobile terminal may use one
`or more of these connection types.
`0035 Text messaging services provided for mobile ter
`minals include, but are not limited to, the Short Messaging
`Service (SMS) and the Multimedia Messaging Service
`(MMS). SMS is a mechanism for delivering short messages
`over communication networks. SMS is a store and forward
`method of transmitting messages to and from mobiles ter
`minals and has become an essentially universal mobile data
`Service. Communicating messages between mobile termi
`nals may use messaging Services provided for mobile ter
`minals including, but not limited to, SMS, MMS, e-mail,
`Instant Messaging (IM), and TCP/IP. SMS for transferring
`content may be used in preferred embodiments due to the
`low overhead of Such messages. Other communication mes
`Sage formats and transmission protocols may be used.
`0036 FIG. 3 depicts a preferred mobile terminal 20
`comprising the application program 30, the API 32, and the
`location server 28. The application program 30 instruction
`Set was implemented using the API 32 as an interface for
`acquiring location information for a target mobile terminal
`40. The application program 30 Sends a request through the
`API 32 for a location of the target mobile terminal 40. Thus,
`the API 32 is located in the mobile terminal 20 that requests
`the location of the target mobile terminal 40. The request
`from the application program 30 may identify the target
`mobile terminal 40 using, for example, a phone number, an
`IP address, a name, or other similar identification mecha
`nisms. The method used to identify the location may depend
`upon the application program 30 requirements. The API 32
`receives and processes the request for the location and sends
`the request to the location server 28. The API 32 may be
`provided as part of the location Server 28 implementation or
`may be implemented Separately. In either case, the location
`
`Page 9 of 12
`
`
`
`US 2005/0282557 A1
`
`Dec. 22, 2005
`
`server 28 instruction set is implemented using the API 32 as
`an interface. The location server 28 receives the location
`request and communicates the location request to the mobile
`terminal 40 through the communication interface 26. The
`location Server 28 may keep a list of the received location
`information or may store the location information on another
`element networked to the mobile terminal 20.
`0037. In a preferred embodiment as shown in FIG.3, the
`target mobile terminal 40 also comprises the location Server
`28 and API 32. The location server 28 at the target mobile
`terminal 40 receives the communicated location request and
`determines the location of the target mobile terminal 40
`using positioning technologies known by those skilled in the
`art. The location server 28 at the target mobile terminal 40
`sends the location of the target mobile terminal 40 to the
`location server 28 at the requesting mobile terminal 20. The
`location server 28 at the requesting mobile terminal 20
`receives the location and sends the location to the API 32 at
`the requesting mobile terminal 20. The API 32 receives the
`location and Sends the location to the application program
`30. The API 32 provides protocols for processing the request
`from the application program 30, for Sending the request to
`the target mobile terminal 40, for receiving the location from
`the target mobile terminal 40, and for Sending the location to
`the application program 30.
`0038 FIG. 4 depicts an alternative embodiment. The
`mobile terminal 20 again comprises the application program
`30, the API 32, and the location server 28. The application
`program 30 instruction Set was implemented using the API
`32 as an interface for acquiring location information for a
`target mobile terminal 42. The application program 30 Sends
`a request through the API 32 for a location of the mobile
`terminal 42. The location request may identify the target
`mobile terminal 42 using, for example, a phone number, an
`IP address, a name, or other similar identification mecha
`nisms. The API 32 receives and handles the location request
`and sends the request to the location server 28. The API 32
`may be provided as part of the location server 28 imple
`mentation or may be implemented Separatel