Location logging and location and time based filtering
Abstract
A procedure (800) for carrying out a filtering based on the location and on the time it comprises: obtaining (814) a location and time criterion comprising a target zone and a period of time in which the criterion of location and time; determine (816) the location of a terminal (110) during the period of time; evaluate (818) the location and time criteria based on the target area and the location of the terminal (110) during the time period; and determine (820) whether to download broadcast information or present the broadcast information, or both, based on the result of the evaluation of the location and time criteria, characterized in that the location and time criteria also include a target probability that the terminal is present in the target or absent zone of the target zone and because the location and time criteria are also evaluated based on the target probability.

Term
3.2 yearsto projected expiry
Projected expiry 14 December 2029, counted from filing; an application has no term until it is granted.
- Priority
- Filed
- Published
- Today
- Projected expiry
12 claims: 3 independent, 9 dependent
- 1REIVINDICACIONES 1. Un procedimiento (800) para llevar a cabo un filtrado basado en la ubicación y en el tiempo que comprende:obtener (814) un criterio de ubicación y de tiempo que comprende una zona diana y un periodo de tiempo en el que se aplica el criterio de ubicación y de tiempo;5 determinar (816) la ubicación de un terminal (110) durante el periodo de tiempo;evaluar (818) el criterio de ubicación y de tiempo con base en la zona diana y la ubicación del terminal (110) durante el periodo de tiempo;y determinar (820) si descargar información radiodifundida o presentar la información radiodifundida, o ambas, con base en el resultado de la evaluación del criterio de ubicación y de tiempo, caracterizado 10 porque el criterio de ubicación y de tiempo comprende, además, una probabilidad diana de que el terminal esté presente en la zona diana o ausente de la zona diana y porque el criterio de ubicación y de tiempo se evalúa, además, con base en la probabilidad diana.
- 2El procedimiento (800) de la reivindicación 1 en el que el criterio de ubicación y de tiempo se expresa como:LR ! PA en L durante D, 15 en la que: L denota la zona diana para el criterio de ubicación y de tiempo, PA denota la probabilidad de presencia o ausencia para el criterio de ubicación y de tiempo, D denota el periodo de tiempo para el criterio de ubicación y de tiempo, y LR denota el criterio de ubicación y de tiempo. 20 3. El procedimiento (800) de la reivindicación 1 en el que la evaluación del criterio de ubicación y de tiempo comprende determinar la identidad, ID, de al menos un sector para la zona diana, determinar las ID de uno o más sectores para la ubicación del terminal durante el periodo de tiempo, y evaluar el criterio de ubicación y de tiempo con base en la ID de al menos un sector para la zona diana y las ID 25 de uno o más sectores para la ubicación del terminal.
- 4El procedimiento (800) de la reivindicación 1 en el que la evaluación del criterio de ubicación y de tiempo comprende determinar al menos un polígono para la zona diana, determinar uno o más polígonos para la ubicación del terminal durante el periodo de tiempo, y 30 evaluar el criterio de ubicación y de tiempo con base en el al menos un polígono para la zona diana y los uno o más polígonos para la ubicación del terminal.
- 5El procedimiento (800) de la reivindicación 4 en el que el al menos un polígono para la zona diana y los uno o más polígonos para la ubicación del terminal son evaluados con operaciones de intersección y cálculos de probabilidad conjunta. 35 6. El procedimiento (800) de la reivindicación 1 que, además, comprende:mantener (812) un registro de la ubicación del terminal, y en el que la ubicación del terminal durante el periodo de tiempo se determina con base en el registro.
- 7El procedimiento (800) de la reivindicación 1 en el que la determinación de la ubicación del terminal durante el periodo de tiempo comprende la obtención de al menos una entrada para la ubicación del terminal en un 40 registro de ubicaciones, y en el que la evaluación del criterio de ubicación y de tiempo comprende determinar la probabilidad de que el terminal esté dentro o fuera de la zona diana para cada una de las al menos una entradas del registro, y acumular al menos una probabilidad para la al menos una entradas del registro para obtener una probabilidad de conjunto de que el terminal esté dentro o fuera de la zona diana. 45 8. El procedimiento (800) de la reivindicación 1 que, además, comprende:determinar la zona diana con base en una unión de una pluralidad de zonas dadas en al menos un formato.
- 9El procedimiento (800) de la reivindicación 1 que, además, comprende:convertir la zona diana, o la ubicación del terminal, o ambas, a un formato seleccionado, representado el formato seleccionado zonas basadas en la identidad del sector, la ID o el código postal, o comprendiendo 50 dicho procedimiento, además: descargar información para una tabla de conversión usada para convertir la zona diana o la ubicación del terminal, o ambos, al formato seleccionado.
- 10El procedimiento (800) de la reivindicación 1 que, además, comprende:predecir la ubicación futura del terminal con base en la ubicación pasada del terminal, y evaluándose el 5 criterio de ubicación y de tiempo con base en la ubicación futura predicha del terminal.
- 11El procedimiento (800) de la reivindicación 10 en el que la predicción de la ubicación futura del terminal comprende trasladar la ubicación pasada del terminal en una cantidad de tiempo determinada con base en el periodo de tiempo para el criterio de ubicación y de tiempo.
- 12Un aparato para llevar a cabo un filtrado basado en la ubicación y en el tiempo que comprende:10 un medio para obtener un criterio de ubicación y de tiempo que comprende una zona diana y un periodo de tiempo en el que se aplica el criterio de ubicación y de tiempo;un medio (720) para determinar la ubicación de un terminal durante el periodo de tiempo;un medio (730) para evaluar el criterio de ubicación y de tiempo con base en la zona diana y la ubicación del terminal durante el periodo de tiempo;y 15 un medio para determinar (820) si descargar información radiodifundida o presentar la información radiodifundida, o ambas, con base en el resultado de la evaluación del criterio de ubicación y de tiempo, caracterizado porque el criterio de ubicación y de tiempo comprende, además, una probabilidad diana de que el terminal esté presente en la zona diana o ausente de la zona diana y porque el medio de evaluación está adaptado para 20 evaluar el criterio de ubicación y de tiempo, además, con base en la probabilidad diana.
- 13El aparato de la reivindicación 12 en el que el medio de evaluación de criterio de ubicación y de tiempo comprende un medio para determinar la identidad, ID, de al menos un sector para la zona diana, un medio para determinar las ID de uno o más sectores para la ubicación del terminal durante el periodo de 25 tiempo, y un medio para evaluar el criterio de ubicación y de tiempo con base en la ID de al menos un sector para la zona diana y las ID de uno o más sectores para la ubicación del terminal.
- 14El aparato de la reivindicación 12 que, además, comprende:un medio para mantener un registro de la ubicación del terminal, y en el que la ubicación del terminal 30 durante el periodo de tiempo se determina con base en el registro.
- 15Un producto de programa de ordenador que comprende:un medio legible por ordenador que comprende código para llevar a cabo las etapas de cualquiera de las reivindicaciones 1 a 11.
Independent claims12
181 paragraphs in 1 section, as filed
Location and filtering based on location and time
Background
I. Field
This disclosure is generally about communications and, more specifically, about techniques for receiving broadcast information.
II. Background
A communications network can broadcast various types of information, such as commercial announcements, news, weather bulletins and travel advice, movie segments, educational news, television programs, sporting events, public announcement messages, etc. The broadcast information may thus include any type of information sent to more than one user and may also be referred to as broadcast content. A given user may be interested in receiving only some of the broadcast information sent by the network. The user can manually identify the broadcast information of interest to the user and can save or display the broadcast information in a receiver, for example a cell phone. This manual filtering of broadcast information can be tedious. It may be desirable to automatically identify broadcast information of potential interest to the user.
Attention is drawn to document US2006253453 (A1), which describes systems and procedures for sending and receiving advertisements from a server to a client. Ads can be sent based on the location of the client device and / or in a designated temporary window. An ad manager on the client device can display, save and manage the received ads and activate additional applications based on the content of the ad.
Summary
According to the present invention, there is provided a method, an apparatus and a computer program product for carrying out a filtering based on location and time, as set forth in claims 1, 12 and 15. In the dependent claims Embodiments of the invention are claimed.
This document describes techniques for carrying out a registration of locations and filtering based on location and time to receive broadcast information. In one aspect, a terminal may periodically register its location and maintain a location register to support filtering based on location and time. In a design, the terminal can periodically determine its location, for example during its notification slots while operating in an idle mode. The terminal can determine if there is a change in its location and can save its location and a time stamp if a change in the location is detected. In a design, terminating can periodically determine its server sector and verify if there is a change in the server sector. The terminal can save a sector identity (ID) of the server sector and a time stamp if a change is detected in the server sector.
In another aspect, the terminal can perform a filtering based on location and time to receive broadcast information. The terminal can keep a record of your location. The terminal can obtain a location and time criterion, for example, from a broadcast broadcast or from a unicast transmission,
Or you can have it loaded in advance in the non-volatile memory of the terminal. The location and time criteria may comprise a target zone and a period of time in which the location and time criteria are applied. The terminal can determine its location during the period of time, for example, based on the registration of its location. The terminal can evaluate the location and time criteria based on the target zone and its location during the time period. In a design, the terminal can determine the ID of at least one sector or polygon for the target zone and one or more sectors or polygon IDs for its location during the period of time. The terminal can then evaluate the location and time criteria based on the IDE of at least one sector or polygon for the target zone and the one or more sectors or polygon IDs for its location. The terminal can determine whether to download and / or present the broadcast information based on the result of the evaluation.
In the following, various aspects and characteristics of the disclosure are described in further detail.
Brief description of the drawings
FIG. 1 shows a deployment of an exemplary network. FIG. 2 shows a layout of a location record. FIG. 3 shows an example of registering locations by a terminal. FIGURES 4A, 4B and 4C show the evaluation of a location and time criteria. FIG. 5 shows the transmission of a service guide with broadcast metadata. FIG. 6 shows the transmission and presentation of broadcast information.
FIG. 7 shows a filtering design based on location and time. FIG. 8 shows a procedure for filtering based on location and time. FIG. 9 shows a procedure to carry out a registration of locations. FIG. 10 shows a block diagram of a terminal, a network, a server / location center and a center Broadcasting
Detailed description
The techniques described herein can be used to receive information from various wireless and wired communications networks. The terms "network" and "system" are often used interchangeably. For example, techniques can be used to receive information from cellular networks, broadcast networks, etc. The techniques can be used to receive broadcast information sent to all users, multicast information sent to a specific user group and unicast information sent to a specific user. For the sake of clarity, certain aspects of the techniques for receiving broadcast information from a communications network are described in the following.
FIG. 1 shows a deployment 100 of an exemplary network that supports the techniques described herein. A terminal 110 can communicate with one or more wireless and / or wired networks 120 to obtain communications and / or data connectivity services. Terminal 110 may communicate with one or more base stations of a wireless network and / or one or more servers in a wired network. Terminal 110 can also receive broadcast information from a broadcasting network 130. Terminal 110 can be stationary
or mobile and can also be called mobile station, user equipment, access terminal, subscriber unit, station, etc. The terminal 110 may be a cell phone, an electronic phone book (PDA), a wireless device, a wired device, a wireless modem, a laptop, a personal computer (PC), a broadcast receiver, etc. The functions of terminal 110 can also be extended to more than one device. For example, transmission and reception can be supported on a cell phone or PDA, while an associated laptop or PC can perform the filtering of the broadcast information and the presentation to the user of the filtered broadcast information. In addition, terminal 110 can receive and transmit signals through a mobile satellite system, which can be a Globalstar system, an Iridium system, an OmniTracs system, etc. Terminal 110 can also receive signals through a fixed satellite broadcasting system, such as a DirecTV system, an EchoStar system, or a ICO Global receive-transmission system.
Terminal 110 can also receive and measure signals from satellites 190 to obtain pseudo ranges for satellites. The 190 satellites can be part of the US global positioning system (GPS), the European Galileo system, the Russian GLONASS system, the Japanese Quasi-Zenith satellite system, the Chinese Compass / Beidou system, the Indian regional navigation satellite system (IRNSS), some other global navigation satellite system (GNSS) or a combination of these systems. The pseudo ranges and known locations of the satellites can be used to deduce a location estimate for terminal 110. Terminal 110 can also receive and measure signals from base stations of a wireless network to obtain synchronization and / or intensity measurements of the signs. Synchronization and / or signal strength measurements and known locations and / or coverage areas of the base stations can be used to deduce a location estimate for terminal 110. In general, an estimate of location based on measurements for satellites, base stations, pseudo-satellites and / or other transmitters and using one of the positioning procedures or a combination thereof.
The network (s) 120 may include a wireless network that supports radio communication for terminals located within its coverage area. A wireless network may be a code division multiple access network (CDMA), a time division multiple access network (TDMA), a frequency division multiple access network (FDMA), an orthogonal FDMA network (OFDMA ), a single carrier FDMA network (SC-FDMA), etc. A CDMA network can implement CDMA broadband technologies (WCDMA), CDMA 1X, high-speed data packets (HRPD) or some other CDMA radio technology. A TDMA network can implement the global system technology for mobile communications (GSM) or some other TDMA radio technology. An OFDMA network can implement long-term evolution technologies (LTE), advanced LTE (LTE-A), ultra-mobile broadband (UMB), IEEE 802.11, IEEE 802.16 or some other OFDMA radio technology. The WCDMA, LTE, LTE-A and GSM technologies are described in documents of an organization called “3rd Generation Partnership Project” (3GPP). The technologies CDMA 1X, HRPD and UMB are described in documents of an organization called “Project 2 of 3rd Generation Association” (3GPP2).
A wireless network can include several base stations. In 3GPP, the term "cell" may refer to the smaller coverage area of a base station and / or a base station subsystem that serves this coverage area. In 3GPP2, the term "sector" or "cell sector" may refer to the smaller coverage area of a base station and / or a base station subsystem that serves this coverage area. For the sake of clarity, the 3GPP2 concept of industry is used in large part of the description that follows. A base station can support one or multiple sectors (for example, three).
Alternatively, or in addition, the network (s) 120 may include a wired network, such as a local area network (LAN), a digital subscriber line (DSL) network, a cable packet network, a provider network of Internet services (ISP), a telephone network, Internet, etc.
Broadcasting network 130 may provide broadcasting services and may implement MediaFLO ™ technologies, digital video broadcasting for portable terminals (DVB-H), integrated services digital broadcasting for terrestrial television broadcasting (ISDBT) or some other transmission technology digital. Broadcasting network 130 can also help terminal 110 determine its location. For example, terminal 110 may measure the synchronization information of the signals of one or more broadcasting transmitters and may determine its location by triangulation, trilateration or some other means.
A location server / center 140 may comprise a location server that supports the positioning service for terminal 110 and other location service clients (LCS). Positioning refers to a procedure for determining an estimate of geographic or civil location for an LCS target, for example obtaining latitude, longitude and altitude coordinates for a geographic location or a domicile for a civil location. The location server can carry out various functions for positioning support, for example calculating location estimates, providing terminal assistance data, performing security functions, etc. The location server can support one or more location architectures / solutions, such as the secure location of the user plane (SUPL) of the Open Mobile Alliance (OMA), the 3GPP control plane, the 3GPP2 control plane, etc. The location server may comprise a SUPL positioning center (SPC), a 3GPP mobile location server center (SMLC), a 3GPP2 position determination entity (PDE), a Skyhook location server (802.11), etc.
The location server / center 140 may also comprise a location center that supports location services for terminal 110 and other LCS clients. The location center can perform various functions, such as location service support, privacy support, authorization, authentication, subscriber charge or billing, service management, etc. The location center may comprise an SUPL location center (SLC), an SUPL location platform (SLP), a 3GPP mobile location gateway center (GMLC), a 3GPP2 mobile position center (MPC), etc. The location server and the location center can be integrated (as shown in FIG. 1) or they can be separate entities. A location database 142 may store location information that can be used to support services based on positioning and / or location.
A broadcast center 150 may provide broadcast information for the broadcasting services. The broadcast information may include any information that may be of interest to users, for example general television (TV), radio, advertisements, news, etc. Broadcasting center 150 or some other entity may also provide broadcast metadata for broadcast information, as described in the following. A storage unit 152 can store the broadcast information and the broadcast metadata. Broadcasting center 150 may provide broadcasting information and broadcasting metadata to the network or networks 120 and / or broadcasting network 130. The broadcast information and the broadcast metadata may be transmitted jointly or separately by the network or networks 120 and / or by the broadcast network 130.
Broadcast metadata may allow a terminal (for example, terminal 110) to filter the broadcast information based on location and time, usually in conjunction with the user's saved preferences and / or profile. Broadcast metadata may allow the terminal to make a decision as to whether to receive the broadcast information and present this information to the user. The preferences or user profile may have been previously entered by the user in the terminal or may be verified in other ways, for example by observing the user's preferences for the manual selection of previously broadcast information and the criteria that apply to the information. broadcast selected in the construction of a set of heuristic criteria related to user behavior. Filtering based on location and time by the terminal can reduce the burden on the user of having to analyze and select particular emissions among possibly a large number of emissions. Based on the result of the filtering, the terminal can alert the user of the presence of the broadcast information before, during or after it has been received. The terminal can also save and / or present the broadcast information if it is of potential interest to the user or can silently ignore (for example, neither receive nor save) the broadcast information. The way to alert the user of broadcast information passing the filtering may also depend on the filtering. For example, an audible alarm can be provided for broadcasts of an emergency nature, while commercial broadcasts can be (i) saved and provided to the user upon explicit request or (ii) automatically inserted for presentation along with the main program.
The user can define elements of interest to the user and procedure to be informed when such elements of interest are detected. The terminal can filter broadcast information by examining the associated broadcasted metadata taking into account user preferences. If there is a match, the
terminal can then alert the user, as specified, and can also save and / or present the user with the broadcast information.
In a design, broadcast metadata can include location and time criteria. The terms "criteria" and "requirements" are used interchangeably in this document. A location and time criterion may be related to the location and time of an event associated with the broadcast information, for example a sale, a sporting event, etc. An event can be in the past, present or future. A location and time criterion may comprise a location criterion and an associated time criterion. A location criterion may be given by a target zone within (or outside) of which a potential receiving terminal should be so that the broadcast information is relevant. A time criterion may be given for a period of time in which the terminal should be inside (or outside) the target zone. This period of time may be in the past, present or future. If the terminal is within (or outside) the target zone for the specified period of time (that is, if the location and time criteria are met), then the terminal may give higher priority to the reception of the associated broadcast information and provide this information to the user. Alternatively, the terminal may refuse to provide the user (for example, by deleting it) the associated broadcast information if the location and time criteria are not met.
In a design, the location and time criteria for broadcast information may specify the presence or absence of a terminal for each of a set of target zones as follows:
Location and time criteria! ∀ PAin Ldurante D # LO∀PAin Ldurante D #
11 1122 2
Ec (1)
LO2 ∀PA3 in L3 during D3 ## LON∃1 ∀ PAN in LN during DN #,
in which
Ln denotes a target zone for the nth location and time criteria, for 1 ≤ n ≤ N, Dn denotes a period of time or an instant of time for the nth location and time criteria, PAn denotes a presence or absence requirement for the nth location and time criteria, and LOn denotes a logical operation, which can be a logical O or a logical Y.
In the design shown in Equation (1), the location and time criteria are defined by a set of N target zones, L1 aLN, being, in general, N ≥ 1. Each target zone can be defined as described in what follows. N periods of time, D1 aDN, can be provided for the N target areas L1 aLN, respectively. Each period of time Dn can be defined by a start time TSn and an end time TEn.TSn and TEn can each be defined in the past, present or future, with TEn occurring in TSn or later.
In a design, the presence or absence requirement PAn for each location criterion can have one of the following values:
<dl><dt>1. </dt><dd>Present in part of the time period with a probability of at least Pn, </dd></dl>
<dl><dt>2. </dt><dd>Present throughout the period of time with a probability of at least Pn, </dd></dl>
<dl><dt>3. </dt><dd>Absent in part of the time period with a probability of at least Pn, or </dd></dl>
<dl><dt>4. </dt><dd>Absent throughout the period of time with a probability of at least Pn. </dd></dl>
The probability Pn can be any value between 0 and 1, or 0 ≤ Pn ≤ 1.
The location and time criteria in Equation (1) combine N individual location and time criteria to obtain a global requirement for a terminal. Each location and time criteria can be expressed as:
LR! PA in L for D, Ec (2)
nnn n
denoting LRn the nth location and time criteria.
In another design, the location and time criteria can be specified as follows:
Location and time criteria! LTCA LOA LTCB LOB LTCC #, Ec (3)
in which
LTCi denotes a location and time criteria for i% A, B, C,…, and LOi denotes a logical operation, which can be a logical Y or a logical O
LTCi can be defined as shown in Equation (1). The design of Equation (3) allows multiple location and time criteria to be logically combined to form more complex location and location criteria
weather. Multiple location and time criteria can be combined in an arbitrary tree of expressions, using parentheses to indicate the order of evaluation for each expression.
In another additional design, the location and time criteria can be recursively specified as follows:
Location criteria and schedules & Expression j! Expression i ∀ # ∀ # of binary operation ∋, Ec (4)
denoting {…} an optional extension, which may or may not be present, denoting Expression () {Binary operation expression ()}, or {unary operation expression ()}, or (single criterion of location and time), denoting binary operation a logical OR, a logical Y or some other operation with two arguments, and denoting unary operation a logical NO or some other operation with an argument. The unique location and time criteria can be given as shown in Equation (2).
To evaluate Equation (4), you can first determine the truth value of each unique criterion of location and time either as true or false, as described for Equation (1). The values of true for all unique location and time criteria can be combined using unary operations and / or binaries that bind them together to give a true or false final value for the overall requirement of Equation (4). A true value for the overall requirement may indicate that the location and time criteria for the broadcast information. A false value may indicate that the location and time criteria are not met.
The location and time criteria for broadcast information can also be defined in other ways. Location and time criteria are described in additional detail in the US patent publication, legally transferred, No. US 2009/093257 A1, entitled “LOCATION AND TIME BASED FILTERING OF BROADCAST INFORMATION. "
The filtering of broadcast information based on location and time can be illustrated with the following example. In this example, a department store in a shopping center celebrates a large sale a imminent saturday and would like to announce these sales to people who live nearby, to people who are likely to be present during sales because they have visited the mall on Saturdays recent past, and people who are expected to be in the store's neighborhood during business hours reduction. To select these users in an announcement of the sales, the criteria of location and time for the Broadcast announcement may occur as follows:
Location criteria and schedules! LTCA OR LTCB OR LTCC. Ec (5)
In Equation (5), LTCA can define a location and time criterion that a terminal (and, therefore, a user) must be present in the mall on at least one of the three previous Saturdays with a probability of at least 50%. This means that the user is likely to visit the mall at least occasionally on Saturdays and may be interested in the sales. LTCB can define a location and time criteria that a terminal has been present in the area surrounding the mall on each of the previous three nights with a probability of at least 70%. This makes it likely that the user lives near the mall and may have an interest in rebates. LTCC can define a location and time criteria for a terminal to be in the area of the city that contains the mall at some time during the sales with a probability of at least 50%.
LTCA in Equation (5) can be expressed as follows:
LTCA! ∀PA1 in L1 during D1 #O ∀PA2 in L2 during D2 #O ∀PA3 in L3 during D3 #
in which
PA1, PA2, PA3 = present in part of the time period with a probability ≥ 50%, L1, L2, L3 = shopping center area, and D1, D2, D3 = each of the three previous Saturdays, for example with a start time at 9:00 am and Completion at 6:00 pm.
LTCB in Equation (5) can be expressed as follows:
LTCB! ∀PA1 in L1 during D1 #Y ∀PA2 in L2 during D2 #Y ∀PA3 in L3 during D3 #
in which
PA1, PA2, PA3 = present over the entire period of time with a probability ≥ 70%, L1, L2, L3 = area of the city that contains the mall, and D1, D2, D3 = each of the previous three consecutive days; for example, D1 = Monday, D2 = Tuesday, D3 = Wednesday, with start time at midnight and end time at 6:00 am.
LTCC in Equation (5) can be expressed as follows:
LTC! ∀PA in L for D #
C11 1
in which
PA1 = present in part of the time period with a probability of at least 50%, L1 = area of the city that contains the mall, and D1 = Saturday of sales, for example with start time at 9:00 am and end time at 6:00 pm.
The parameters for the expressions LTCA, LTCB and LTCC can be sent in the broadcast metadata for the announcement of the rebates to selected potentially interested users. Additional information such as the type of discounted items, the level of price discounts, the interest rate of the credit, the name of the store, etc. can also be included in the broadcast metadata. The additional information may allow the terminals to filter based on other user preferences, so that users can be alerted only if both the location and time criteria are met, as well as other user preferences.
Other examples of filtering of broadcast information based on location and time criteria are described in the aforementioned document US 2009/093257 A1.
In one aspect, the terminal 110 may periodically register its location and maintain a location register to support the filtering of broadcast information and / or other applications based on location and time. The location record can also be called history database, etc. The terminal 110 can perform a location register so that the battery power is conserved as much as possible.
FIG. 2 shows a layout of a location record. Terminal 110 may operate in an inactive mode when communication is not required and may be waiting in a server sector. Terminal 110 can be configured with a notification cycle of T seconds and specific paging slots in which notifications can be sent to terminal 110. The notification slots are separated from each other T seconds, which can be configurable for terminal 110 and can be set to be approximately 5 seconds or some other value. While in idle mode, terminal 110 can be reactivated every T seconds before its notification slot, listen to notifications and make pilot intensity measurements for the server sector and neighboring sectors. Terminal 110 may determine if another sector is more suitable for serving terminal 110 based on pilot intensity measurements and, in addition, according to a set of rules specified by a wireless network, in parameters provided by the server sector and / or other information. If there is no change in the server sector or any notification, terminal 110 may then return to inactivity. If not, if there is a change in the server sector, then terminal 110 can register to receive notifications from the new server sector.
In a design, terminal 110 may register a sector ID provided there is a change in the server sector. The sector ID of the new server sector can be used to determine a rough estimate of the location for terminal 110. This rough estimate of the location can be given by a coverage area of the new server sector. The sector ID can provide sufficient resolution of the user's location for filtering and other applications based on location and time. The sector ID can be easily obtained by terminal 110 and can be available from normal processing in idle mode to detect better sectors. Hence, no additional processing may be required to obtain the sector ID. In addition, registering the sector ID only when there is a change in the server sector can reduce the number of entries to be stored in the registry, which can reduce memory requirements. This technique to register elements only when there is a change is commonly called path coding.
Terminal 110 can register in the notification zone (or an update of the location zone) whenever it is moved to a new notification zone. Some wireless networks may require that terminal 110 be registered only when leaving a large notification area, which can cover many sectors. Other wireless networks may require a registration only when the terminal 110 has moved more than one threshold distance, that is, provided that the GPS distance between cellular towers is greater than the threshold distance. For these wireless networks, instead of registering the sector ID as long as the registration is carried out in the notification zone, terminal 110 can register the sector changes more frequently to obtain sector-to-sector accuracy.
In a design, a hysteresis and low-pass filtering can be used to avoid frequent recording of sector changes. For example, terminal 110 may switch between two or more server sectors due to fluctuations in channel conditions, which may be caused by the screen effect and / or other phenomena. To avoid frequent registration, terminal 110 may retain a sector ID for a new server sector during a particular time interval provided that a sector ID is registered. This time interval can be called the registration interval. Terminal 110 may ignore changes in the server sector that occur within the registration interval. Terminal 110 may register a new sector ID if there is a change in the server sector after this registration interval. This scheme can prevent excessive registration by terminal 110 due to frequent changes in the server sectors. For example, if the registration interval is 15 minutes and only one new sector ID can be registered after each registration interval, then only 96 entries can be registered daily.
In a design, terminal 110 can register a sector ID provided there is a change in the server sector (for example, with hysteresis and / or low pass filtering application), as well as the time of change, at which it can be called start time or time stamp. In a design, each registry entry can comprise up to seven bytes for the sector ID and up to four bytes for the start time. These input sizes are sufficient for current 3GPP and 3GPP2 networks and for accuracy within seconds using the network time synchronization protocol (NTP) time. In general, any number of bytes can be used for the sector ID and any number of bytes can be used for the start time. The format of an ID entry in a location register and the number of bytes that should be used for the sector ID entry may depend on the network. For CDMA 1X, a sector ID entry may comprise a system identification (SID), a network identification (NID) and a base station identification (BaseID). For HRPD, a sector ID entry may comprise an SID, a NID, a packet zone ID (PZID) and a BaseID. For GSM, a sector ID entry may comprise a mobile country code (MCC), a mobile network code (MNC), a location zone code (LAC) and a cell ID. For WCDMA, a sector ID entry may comprise an MCC, an MNC, a radio network controller ID (RNC-ID) and a cell ID. The amount of information to register can be reduced by omitting the redundant portions of the country and the sector ID network when operating on the same wireless network.
FIG. 3 shows an example of registration of locations by the terminal 110. The terminal 110 can be served by the sector No. 56 at home during the night, by the sector No. 59 during the trip to work in the morning, by the sector No. 142 at work, for sector No. 23 during lunch, for sector No. 142 at work in the afternoon, for sector No. 59 during travel at the end of the afternoon, and for sector No. 56 at home after work . Table 1 shows an exemplary location register for terminal 110 for the example shown in FIG. 3.
Table 1 - Registration of locations for one day
<dl><dt>Entry </dt><dd>Location Start time Description </dd></dl>
<dl><dt>1 </dt><dd>Sector No. 56 6:30 pm At home at night (dinner… breakfast) </dd></dl>
<dl><dt>2 </dt><dd>Sector No. 59 7:45 am Moving to work </dd></dl>
<dl><dt>3 </dt><dd>Sector No. 142 8:00 am At work in the office in the morning </dd></dl>
<dl><dt>4 </dt><dd>Sector 23 12:05 pm Eating </dd></dl>
<dl><dt>5 </dt><dd>Sector No. 142 1:05 pm At work (office, meeting room) </dd></dl>
<dl><dt>6 </dt><dd>Sector No. 59 6:00 pm Moving home </dd></dl>
<dl><dt>7 </dt><dd>Sector No. 56 6:30 pm At home </dd></dl>
In the example shown in Table 1, the location register for terminal 110 may include (i) seven entries in 77 bytes for one day, (ii) 42 entries in 462 bytes for one week, or (iii) 630 entries in 6930 bytes for three months. Thus, a relatively small location record can save the sector ID and start time for a relatively long period of time.
In a design, a location record for a given period of time can be condensed using a histogram. The histogram may include a percentage of time in which terminal 110 is within a given zone (for example, a polygon) in the given period of time. Table 2 shows an exemplary histogram for registering locations in Table 1. The histogram may indicate that terminal 110 is within the coverage (i) of sector No. 56 (at home) 55% of the time, (ii) of sector No. 142 (at work) 38% of the time, (iii ) of sector 59 (during displacements) 4% of the time, and (iv) of sector 23 (during lunch) 3% of the time.
Table 2 - Location register hystogram 10
<dl><dt>Location </dt><dd>Percentage of time Description </dd></dl>
<dl><dt>Sector No. 56 </dt><dd>55% At home </dd></dl>
<dl><dt>Sector No. 142 </dt><dd>38% At work </dd></dl>
<dl><dt>Sector No. 59 </dt><dd>4% Scrolling </dd></dl>
<dl><dt>Sector 23 </dt><dd>3% Eating </dd></dl>
be represented by a polygon that has any shape and size. A polygon can be a triangle, a quadrilateral, a pentagon, a hexagon, etc.
The location record of Table 1 and the histogram of Table 2 are two exemplary storage designs of a location history for terminal 110. The past location of terminal 110 can also be saved using other formats and other structures. In another design, terminal 110 may store multiple sector IDs for multiple sectors received with sufficient signal strength by terminal 110. Terminal 110 can also store the signal strength received from each sector and / or the probability that terminal 110 is within the sector. In another additional design, terminal 110 may periodically obtain a location estimate for itself based on a satellite positioning procedure and / or a network positioning procedure. Terminal 110 may save the location estimate in the location register. Thus, the location register can save the location of terminal 110 in any suitable format. The past location of terminal 110 can be used for filtering and / or other applications based on location and time.
A target zone for a location and time criteria can be defined in several ways. In a design, a target zone can be defined based on one or more zones. Each zone can have one of the following formats:
<dl><dt>1. </dt><dd>Shape: the area is given by a defined polygon with GPS coordinates, </dd></dl>
<dl><dt>2. </dt><dd>Country code: the zone is a country specified by a country code, </dd></dl>
<dl><dt>3. </dt><dd>Name zone: the area is a city, a region or a neighborhood with a given name, </dd></dl>
<dl><dt>4. </dt><dd>Postal code: the area corresponds to a postal code, and </dd></dl>
<dl><dt>5. </dt><dd>Cellular target zone: the zone corresponds to the coverage of a cell or a sector. </dd></dl>
Different wireless networks can support different types of cellular target zone. For example, a terminal in a broadcasting network (for example, for DVB-H, MediaFLO ™, etc.) may gather information from broadcasting sectors for a large area (for example, 80 kilometers (km) in diameter). A terminal in a WCDMA network can collect 3GPP cell IDs for cells that span approximately 2 km in diameter. A terminal in a CDMA 1X network or an HRPD network can collect 3GPP2 sector IDs for sectors that are approximately 2 km in diameter. A terminal with GPS capabilities can gather GPS coordinates, which can have an accuracy of approximately 9 meters in diameter. Some wireless networks can provide GPS coordinates of the cell center or sector.
In a design, a target zone can be defined for a location and time criteria by one or more "shape" polygons. The target zone can have any arbitrary shape and size and can be broken down into polygons (for example, triangles) based on any triangulation algorithm known in the art. An exemplary triangulation algorithm is described by JR Shewchuk in "Triangle: Engineering a 2D Quality Mesh Generator and Delaunay Triangulator", Appl. Comp. Geom .: Towards Geom. Engine, be. Lecture Notes in Computer Science, 1148, pp. 203-222, May 1996, which is public knowledge. The location of terminal 110 (or the location of the user) can also be defined by polygons. The location and time criteria can then be evaluated by comparing the polygons for the user's location with the polygons for the target zone. For example, once triangulation has been carried out for a polygon for the target zone, each triangle of this polygon can be "trimmed" with respect to another polygon for the user's location to derive an intersection polygon. This clipping can be based on a Sutherland-Hodgeman algorithm (in which the target polygon is convex) or on a Weiler-Atherton algorithm, which are known in the art.
FIG. 4A shows an exemplary target zone defined by polygons. A shopping center can be a target zone for a location and time criteria and can be defined by three polygons A, B and C. These polygons can correspond to three sectors or cells. The location and time criteria can check if a user is in the mall with a probability of at least 50% for a specific time interval in the last two weeks. Then a determination can be made as to whether the user is located within polygon A, B or C for the specific duration in the last two weeks with at least a 50% probability.
FIG. 4B shows the evaluation of the location and time criteria in FIG. 4A for a single polygon case. In this example, the location of the user can be determined based on the location register and can be moved to polygon D. The user can be located at polygon D during the specific duration in the last two weeks with a probability of 100 %. Polygon D for the user's location can be compared with polygon A for the target zone. An intersection zone X corresponds to the portion of polygon D that overlaps with polygon A and is shown with shading in FIG. 4B. Zone X may be 30% of the total area of polygon D, which may mean that the user is in the area defined by polygon A with a probability of 30%. This 30% probability is less than the 50% probability required by the location and time criteria.
FIG. 4C shows the evaluation of the location and time criteria in FIG. 4A for a case of multiple polygons. Polygon D for the location of the user can be compared with polygons A, B and C for the target zone. An intersection zone X corresponds to the portion of polygon D that overlaps with polygon A. An intersection zone Y corresponds to the portion of polygon D that overlaps with polygon B. A zone Z of 9 10
intersection corresponds to the portion of polygon D that overlaps with polygon C. Zones X, Y and Z of intersection can be 90% of the total area of polygon D, which can mean that the user is in the zone target defined by the union of the polygon AOBOC with a probability of 90%. This 90% chance is greater than the 50% probability required by the location and time criteria, which means that satisfies the criteria of location and time.
As shown in FIGURES 4A to 4C, the location and time criteria can be assessed with a iterative procedure that (i) compares a polygon for the user's location with each polygon in a zone target and (ii) accumulates the probability corresponding to the percentage of intersection between the two polygons. He procedure can be repeated until all the polygons of the target zone have been considered or until the desired probability is reached.
In a design, an algorithm to evaluate a location and time criteria can be implemented with the following pseudocode
10 polygon_set = shape1 (... cc1 (... NameArea1 (... zip1 (... CellTargetArea1 (... 20 if (presence_or_absence == ABSENCE) { 30 polygon_set = COMPLEMENT (polygon_set); 40} 50 (start_time_ptr, end_time_ptr) = split_log_entries_if_needed (); 60 sum_probability = 0.0; 70 for (i = start_time_ptr; i! = End_time_ptr; i ++) { 80 intersection_area = user_location {i}) polygon_set 90 time_fragment = time_duration {i} / (end_time -start_time); 100 presence_fragment = AREA (intersection_area) / AREA (user_location {i}) 110 net_probability = time_fragment * presence_fragment; 120 sum_probability = sum_probability + net_probability; 130} 140 return (sum_probability> presence_or_absence_probability);
In line 10 of the previous pseudocode, a target zone called "polygon_set" can be defined as a junction (denoted by the “(”) symbol of all zones of different types used to define the target zone. 20 to 40, the target zone can be complemented if the location and time criteria are defined as the user is absent from the target zone (instead of being present in it). The period of time covered by the criteria Location and time can be given for a start time and an end time. On line 50, the location register entries can be divided, if necessary, so that only entries are considered within the period of time covered by the location and time criteria. A variable called “Sum_probability” can store the cumulative probability that the user is within the target zone and It can be initialized to zero on line 60.
Lines 70 to 130 cover a loop to evaluate each entry in the location record within the period of time covered by the location and time criteria. For each entry, a line 80 can be determined intersection zone between the user location polygon for that entry and the target zone. On line 90 the percentage of time covered by the entry can be determined in relation to the time period for the criterion of location and time. In line 100, the amount or percentage of overlap between the user location polygon and target area. On line 110 the probability that the user can be calculated is within the target zone, given the location of the user and the time for the entry. The Cumulative probability that the user is within the target zone can be updated with the probability calculated for entry. The procedure of lines 80 to 120 can be repeated for each registry entry to be evaluated.
After evaluating all the registry entries within a period of time covered by the location criteria and time, on line 140 the cumulative probability can be compared with the specified probability of the presence or absence for the location and time criteria. The result of the comparison can be provided as a result of the location and time criteria.
In another design, the location record can become a histogram, for example as described in above for FIG. 3. Each entry in the histogram can include a polygon and a probability that the user is within the polygon and can be given as {polygon (i), probability (i)}. The sum of the odds
for all entries in the histogram it can be equal to one, or probability i! 1. The polygons for
∗ &∋
i
Histogram entries may not overlap, so polygon {i}) polygon {j} = Null, for i ≠ j. Histogram entries can be evaluated in relation to the target area in a manner similar to that described above for the pseudocode.
As noted above, a target zone can become polygons to facilitate the evaluation of a location and time criteria. A target zone can be defined based on one or more of the formats described above. For certain broadcast information (for example, announcements), consultations based on postal codes may be particularly desirable, because census data from different countries can provide demographic data and income levels for each postal code. In a design, a postal code conversion table can be used to transfer the postal codes to polygons. The conversion table can receive a postal code for a target area and can provide one or more polygons corresponding to the postal code. In general, a conversion table can be used to convert a zone of a first format into a zone of a second format. The first and second formats may be each of the formats described above or of some other format.
In a design, a conversion master table can be saved in a network entity or it can be accessible to the network entity; for example, stored in location database 142 and accessible to server / location center 140 of FIG. 1. The conversion master table can include entries for all areas of interest; for example, for the total coverage of a wireless network and / or a broadcasting network. The terminals can send queries with target zones in the first format to the network entity, which can provide the terminals with zones in the second format.
In another design, a conversion table can be saved in terminal 110. This conversion table may include entries only for the user's local zone, and may be a small subset of the conversion master table. This conversion table may be provisioned in terminal 110 or downloaded to the terminal periodically or based on its past, present and / or future location. The conversion table can be subject to subset extraction according to a location query, downloaded on demand and put into buffer memory using a buffer protocol such as the hypertext transfer protocol (http). The terminal can consult the conversion table to obtain zones of the desired format.
The algorithm given by the previous pseudocode can be used to evaluate the location and time criteria that have given target areas in any format and user information given in any format. Target areas and / or user selection can be converted to a selected format with one or more conversion tables. In a design, the target zones can be converted to the same format as the user's location. In another design, the user's location can be converted to the same format as the target areas. In another additional design, the target zones and the user's location can be converted to a selected format, which may be different from the formats for the target zones and the user's location. For all designs, the algorithm can operate in zones in the selected format instead of in polygons. For example, all references to polygons in the pseudocode can be substituted with zone units in the selected format; for example, with the zip code zone, the sector zone, etc. The algorithm can treat the location register either as a postal code register or as a sector register looking for the user's location in the entire conversion table.
The use of sector ID or postal codes for the target areas and the user's location can avoid the need for geographical calculations and can be accurate enough for many applications. In a design, terminal 110 may maintain a record of sector ID locations of server sectors with which terminal 110 communicated or in which it was waiting, for example, as described above. The target areas for the location and time criteria can also be given by a set of sector IDs. The algorithm given by the previous pseudocode can be simplified when sector IDs are used for user location and target areas. In particular, the calculation of the intersection zone between a polygon for the user's location and a target zone can be substituted with a comparison between the sector ID for the user's location and the sector IDs for the target zone. It can be assumed that the presence fragment is equal to 1.0 if there is a match or that it is equal to 0.0 if there is no match. The calculation can be simplified by using sector IDs for the location of the user and the target areas.
You can define a location and time criteria that covers the location of the user in the past; for example, if a user was in the vicinity of a shopping center in the last two weeks. In this case, appropriate entries can be used in the location register to assess the location and time criteria, as described above.
A location and time criterion that covers the user's location in the future can be defined; For example, if a user will be in the immediate vicinity of a shopping center for a specific period of time next week. The user's location in the future can be predicted in various ways. In a design, the user's future location can be predicted based on the user's past location. This can be achieved by moving or moving the location register forward in time, so that the moved location register covers the time period for a location and time criteria. For example, to determine if the user will be within a given target zone in a given period of time X in the future, the location register can be moved a minimum number of weeks, so that the period X of time is covered by the Recent past in moved location record. In another design, information from calendars and / or appointment books can be used to predict the future location of the user. For example, the user can mark a vacation
imminent or a business trip in a particular city in an appointment book. This information can be used to find out the user's location during the trip period. The future location of the user can also be predicted in other ways.
The location and time criteria that cover the future location of the user can also become location and time criteria that cover the user's past location. for example, a location and time criterion that asks if a user will be in the immediate vicinity of a shopping center next week can be converted into a location and time criteria that inquire if the user was in the vicinity of the shopping center in one or more more recent weeks. The presence of the user in the immediate vicinity of the mall in the recent past may be indicative of a greater likelihood of the user being present in the immediate vicinity in the future.
Broadcast information and broadcast metadata can be sent in various ways. In one design, the broadcast information and the broadcast metadata can be sent by means of the delivery of the broadcasting service according to the OMA standard of mobile broadcasting services (BCAST), which is described in the OMA-TS-BCAST_Services-V1_20090212 documents A, OMA-TS-BCAST_Service_Guide-V1_0-20090212-A and OMA-TS-BCAST_Distribution-V1_0-20090212-A, of public knowledge.
In a design, broadcast metadata can be sent in a service guide. The service guide may include an element that can be used to specify parameters for filtering the associated broadcast information based on location and time. If a match occurs, then a terminal may give higher priority to the reception and presentation to the user of the associated broadcast information.
FIG. 5 shows an exemplary transmission of a service guide that transports metadata, such as a program description, parental and gender qualification information, and time and location criteria. For an OMA BCAST service guide, the component, as shown, represents either a service fragment or a content fragment. A service fragment describes a broadcasting service that can be considered a “TV channel”, while a content fragment describes individual content elements or “programs” that the broadcasting service carries. A broadcast program (or content item) can be a preview of a movie, a newsletter or other type of broadcast information with a particular broadcast schedule. The same service or content fragment can also carry broadcast metadata, for example location and time criteria for the associated service or broadcast content that may be sent after this fragment. Although not shown in FIG. 5, broadcast metadata may include other information, such as language, thematic categories (for example, weather, news, traffic information, emergency information, announcements, etc.), multimedia type (for example, text, video, image , etc.), duration, size, transmission schedule and / or other information related to the associated broadcast information.
The location and time criteria described herein may allow the transmission of broadcast information and / or broadcast metadata before an event related to the broadcast information. The broadcast information may be presented to the user at the time of receipt and / or later. Thus, the moment of delivery of the broadcast information (for example, for announcements, alerts, etc.) can be decoupled from the moment of presentation.
FIG. 6 shows an exemplary broadcast and presentation of broadcast information that contains an announcement of a sale that occurs from 8:00 am to 12:00 pm on a given Saturday. In this example, the broadcast information and the broadcast metadata for the ad can be sent in a distribution window before the sales. This distribution window can be selected to improve the utilization of network resources. In the example shown in FIG. 6, the distribution window is between 2:00 am and 2:30 am during hours outside of Saturday's rush hour. A terminal can download broadcast metadata and broadcast information in the distribution window. If there is a match for the location and time criteria in the broadcast metadata, then the broadcast information may be presented to the user before the sales and / or during the sales.
Sending broadcast information and broadcasting metadata before rebates can (i) prevent or reduce broadcasting during rebates, which may occur during peak traffic hours, and (ii) give users notice of Sale with more advance notice. If the ad is sent during the sales themselves, then the cost of sending the ad may be higher and the notice to users may be given less in advance. Therefore, there may be an advantage in sending the ad ahead of time, which can be filtered with more precise location and time criteria in the broadcast metadata.
FIG. 7 shows a filtering design based on location and time for broadcast information. Terminal 110 may receive a service guide with broadcast metadata (step 1). A broadcast client 710 within terminal 110 may receive the broadcast metadata, extract relevant location and time criteria from the broadcast metadata, and provide the location and time criteria to a location application 730 (step 2). The broadcast client 710 can also analyze the criteria of
location and time and you can go to the 730 location application the target zones and the filtering rules for the location and time criteria.
A location agent 720 may periodically obtain the location of terminal 110, which may be given by the sector ID, a geographic coordinate or some other format. The location agent 720 can provide the location of terminal 110 to the location application 730 (step 3). The location 730 application can keep a record of locations for the user's location. The location application 730 can also predict the future location of the user based on the user's past location, when necessary, as described above. The location application 730 can evaluate the location and time criteria received from the broadcasting client 710 based on the location register (step 4). For example, the location application 730 can calculate the probability of a location behavior based on the target areas and the filtering rules and also using the location register. The location application 730 can implement the algorithm given by the previous pseudocode or by some other algorithm.
The location application 730 can provide the result or decision of the location and time criteria to the broadcasting client 710 (step 5). The broadcast client 710 can determine whether to download and / or present the associated broadcast information based on the decision of the location application 730 (step 6). Thus, broadcasting client 710 can selectively download broadcast information based on the past, present and / or future location of terminal 110.
The filtering techniques based on location and time described herein can be used for various applications. For example, the techniques can be used for one or more of the following applications:
<dl><dt>to. </dt><dd>Advance announcements for a location: for example, an announcement of a reduction in the price of gasoline for drivers traveling to or from work, or to residents and workers in the area, </dd></dl>
<dl><dt>b. </dt><dd>Disaster announcements: for example, notify travelers that they are heading to a certain destination of a fire found there, </dd></dl>
<dl><dt>c. </dt><dd>Meteorological information: for example, notify drivers who are traveling to or from work from torrential rain in certain areas, </dd></dl>
<dl><dt>d. </dt><dd>Traffic information: for example, suggest an alternative route (manual or automatic) for commuting to or from work based on traffic intensity or on the closure of a road or lane on the normal route of travel, </dd></dl>
<dl><dt>and. </dt><dd>Local news while away from home: continue to receive high priority local news based on previous history of home location, </dd></dl>
<dl><dt>F. </dt><dd>Selective advertisements of shopping centers: receive announcements of areas of a shopping center that a buyer has not visited or in whose vicinity is located; for example, to filter them in two separate tails, and</dd></dl>
<dl><dt>g. </dt><dd>Ads for people who are on vacation: for example, receive ads for restaurants for dinner and nightly entertainment related to an area where a user is staying while you can sightsee from this area during the day. </dd></dl>
FIG. 8 shows a design of a procedure 800 for filtering based on location and time. The procedure can be carried out by a terminal (as described in the following) or by some other entity. The terminal can keep a record of its location (block 812). The terminal may obtain a location and time criteria comprising a target zone and a period of time in which the location and time criteria are applied (block 814). The terminal can determine its location during the period of time; for example, based on the record (block 816). The terminal can evaluate the location and time criteria in the target zone and its location during the time period (block 818). The location and time criteria may also comprise a target probability that the terminal is present in the target zone or absent from the target zone and can be expressed as shown in Equation (2). The location and time criteria can also be evaluated based on the target probability. The terminal can determine whether to download and / or present the broadcast information based on the result of the evaluation of the location and time criteria (block 820).
In a design of block 816, the terminal can determine the ID of at least one sector for the target zone. The terminal can also determine the IDs of one or more sectors for its location during the period of time. The terminal can evaluate the location and time criteria based on the ID of at least one sector for the target zone and the IDs of one or more sectors for its location.
In another design of block 816, the terminal can determine at least one polygon for the target zone. The terminal can also determine one or more polygons for its location during the period of time. The terminal can evaluate the location and time criteria based on the at least one polygon for the target zone and the one or more polygons for its location.
In a design, the terminal can obtain at least one entry for its location from the location register. The terminal can determine the probability that it is inside or outside the target zone for each registry entry. The terminal can accumulate at least one probability for the at least one registry entry to obtain a global probability that it is within or outside the target zone, for example, as shown with the previous pseudocode.
The terminal may determine the target zone based on a union of one or more zones, which may be given in one or more formats. The terminal can convert the target zone and / or its location to a selected format. The selected format can represent areas based on the sector ID, zip code, etc. The terminal can download information for a conversion table used to convert the target zone and / or its location to the selected format. The terminal can evaluate the location and time criteria based on the target zone and its location in the selected format.
In a design, the terminal can predict its future location based on its past location. For example, the terminal may transfer its past location in a given amount of time based on the time period for the location and time criteria. The terminal can evaluate the location and time criteria based on its future predicted location.
FIG. 9 shows a design of a procedure 900 for registering the location. The process 900 may be carried out by a terminal (as described in the following) or by some other entity. The terminal can periodically determine its location (block 912). The terminal can determine if there is a change in its location (block 914). The terminal can save its location in a location register if a change of location is detected (block 916). The terminal can also save a time stamp with its location if a change of location is detected (block 918).
In a design of block 912, the terminal can determine its location in each time interval of a particular duration, for example as shown in FIG. 2. The terminal can also determine its location during notification slots in which the terminal detects notifications from a wireless network; for example, as FIG. two. The time interval in which the location of the terminal is determined may cover a particular number of notification cycles, which may reduce the number of entries that must be stored for the location of the terminal.
In a design, the terminal can periodically determine its server sector, which can be used to estimate the location of the terminal. The terminal can determine if there is a change in the server sector of the terminal. The terminator can save a sector ID of the server sector and a time stamp if a change is detected in the server sector.
In a design, the terminal can determine a histogram of its location for a particular duration of time. The histogram may comprise a plurality of input. Each entry can comprise a zone and a percentage of time that the terminal is within the zone.
The terminal may comprise entries for its location in the location register to eliminate redundant location information that is common for entries that are compressed. The terminal can also encrypt entries for its location. In a design, the terminal can encrypt the entire location register except the last entry. The terminal can decrypt the location register and save the decrypted location information in local memory when evaluating a location and time criteria. The terminal can also perform encryption and decryption in other ways.
FIG. 10 shows a design of terminal 110, network 120, server / location center 140 and broadcast center 150 of FIG. 1. For the sake of simplicity, FIG. 10 shows (i) a controller / processor 1010, a memory 1012 and a transmitter / receiver (TMTR / RCVR) 1014 for terminal 110, (ii) a controller / processor 1020, a memory (Mem) 1022, a transmitter / receiver 1024 and a communication unit 1026 (com.) for network 120, (iii) a controller / processor 1030, a memory 1032 and a communication unit 1034 for server / location center 140, and (iv) a controller / processor 1050, a memory 1052 and a communication unit 1054 for the broadcasting center 150. In general, each entity can include any number of controllers, processors, memories, transceivers, communication units, etc.
In the downlink, the base stations of the network 120 can transmit traffic data, broadcast information, broadcast metadata, signaling and pilots to the terminals within their coverage areas. These various types of data can be processed by the processor 1020, conditioned by the transmitter 1024 and transmitted by the downlink. In terminal 110, downlink signals from the base stations can be received by means of an antenna, be conditioned by the receiver 1014 and processed by the processor 1010 to retrieve the various types of information sent by the base stations. The processor 1010 can carry out or direct the procedure 800 of FIG. 8, the procedure 900 of FIG. 9 and / or other procedures for the techniques described in this document. Memories 1012 and 1022 can store codes and program data for terminal 110 and network 120, respectively. On the uplink, terminal 110 can transmit traffic, signaling and pilot data to the base stations of the network
120. These various types of data can be processed by the processor 1010, be conditioned by the transmitter 1014 and transmitted by the uplink. In the network 120, the uplink signals from the terminal 110 and other terminals can be received and conditioned by the receiver 1024 and subsequently processed by the processor 1020 to retrieve the various types of information sent by the terminal. The network 120 can communicate with other network entities through the communication unit 1026.
The broadcasting network 130 may be implemented with one or more transmitters, one or more controllers / processors, one or more memories and one or more communication units that can operate in a similar manner as those in the network 120.
Within the location server / center 140, the processor 1030 can perform the positioning for the terminals, provide assistance data to the terminals, support location services for the terminals and other LCS clients, etc. The 1032 memory can store codes and program data for the location center. The communication unit 1034 may allow the location server / center 140 to communicate with other entities.
Within the broadcast center 150, the processor 1050 can generate and send broadcast information and broadcast metadata. Memory 1052 can store codes and program data for the broadcasting center. The communication unit 1054 may allow the broadcasting center to communicate with other entities.
Those skilled in the art will understand that information and signals can be represented using any of several different technologies and techniques. For example, data, instructions, orders, information, signals, bits, symbols and segments that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles or Any combination thereof.
Those skilled in the art will also appreciate that the various illustrative logic blocks, modules, circuits and algorithm steps described in connection with the disclosure of this document can be implemented as electronic physical support, computer software or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits and stages have been described in the foregoing generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends on the particular application and design limitations imposed on the system as a whole. Those skilled in the art may implement the described functionality in several ways for each particular application, but such implementation decisions should not be construed to cause a departure from the scope of the present disclosure.
The various illustrative logic blocks, modules and circuits described in connection with the disclosure of this document can be implemented or implemented with a general purpose processor, a digital signal processor (DSP), an integrated circuit for specific applications (ASIC), a matrix of on-site programmable doors (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete software components or any combination thereof designed to perform the functions described in this document. A general purpose processor may be a microprocessor, but, alternatively, the processor may be any conventional processor, controller, microcontroller or state machine. A processor can also be implemented as a combination of calculation devices; for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core or any other such configuration.
The steps of a procedure or algorithm described in connection with the disclosure of this document can be directly implemented in physical support, in a software module executed by a processor
or in a combination of both. A software module may reside in RAM, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, a hard disk, a removable disk, a CD-ROM or any other form of storage medium known in the art. . An exemplary storage medium is coupled to the processor such that the processor can read information from the storage medium and write information thereon. Alternatively, the storage medium can be integral to the processor. The processor and storage medium may reside in an ASIC. The ASIC can reside in a user terminal. Alternatively, the processor and the storage medium may reside as differentiated components in a user terminal.
In one or more exemplary designs, the described functions can be implemented in hardware, software, firmware or any combination thereof. If implemented in software, the functions can be stored or transmitted as one or more instructions or code in a computer-readable medium. Computer-readable media includes both computer storage media and communications media, including any media that facilitates the transfer of a computer program from one site to another. A storage medium can be any available medium that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such a computer-readable medium may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, storage in
magnetic disk or other magnetic storage devices, or any other means that can be used to transport or store desired means of program codes in the form of instructions or data structures that can be accessed by a general purpose or special purpose computer or by a general purpose or special purpose processor. In addition, any connection is properly designated as a computer-readable medium. For example, if the software is transmitted from an electronic page, a server or other remote source using a coaxial cable, a fiber optic cable, a twisted pair, a digital subscriber line (DSL) or wireless technologies such as infrared, radio and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL or wireless technologies such as infrared, radio and microwaves are included in the medium definition. Disk (disk or disc in English), as used herein,
10 It includes the compact disc (CD), the laser disc, the optical disc, the digital versatile disc (DVD), the removable diskette and the Blu-ray disc, usually playing the so-called discs in English magnetically the data, while the disks denominated discs in English they reproduce the data optically with lasers. Combinations of the above should also be included within the scope of computer readable media.
fifteen The above disclosure description is provided to allow any person skilled in the art to make or use the disclosure. Various modifications to the disclosure will be immediately apparent to those skilled in the art, and the generic principles defined herein may be applied to other variations. Thus, the disclosure is not intended to be limited to the examples and designs described herein, but should be given the broadest scope consistent with the claims.
twenty following.
8 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8
27 members in 9 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 122681P | United States of America | – | |
| 12268108 | United States of America | P | |
| 636037 | United States of America | – | |
| 63603709 | United States of America | A | |
| 2009067902 | United States of America | W |
Members27
| Document | Office | Kind | |
|---|---|---|---|
| US2010151882A1 | United States of America | A1 | |
| WO2010077821A1 | World Intellectual Property Organization (WIPO) | A1 | |
| TW201036358A | Taiwan Province of China | A | |
| WO2010077821A8 | World Intellectual Property Organization (WIPO) | A8 | |
| KR20110103421A | Republic of Korea | A | |
| EP2374289A1 | European Patent Office (EPO) | A1 | |
| CN102246545A | China | A | |
| JP2012512610A | Japan | A | |
| EP2374289B1 | European Patent Office (EPO) | B1 | |
| ES2399396T3This record | Spain | T3 | |
| EP2579623A1 | European Patent Office (EPO) | A1 | |
| KR101268610B1 | Republic of Korea | B1 | |
| TW201330534A | Taiwan Province of China | A | |
| JP2013240062A | Japan | A | |
| JP5373111B2 | Japan | B2 | |
| TWI431965B | Taiwan Province of China | B | |
| CN103685577A | China | A | |
| JP5722386B2 | Japan | B2 | |
| TWI491197B | Taiwan Province of China | B | |
| CN102246545B | China | B | |
| US9280778B2 | United States of America | B2 | |
| EP2579623B1 | European Patent Office (EPO) | B1 | |
| ES2571337T3 | Spain | T3 | |
| US2016150364A1 | United States of America | A1 | |
| HUE027511T2 | Hungary | T2 | |
| CN103685577B | China | B | |
| US10158970B2 | United States of America | B2 |
Numbers
- Publication
- 2399396
- Application
- 9799220
Titles2
- Spanish
- Registro de ubicación y filtrado basado en la ubicación y en el tiempo
- English
- Location and filtering based on location and time
Classification
- CPC, 11
- H04W4/029
- H04L12/1859
- H04L12/1895
- H04W4/021
- H04W4/027
- H04W4/06
- G06Q30/02
- H04W4/50
- H04W4/02
- H04L67/52
- H04L67/62
- IPC, 7
- H04W4 02
- H04L29 08
- H04L12 18
- G06Q30 02
- H04W4 029
- H04W4 021
- H04W4 50