CN105308567A - Category-based fence - Google Patents
Category-based fence Download PDFInfo
- Publication number
- CN105308567A CN105308567A CN201480032008.4A CN201480032008A CN105308567A CN 105308567 A CN105308567 A CN 105308567A CN 201480032008 A CN201480032008 A CN 201480032008A CN 105308567 A CN105308567 A CN 105308567A
- Authority
- CN
- China
- Prior art keywords
- signal source
- mobile device
- identifier
- fence
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
- H04M1/72457—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/02—Arrangements for optimising operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/33—Services specially adapted for particular environments, situations or purposes for indoor environments, e.g. buildings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Environmental & Geological Engineering (AREA)
- Human Computer Interaction (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
技术领域technical field
本公开整体涉及地理围栏。This disclosure generally relates to geofencing.
背景技术Background technique
一些移动设备具有用于提供基于位置的特征。例如,移动设备可以在移动设备进入或退出地理围栏时执行预先指定的应用程序或呈现特定内容。地理围栏可以由点位置和半径限定。点位置可以具有经度坐标和纬度坐标。移动设备能够通过确定移动设备的估计位置并计算估计位置和点位置之间的距离来确定移动设备已经进入地理围栏或退出地理围栏。基于计算的距离是否超过地理围栏的半径,移动设备能够确定移动设备是否进入或退出地理围栏。移动设备能够利用全球卫星系统(例如,GPS)或蜂窝三角测量技术来确定估计位置,其还包括经度坐标和纬度坐标。Some mobile devices have features for providing location-based information. For example, a mobile device may execute a pre-designated application or present specific content when the mobile device enters or exits a geofence. Geofences can be defined by point locations and radii. Point locations can have longitude and latitude coordinates. The mobile device can determine that the mobile device has entered or exited the geofence by determining an estimated location of the mobile device and calculating a distance between the estimated location and the point location. Based on whether the calculated distance exceeds the radius of the geofence, the mobile device can determine whether the mobile device enters or exits the geofence. The mobile device can utilize a global satellite system (eg, GPS) or cellular triangulation techniques to determine an estimated location, which also includes longitude and latitude coordinates.
发明内容Contents of the invention
描述了基于类别的围栏技术。一种基于类别的围栏可以是由不具有地理位置信息的信号源限定的位置无意识围栏。基于类别的围栏可以对应于一组信号源而不是固定到纬度坐标和经度坐标的点位置。一组信号源可以表示实体的类别,例如,特定连锁企业。每个信号源不需要具有关于信号源或移动设备在哪里的地理信息。类似地,移动设备不需要具有关于信号源在哪里的地理信息。可以将信号源分布到多个离散位置。因此,与该组相关联的基于类别的围栏能够对应于多个位置而不是单个点位置和半径。该组中的每个信号源可以与该组唯一的类别标识符相关联并在该组中的信号源之间是一致的。可以将该类别标识符编程到每个信号源中。在移动设备检测到信号标识符时,移动设备能够通过进入离散位置中的任一位置而进入基于类别的围栏。该移动装置然后可以执行与基于类别的围栏相关联的应用程序。Class-based fencing techniques are described. A category-based fence may be a location-agnostic fence defined by a signal source that does not have geographic location information. Class-based fences may correspond to a set of signal sources rather than point locations fixed to latitude and longitude coordinates. A set of signal sources may represent a class of entities, for example, a particular chain of businesses. Each signal source need not have geographic information about where the signal source or mobile device is. Similarly, mobile devices need not have geographic information about where the source of the signal is. Signal sources can be distributed to multiple discrete locations. Thus, the class-based fence associated with the group can correspond to multiple locations rather than a single point location and radius. Each signal source in the set may be associated with the set of unique category identifiers that are consistent across signal sources in the set. This class identifier can be programmed into each source. When the mobile device detects the signal identifier, the mobile device can enter the class-based fence by entering any of the discrete locations. The mobile device can then execute the application associated with the category-based fence.
可以实施本说明书中所描述的特征以实现以下优点。与常规地理围栏相比,基于类别的围栏允许实施更复杂的基于位置的服务。并非将地理围栏限制到单个点位置和半径,基于类别的围栏可以具有多个位置,它们可以对应于企业、政府或教育实体的分布式运营。例如,位于多个城市的零售连锁店能够为零售连锁店限定基于类别的围栏。基于类别的围栏可以在多个城市的每个城市中具有围栏的一部分。在客户带着移动设备走进任一城市中的任何商店中时,可以触发移动设备上向零售连锁店的客户提供促销信息的同一应用程序。The features described in this specification can be implemented to realize the following advantages. Category-based fencing allows for the implementation of more complex location-based services than conventional geofencing. Rather than limiting geofencing to a single point location and radius, category-based fencing can have multiple locations, which can correspond to distributed operations of a business, government, or educational entity. For example, a retail chain located in multiple cities can define category-based fences for the retail chain. A category based fence may have a portion of the fence in each of multiple cities. The same application on a mobile device that provides promotions to customers of a retail chain can be triggered when a customer walks into any store in any city with a mobile device.
与常规地理围栏相比,基于类别的围栏允许实施更灵活的基于位置的服务。在实施基于类别的围栏的企业迁移时,基于类别的围栏可以改变位置。例如,如果与基于类别的围栏相关联的企业从原来的位置搬到新位置,并不改变地理围栏的纬度坐标和经度坐标并广播该改变,企业可以将信号源从原来位置带到新位置,并完成围栏的改变。类似地,可以完成向基于类别的围栏添加新位置或从基于类别的围栏移除位置而不对围栏重新编程。可以通过在限定基于类别的围栏的组中添加广播与其他信号源广播的相同类别标识符的信号源来完成位置的添加。可以通过关闭该组中的信号源来完成位置的移除。Category-based fencing allows for more flexible implementation of location-based services than conventional geofencing. Category-based fencing can change locations when implementing an enterprise migration of category-based fencing. For example, if a business associated with a category-based fence moves from its original location to a new location, without changing the latitude and longitude coordinates of the geofence and broadcasting the change, the business can bring the source from the original location to the new location, And complete the fence change. Similarly, adding new locations to or removing locations from a category-based fence can be done without reprogramming the fence. The addition of locations may be done by adding sources broadcasting the same category identifier as the other sources in the group defining the category-based fence. Removal of a location can be done by turning off the sources in the group.
与常规地理围栏相比,基于类别的围栏允许更高的间隔尺寸。由于可以由共享类别标识符的多个信号源来限定基于类别的围栏,所以信号源中的每个信号源可以是通信范围短(例如,在考虑到家具、墙壁或人体的衰减时,50米或更低)的低功耗信号源。短范围允许精确限定基于类别的围栏,这继而能够增强用户体验。例如,基于类别的围栏能够仅在客户携带手机进入餐馆时才触发应用以在移动设备上显示餐馆的新菜单。而取决于纬度坐标和经度坐标和GPS信号的常规地理围栏由于周围建筑物导致的GPS信号干扰可能在移动设备的用户不在餐馆时(例如,在用户走过那条街道时)就触发在移动设备上显示菜单。Category-based fencing allows for higher spacing sizes than regular geofencing. Since a class-based fence can be defined by multiple sources sharing a class identifier, each of the signal sources can be of short communication range (e.g., 50 meters when attenuation by furniture, walls, or human bodies is considered) or lower) for low-power signal sources. The short range allows precise definition of category-based fences, which in turn can enhance user experience. For example, a category-based fence could trigger an app to display a restaurant's new menu on a mobile device only when a customer enters the restaurant with their phone. Whereas a conventional geofence, which depends on latitude and longitude coordinates and GPS signals, may be triggered on the mobile device when the user of the mobile device is not at the restaurant (e.g., when the user walks down that street) due to interference with the GPS signal from surrounding buildings. to display the menu.
在附图和以下说明书中阐述了基于类别的围栏的一个或多个实施方式的细节。根据说明书、附图和权利要求,基于类别的围栏的其他特征、方面和优点将显而易见。The details of one or more implementations of category-based fencing are set forth in the accompanying drawings and the description below. Other features, aspects and advantages of category-based fences will be apparent from the description, drawings and claims.
附图说明Description of drawings
图1是示出示例性基于类别的围栏的图示。FIG. 1 is a diagram illustrating an exemplary class-based fence.
图2是示出示例性基于类别的围栏的动态修改的图示。FIG. 2 is a diagram illustrating dynamic modification of an exemplary class-based fence.
图3是示出移动设备的示例性基于类别的围栏子系统的部件的框图。3 is a block diagram illustrating components of an exemplary class-based fence subsystem for a mobile device.
图4是使用基于类别标识符的基于类别的围栏来触发应用程序的示例性过程的流程图。4 is a flowchart of an example process for triggering applications using category-based fences based on category identifiers.
图5是使用基于兴趣点列表的基于类别的围栏来触发应用程序的示例性过程的流程图。5 is a flowchart of an example process for triggering an application using category-based fences based on point-of-interest lists.
图6是创建基于类别的围栏的示例性过程的流程图。6 is a flowchart of an exemplary process for creating a category-based fence.
图7是用于实现创建基于类别的围栏的特征和操作的一种示例性系统架构的框图。7 is a block diagram of an exemplary system architecture for implementing the features and operations of creating category-based fences.
图8是示出实现基于类别的围栏的特征和操作的移动设备的示例性设备架构的框图。8 is a block diagram illustrating an example device architecture of a mobile device that implements the features and operations of category-based fences.
图9是实现基于类别的围栏的特征和操作的移动设备的示例性网络操作环境的框图。9 is a block diagram of an exemplary network operating environment for a mobile device implementing the features and operations of category-based fences.
各附图中的类似参考符号表示类似的元件。Like reference numerals in the various drawings indicate like elements.
具体实施方式detailed description
示例性基于类别的围栏Exemplary class-based fences
图1是示出示例性基于类别的围栏的图示。移动设备102可以是被编程控制以在移动设备102进入基于类别的围栏时执行应用程序的示例性电子设备(例如,平板计算机、膝上型计算机、智能电话或可穿戴计算设备)。可以由一组信号源限定基于类别的围栏,该组信号源例如包括信号源104,106和108。信号源104,106和108中的每个信号源可以是被配置为通过一个或多个预先指定的通信信道来广播标识符的无线信标。在一些具体实施中,信号源104,106和108是射频(RF)发射器。例如,信号源104,106和108可以是符合电气和电子工程师协会(IEEE)802.11u(Wi-FiTM)的信标。在一些具体实施中,信号源104,106和108可以是蓝牙TM低功耗(BLE)或近场通信(NFC)信标。信号源104,106和108可具有相同设备类型或不同设备类型。信号源104,106和108中的每个信号源可以在一个或多个指定的信道上广播标识符。FIG. 1 is a diagram illustrating an exemplary class-based fence. The mobile device 102 may be an exemplary electronic device (eg, a tablet computer, laptop computer, smartphone, or wearable computing device) programmed to execute an application when the mobile device 102 enters a class-based fence. A class-based fence may be defined by a set of signal sources including, for example, signal sources 104 , 106 and 108 . Each of signal sources 104, 106, and 108 may be a wireless beacon configured to broadcast an identifier over one or more pre-designated communication channels. In some implementations, the signal sources 104, 106, and 108 are radio frequency (RF) transmitters. For example, signal sources 104, 106, and 108 may be Institute of Electrical and Electronics Engineers (IEEE) 802.11u (Wi-Fi ™ ) compliant beacons. In some implementations, the signal sources 104, 106, and 108 may be Bluetooth ™ Low Energy (BLE) or Near Field Communication (NFC) beacons. Signal sources 104, 106, and 108 may be of the same device type or of different device types. Each of signal sources 104, 106, and 108 may broadcast an identifier on one or more designated channels.
可以对由信号源104,106和108中的每个信号源所广播的标识符进行编程。标识符的至少一部分可以是通用唯一标识符(UUID)。UUID可以是具有指定大小的数字(例如,128比特)。UUID可以对于一组信号源(例如,信号源104,106和108)是唯一的,并且对于该组中的每个单独信号源104,106或108是一致的。可以通过基于类别的围栏管理器110来对UUID进行编程。基于类别的围栏管理器110可以是计算设备(例如,服务器),其被配置为生成或以其他方式获得UUID并将生成的UUID与实体类别相关联。与类别相关联的UUID将被称为类别标识符(CID)。Identifiers broadcast by each of signal sources 104, 106, and 108 may be programmed. At least a portion of the identifier may be a Universally Unique Identifier (UUID). A UUID can be a number with a specified size (eg, 128 bits). A UUID may be unique to a group of signal sources (eg, signal sources 104, 106, and 108) and be consistent for each individual signal source 104, 106, or 108 in the group. UUIDs can be programmed by the class-based fence manager 110 . Class-based fence manager 110 may be a computing device (eg, a server) configured to generate or otherwise obtain a UUID and associate the generated UUID with an entity class. The UUID associated with a class will be referred to as a class identifier (CID).
基于类别的围栏管理器110能够将与UUID相关联的实体类别限定为具有一个或多个物理存在的组织类别。在一些具体实施中,类别可以是一种类型组织的概括。例如,基于类别的围栏管理器110可以限定类别“杂货店”、“加油站”或“博物馆”。在一些具体实施中,类别可以表示特定组织。例如,基于类别的围栏管理器110可以限定类别“加利福尼亚大学”或“Century12电影院”。在一些具体实施中,基于类别的围栏管理器110可以使CID存储在信号源104,106和108上,作为信号源104,106和108广播的标识符的至少一部分被广播。The class-based fence manager 110 can define entity classes associated with UUIDs as organizational classes having one or more physical presences. In some implementations, a category may be a generalization of a type of organization. For example, the category-based fence manager 110 may define the categories "grocery store," "gas station," or "museum." In some implementations, a category can represent a particular organization. For example, the category-based fence manager 110 may define the categories "University of California" or "Century 12 Cinemas." In some implementations, the class-based fence manager 110 may cause the CID to be stored on the signal sources 104 , 106 , and 108 to be broadcast as at least part of the identifiers broadcast by the signal sources 104 , 106 , and 108 .
基于类别的围栏管理器110可以向应用服务器112提供CID。应用服务器112可以是将应用程序与对应CID相关联的计算设备,该应用程序例如是为一组实体显示广告的程序。应用程序可以是围栏触发的程序,其中进入或退出基于类别的围栏导致程序被激活或去激活。应用服务器112然后可以提供应用程序并将CID关联到移动设备102。The class-based fence manager 110 may provide the CID to the application server 112 . Application server 112 may be a computing device that associates an application program, such as a program that displays advertisements for a group of entities, with a corresponding CID. The application may be a fence-triggered program, where entering or exiting a class-based fence causes the program to be activated or deactivated. The application server 112 can then provide the application and associate the CID to the mobile device 102 .
信号源104,106和108可以在不同且离散的地点放置。例如,信号源104可以放置在地点114处。信号源106和108可以放置在地点116处。信号源104,106和108中的每个信号源可以具有覆盖区域,例如分别为覆盖区域124,126和128。覆盖区域124,126和128中的每个覆盖区域可以是围绕相应信号源的区域,在该区域内可以由移动设备102容易地检测到被相应信号源广播的标识符。覆盖区域124,126和128中的每个覆盖区域的大小可以分别对应于信号源104,106和108的通信范围。覆盖区域124,126和128如图1中圆形区域所示。在各具体实施中,覆盖区域124,126和128可以具有圆形之外的形状,例如,由地点114和116的物理结构限制的不规则形状。覆盖区域124,126和128不需要相同。覆盖区域124,126和128可以充分小,从而是离散的。例如,覆盖区域124,126和128被其信号源的通信范围分别限制在地点114和116的界限内,使得移动设备102能够在地点114处检测到信号源104,但不能在地点114处检测到信号源106或108。在信号源104,106或108中的至少一个信号源开始广播包括CID的标识符时,基于类别的围栏可以工作。Signal sources 104, 106, and 108 may be located at different and discrete locations. For example, signal source 104 may be placed at location 114 . Signal sources 106 and 108 may be placed at location 116 . Each of signal sources 104, 106, and 108 may have a coverage area, such as coverage areas 124, 126, and 128, respectively. Each of coverage areas 124 , 126 , and 128 may be an area surrounding a respective signal source within which an identifier broadcast by the respective signal source may be readily detected by mobile device 102 . The size of each of coverage areas 124, 126, and 128 may correspond to the communication range of signal sources 104, 106, and 108, respectively. Coverage areas 124 , 126 and 128 are shown as circular areas in FIG. 1 . In various implementations, coverage areas 124 , 126 , and 128 may have shapes other than circular, eg, irregular shapes bounded by the physical structure of sites 114 and 116 . Coverage areas 124, 126 and 128 need not be identical. Coverage areas 124, 126, and 128 may be sufficiently small to be discrete. For example, coverage areas 124, 126, and 128 are limited by the communication range of their signal sources within the boundaries of locations 114 and 116, respectively, such that mobile device 102 can detect signal source 104 at location 114 but not detect signal source at location 114. 106 or 108. Class-based fencing may operate when at least one of signal sources 104, 106, or 108 begins broadcasting an identifier including a CID.
在一些具体实施中,基于类别的围栏管理器110能够发布类别和对应CID的列表。以下表1示出了由基于类别的围栏管理器110发布的示例性列表的一部分。In some implementations, the category-based fence manager 110 can publish a list of categories and corresponding CIDs. Table 1 below shows a portion of an exemplary list issued by the category-based fence manager 110 .
表1Table 1
之后,可以通过添加广播类别的CID的新的信号源来扩展基于类别的围栏。例如,在“ABC商店”连锁在某地新开一家“ABC商店”时,可以在新位置处放置新的信号源,该新的信号源被编程以广播如表1中发布的对应CID。通过添加新的信号源并在给定地点处放置新的信号源可以扩展基于类别的围栏而无需向应用服务器112提交给定地点的位置来供移动设备102下载。Afterwards, the class-based fencing can be extended by adding new sources broadcasting class CIDs. For example, when the "ABC Store" chain opens a new "ABC Store" in a certain location, a new signal source may be placed at the new location, programmed to broadcast the corresponding CID as published in Table 1. Category-based fences can be extended by adding new signal sources and placing new signal sources at a given location without submitting the location of a given location to the application server 112 for download by the mobile device 102 .
移动设备102能够从应用服务器112获取围栏触发的应用程序,以及关联的CID。在无线子系统(例如,无线处理器和存储控制无线处理器的软件的存储器)的状态在M次扫描中从(1)未检测到基于类别的围栏的信号源变为(2)检测到基于类别的围栏的一个或多个源例如信号源104时,移动设备102能够检测到进入基于类别的围栏,其中M是预先指定的进入阈值次数。在无线子系统的状态在N次扫描中从(1)检测到基于类别的围栏的一个或多个源变化成(2)未检测基于类别的围栏的信号源例如信号源104,106或108中的任一个信号源时,移动设备102能够检测到离开基于类别的围栏,其中N是预先指定的退出阈值次数。在各具体实施中,进入阈值M可以比退出阈值N大、与退出阈值N相同或比退出阈值N小。检测可以包括从信号源104,106或108接收CID。The mobile device 102 can obtain the fence-triggered application, and the associated CID, from the application server 112 . In M scans the state of the wireless subsystem (e.g., the wireless processor and the memory storing the software that controls the wireless processor) changes from (1) no detection of a source based on a class-based fence to (2) detection of a source based on The mobile device 102 is capable of detecting entry into a category-based fence when one or more sources of the category-based fence, such as the signal source 104, are entered, where M is a pre-specified threshold number of entries. The state of the wireless subsystem changes from (1) detecting one or more sources of class-based fences to (2) not detecting a source of class-based fences such as any of signal sources 104, 106, or 108 in N scans A signal source, the mobile device 102 is able to detect exiting a category-based fence, where N is a pre-specified threshold number of exits. In various implementations, the entry threshold M can be greater than, the same as, or smaller than the exit threshold N. Detecting may include receiving a CID from signal source 104 , 106 or 108 .
在一些具体实施中,在移动设备102的应用子系统(例如,应用处理器和存储控制应用处理器的软件的存储器)处于“睡眠”(例如,省电)模式中时,可以由无线子系统执行对进入或退出的检测。在检测到进入或退出时,无线子系统能够激活应用子系统,并通知应用子系统,包括向应用子系统提供CID。应用子系统然后可以基于CID来激活或去激活围栏触发的应用程序。In some implementations, while the applications subsystem (e.g., an applications processor and memory storing software that controls the applications processor) of the mobile device 102 is in a "sleep" (e.g., power saving) mode, the wireless subsystem may Detection of entry or exit is performed. Upon detection of entry or exit, the wireless subsystem can activate the application subsystem and notify the application subsystem, including providing a CID to the application subsystem. The application subsystem can then activate or deactivate the fence-triggered application based on the CID.
例如,移动设备102可以进入地点114。在进入时,移动设备102的无线子系统能够检测到来自信号源104的包括标识符的信号。移动设备102的无线子系统能够确定标识符的至少一部分匹配移动设备102的无线子系统处注册的CID。移动设备102的无线子系统然后能够通知移动设备102的应用子系统,该应用子系统继而能够激活(例如,执行)围栏触发的应用程序。即使在地点114和地点116彼此远离时,移动设备102也能够激活地点114或地点116中的任一个地点中的围栏触发的应用程序。此外,即使例如由于室内没有GPS信号或由于为省电而关闭了移动设备102的定位子系统,在移动设备102不能确定移动设备102的估计地理位置时,移动设备102也能够在地点114或地点116中的任一个地点中激活围栏触发的应用程序。For example, mobile device 102 may enter location 114 . Upon entry, the wireless subsystem of the mobile device 102 can detect a signal from the signal source 104 that includes the identifier. The wireless subsystem of the mobile device 102 can determine that at least a portion of the identifier matches a CID registered at the wireless subsystem of the mobile device 102 . The wireless subsystem of the mobile device 102 can then notify the application subsystem of the mobile device 102, which in turn can activate (eg, execute) the fence-triggered application. Mobile device 102 can activate a fence-triggered application in either location 114 or location 116 even when location 114 and location 116 are remote from each other. Furthermore, mobile device 102 can be at location 114 or location 114 when mobile device 102 is unable to determine an estimated geographic location of mobile device 102 even if the location subsystem of mobile device 102 is turned off, for example, because there is no GPS signal indoors or to conserve power. Activate the fence-triggered app in any of the 116 locations.
图2是示出示例性基于类别的围栏的动态修改的图示。在示例性基于类别的围栏中,一开始,可以将具有覆盖区域124的信号源104放置在地点114处。信号源104能够广播CID,例如,与表1的类别“ABC商店”相关联的CID。类别“ABC商店”可以是连锁商店,包括多家实体店,其中之一位于地点114处。FIG. 2 is a diagram illustrating dynamic modification of an exemplary class-based fence. In an exemplary category-based fence, initially, a signal source 104 with a coverage area 124 may be placed at a location 114 . Signal source 104 can broadcast a CID, eg, a CID associated with the category "ABC store" of Table 1 . The category "ABC store" may be a chain of stores, including multiple brick and mortar stores, one of which is located at location 114 .
地点114处的实体店可能搬迁到新地点202。地点202可以是比地点114大的室外或室内场所,并且距地点114足够远,使得如果移动设备102位于地点202处,当信号源104位于地点114处时,移动设备102不能检测到来自信号源104的信号。The physical store at location 114 may be relocated to new location 202. Location 202 may be an outdoor or indoor location that is larger than location 114 and far enough away from location 114 that if mobile device 102 is located at location 202, mobile device 102 cannot detect signals from a signal source 104 when located at location 114. 104 signal.
基于类别“ABC商店”的围栏可能由于实体店的重新定位和地点大小的增大而变化。可以通过将信号源104从地点114移动到地点202来促进基于类别的围栏对应于商店位置变化的第一变化。可以通过添加更多信号源来促进基于类别的围栏对应于地点大小增大的第二变化。例如,信号源104可以是低功耗RF设备(例如,发射功率不超过10毫瓦(mW)的BLE信标)。信号源104的覆盖区域124可以足以覆盖地点114,但不足以覆盖地点202的全部。可以向基于类别的围栏添加附加的信号源204,206,208和210。信号源204,206,208和210可以是低功耗RF设备。在组合时,信号源104,204,206,208和210的覆盖区域124,214,216,218和220分别可以足以基本覆盖地点202的整体。信号源104,204,206,208和210可以各自存储与类别“ABC商店”相关联的CID,并被配置为广播该CID作为信标信号。Fences based on the category "ABC store" may change due to relocation of brick and mortar stores and increase in location size. A first change in category-based fences corresponding to a change in store location may be facilitated by moving signal source 104 from location 114 to location 202 . A second variation of category-based fencing corresponding to increased location size can be facilitated by adding more signal sources. For example, signal source 104 may be a low power RF device (eg, a BLE beacon that transmits no more than 10 milliwatts (mW)). The coverage area 124 of the signal source 104 may be sufficient to cover the location 114 but not sufficient to cover the entirety of the location 202 . Additional signal sources 204, 206, 208, and 210 may be added to the category-based fence. Signal sources 204, 206, 208 and 210 may be low power RF devices. When combined, the coverage areas 124 , 214 , 216 , 218 and 220 of the signal sources 104 , 204 , 206 , 208 and 210 , respectively, may be sufficient to cover substantially the entirety of the location 202 . Signal sources 104, 204, 206, 208, and 210 may each store a CID associated with the category "ABC store" and be configured to broadcast the CID as a beacon signal.
在信号源104,204,206,208和210开始在新地点202处广播CID时,基于类别“ABC商店”的已变化围栏可以工作。在移动设备102进入地点202时,移动设备102能够检测来自信号源104,204,206,208和210中的任一个信号源的信号,并且在检测到时,触发与CID相关联的应用程序。触发的应用程序可以与信号源104位于地点114处时,移动设备102能够检测到来自信号源104的信号时,移动设备102将在地点114处触发的应用程序相同。例如,移动设备102先前在地点114处触发的应用程序和移动设备102在地点处现在触发的应用程序能够导致在移动设备102的屏幕224上显示用户界面222。无论具体商店物理上位于何处,用户界面222可以是与类别“ABC商店”相关联的用户界面。例如,用户界面222可以包括对于所有ABC商店通用的“欢迎来ABC商店”的消息,以及促销物品226和228。When the sources 104, 204, 206, 208 and 210 start broadcasting the CID at the new location 202, the changed fence based on the category "ABC store" may work. When mobile device 102 enters location 202, mobile device 102 can detect a signal from any of signal sources 104, 204, 206, 208, and 210 and, upon detection, trigger an application associated with the CID. The triggered application may be the same application that the mobile device 102 will trigger at the location 114 when the mobile device 102 is able to detect a signal from the signal source 104 when the signal source 104 is located at the location 114 . For example, an application previously triggered by mobile device 102 at location 114 and an application now triggered by mobile device 102 at location can result in user interface 222 being displayed on screen 224 of mobile device 102 . Regardless of where the particular store is physically located, the user interface 222 may be a user interface associated with the category "ABC store." For example, user interface 222 may include a "Welcome to ABC Store" message common to all ABC stores, as well as promotional items 226 and 228 .
示例性设备部件Exemplary Equipment Parts
图3是示出移动设备102的示例性基于类别的围栏子系统302的部件的框图。基于类别的围栏子系统302可以包括应用子系统304。应用子系统304可以包括被配置为执行应用程序的一个或多个处理器(例如,应用处理器)。应用子系统304可以包括应用服务器界面306。应用服务器界面306是应用子系统304的部件,其包括硬件和软件并且被配置为与应用服务器(例如,应用服务器112)通信并接收(例如,通过下载)一个或多个应用程序。通过应用服务器界面306接收的每个应用程序可以与CID相关联,并被配置为通过进入或退出与CID相关联的基于类别的围栏而被触发。FIG. 3 is a block diagram illustrating components of an example class-based fence subsystem 302 of the mobile device 102 . Class-based fence subsystem 302 may include application subsystem 304 . Application subsystem 304 may include one or more processors (eg, application processors) configured to execute application programs. Application subsystem 304 may include application server interface 306 . Application server interface 306 is a component of application subsystem 304 that includes hardware and software and is configured to communicate with an application server (eg, application server 112 ) and receive (eg, by downloading) one or more application programs. Each application received through the application server interface 306 may be associated with a CID and configured to be triggered by entering or exiting a class-based fence associated with the CID.
应用子系统304可以包括应用管理器308。应用管理器308可以是应用子系统的被配置为存储、激活或去激活围栏触发的应用程序的部件。例如,应用管理器308能够存储和管理围栏触发的应用程序310和312。围栏触发的应用程序310和312中的每个应用程序可以与对应的CID和规范相关联。该规范能够规定,在移动设备102进入或退出对应的基于类别的围栏时,应当激活或去激活围栏触发的应用程序310或312。Application subsystem 304 may include application manager 308 . Application manager 308 may be a component of the application subsystem configured to store, activate or deactivate fence-triggered applications. For example, application manager 308 can store and manage fence-triggered applications 310 and 312 . Each of fence-triggered applications 310 and 312 may be associated with a corresponding CID and specification. The specification can specify that a fence-triggered application 310 or 312 should be activated or deactivated when the mobile device 102 enters or exits the corresponding class-based fence.
应用管理器308能够向无线子系统320注册CID。无线子系统320是基于类别的围栏子系统302的部件,其可以包括天线、无线处理器(例如,基带处理器)和软件或固件。无线子系统320可以包括CID注册表322。CID注册表322可以存储用于扫描的一个或多个CID。无线子系统320可以包括信号源接口324。信号源接口324是无线子系统320的部件,其被配置为针对来自信号源的信号扫描一个或多个通信信道,检测来自在扫描中检测到的信号的信号源标识符,并将检测到的信号源标识符与CID注册表322中存储的CID匹配。无线子系统320可以包括被配置为存储进入阈值(M)、退出阈值(N)或两者的扫描参数注册表326。信号源接口324可以在至少M次扫描中检测到或在至少N次扫描中未检测到匹配CID中的一个CID的信号源标识符时生成通知。无线子系统320可以向应用子系统304提供通知。通知可以包括针对其检测到匹配的一个或多个CID。The application manager 308 can register the CID with the wireless subsystem 320 . Wireless subsystem 320 is a component of class-based fence subsystem 302, which may include an antenna, a wireless processor (eg, a baseband processor), and software or firmware. Wireless subsystem 320 may include CID registry 322 . CID registry 322 may store one or more CIDs used for scanning. Wireless subsystem 320 may include signal source interface 324 . Signal source interface 324 is a component of wireless subsystem 320 that is configured to scan one or more communication channels for signals from a signal source, detect signal source identifiers from signals detected in the scan, and convert the detected The signal source identifier matches a CID stored in the CID registry 322 . Wireless subsystem 320 may include a scan parameter registry 326 configured to store entry thresholds (M), exit thresholds (N), or both. The signal source interface 324 may generate a notification when a signal source identifier matching one of the CIDs is detected in at least M scans or not detected in at least N scans. Wireless subsystem 320 may provide notifications to application subsystem 304 . The notification may include one or more CIDs for which a match was detected.
在接收到通知时,应用子系统304可以确定是否激活(例如,执行)或去激活(例如从执行中退出)应用程序310或312。在激活应用程序时,应用程序可以通过用户界面管理器328呈现用户界面项目。用户界面管理器328可以是移动设备102的部件,其被配置为与用户交互,例如,通过向用户显示内容并从用户接收触摸或语音输入。用户界面项目可以是视觉项目(例如,屏幕上显示的欢迎消息)、音频项目(例如,合成或录制的语音消息)或物理项目(例如,移动设备102振动以提醒用户)。Upon receiving the notification, application subsystem 304 can determine whether to activate (eg, execute) or deactivate (eg, exit from execution) application 310 or 312 . The application may present user interface items through the user interface manager 328 upon activation of the application. User interface manager 328 may be a component of mobile device 102 that is configured to interact with a user, eg, by displaying content to the user and receiving touch or voice input from the user. User interface items may be visual items (eg, a welcome message displayed on a screen), audio items (eg, a synthesized or recorded voice message), or physical items (eg, mobile device 102 vibrating to alert the user).
示例性过程exemplary process
图4是基于类别标识符使用基于类别的围栏来触发应用程序的示例性过程400的流程图。可以由移动设备102执行过程400。4 is a flowchart of an example process 400 for triggering applications based on category identifiers using category-based fences. Process 400 can be performed by mobile device 102 .
移动设备102能够通过应用服务器接口306从应用服务器接收(402)应用程序。应用程序可以是在进入基于类别的围栏时待被激活的围栏触发的应用程序。基于类别的围栏可以由多个信号源限定并对应于多个信号源。基于类别的围栏可以与包括信号源的信号源组的标识符(例如,CID)相关联。标识符可以包括对于该组而言唯一但由该组中的每个信号源共享并由对应信号源作为信标信号广播的UUID。Mobile device 102 is capable of receiving ( 402 ) an application from an application server through application server interface 306 . The application may be an application to be triggered by the fence being activated upon entering a category-based fence. Class-based fences may be defined by and correspond to multiple signal sources. A class-based fence may be associated with an identifier (eg, a CID) of a signal source group that includes the signal source. The identifier may comprise a UUID unique to the group but shared by each source in the group and broadcast by the corresponding source as a beacon signal.
基于类别的围栏可以分布于多个离散地理位置中。每个离散地理位置可以对应于该组中的信号源中的一个或多个信号源。信号源组中的每个信号源可以是发射功率低于发射功率阈值的低功耗信号发射器(例如,BLE信标或NFC信标)或基于针对移动无线通信的IEEE802.11u技术标准的无线信标。Class-based fences can be distributed across multiple discrete geographic locations. Each discrete geographic location may correspond to one or more of the signal sources in the set. Each signal source in the signal source group can be a low-power signal transmitter (for example, a BLE beacon or an NFC beacon) with a transmission power lower than a transmission power threshold or a wireless communication device based on the IEEE802.11u technical standard for mobile wireless communication. beacon.
移动设备102能够注册(404)与基于类别的围栏相关联的标识符,以利用应用管理器308进行监测。注册标识符可以包括在移动设备102的无线子系统320的CID注册表322中存储标识符。The mobile device 102 can register ( 404 ) the identifier associated with the category-based fence for monitoring with the application manager 308 . Registering the identifier may include storing the identifier in the CID registry 322 of the wireless subsystem 320 of the mobile device 102 .
移动设备102能够利用信号源接口324来检测(406)来自信号源的信号。信号可以包括匹配注册的标识符的信号源标识符。信号的检测可以基于进入阈值。The mobile device 102 can utilize the signal source interface 324 to detect (406) a signal from the signal source. The signal may include a signal source identifier matching a registered identifier. The detection of the signal may be based on an entry threshold.
移动设备102能够基于信号源接口324检测到的信号标识符和CID注册表322中存储的CID之间的匹配来确定(408)移动设备102已经进入基于类别的围栏的离散地理位置中的一个位置。确定移动设备102已经进入离散地理位置中的一个位置还可以基于利用应用管理器308和移动设备102的一个或多个位置处理器确定移动设备102已经从室外状态过渡到室内状态。确定过渡可以包括例如确定移动设备102已经失去对GPS信号的接收。The mobile device 102 can determine (408) that the mobile device 102 has entered one of the discrete geographic locations of the category-based fence based on a match between the signal identifier detected by the signal source interface 324 and the CID stored in the CID registry 322 . Determining that mobile device 102 has entered one of the discrete geographic locations may also be based on determining, utilizing application manager 308 and one or more location processors of mobile device 102 , that mobile device 102 has transitioned from an outdoor state to an indoor state. Determining the transition can include, for example, determining that the mobile device 102 has lost reception of GPS signals.
移动设备102能够在确定移动设备102已经进入离散地理位置中的一个位置时利用应用管理器308激活(410)应用程序。在一些具体实施中,在确定移动设备102已经进入离散地理位置中的一个位置之后,移动设备102能够执行用于检测围栏退出的操作。移动设备102能够针对信号源来扫描通信信道,并从每次扫描中接收到的信号确定一个或多个信号源标识符。移动设备102能够针对至少阈值次数的扫描确定每次扫描中接收到的一个或多个信号源标识符中没有任一个信号源标识符匹配注册的标识符。移动设备102然后能够确定移动设备102已经退出基于类别的围栏并退出了应用程序。The mobile device 102 can utilize the application manager 308 to activate (410) the application upon determining that the mobile device 102 has entered one of the discrete geographic locations. In some implementations, upon determining that the mobile device 102 has entered one of the discrete geographic locations, the mobile device 102 can perform operations for detecting a fence exit. The mobile device 102 can scan the communication channel for signal sources and determine one or more signal source identifiers from the signals received in each scan. The mobile device 102 can determine for at least a threshold number of scans that none of the one or more signal source identifiers received in each scan match a registered identifier. The mobile device 102 can then determine that the mobile device 102 has exited the class-based fence and exited the application.
图5是基于兴趣点列表使用基于类别的围栏来触发应用程序的示例性过程500的流程图。可以由移动设备102执行过程500。5 is a flowchart of an example process 500 for triggering an application based on a list of points of interest using category-based fences. Process 500 can be performed by mobile device 102 .
移动设备102能够确定(502)移动设备102的估计位置。该估计位置可以包括地理区域,例如,城市或直径X千米的地理区域。移动设备102能够使用GPS信号或无线三角测量来确定估计位置。The mobile device 102 can determine ( 502 ) an estimated location of the mobile device 102 . The estimated location may include a geographic area, eg, a city or a geographic area of X kilometers in diameter. The mobile device 102 can use GPS signals or wireless triangulation to determine the estimated location.
移动设备102可以基于地理区域和类别标识符(CID)来确定(504)兴趣点数据库。CID可以与一组信号源相关联。移动设备102能够基于用户输入类别(例如,“杂货店”)和类别及对应CID的公布列表来指定该类别标识符。兴趣点数据库能够存储该组中的信号源的信号源标识符。该组中的信号源可以是放置在地理区域内的离散位置处的无线信标。CID可以由该组中的信号源共享并且由信号源广播。此外,每个信号源可以广播带有CID的各个标识符。单个标识符和CID能够形成信号源的信标广播有效载荷。The mobile device 102 can determine (504) a point-of-interest database based on the geographic area and category identifier (CID). A CID can be associated with a set of signal sources. The mobile device 102 can specify the category identifier based on a user input category (eg, "grocery store") and a published listing of categories and corresponding CIDs. The point-of-interest database can store signal source identifiers for the signal sources in the group. The signal sources in the group may be wireless beacons placed at discrete locations within the geographic area. The CID may be shared by the sources in the group and broadcast by the sources. Additionally, each source can broadcast an individual identifier with a CID. A single identifier and CID can form the source's beacon broadcast payload.
移动设备102可以通过信道扫描来检测(506)信号源标识符。信道扫描可以包括利用移动设备102的无线子系统320调谐到信号源可用的频率信道中,确定是否可以在信道中接收信号,以及何时接收信号,以及确定信号中是否有信号源标识符。The mobile device 102 can detect (506) the signal source identifier by channel scanning. Channel scanning may include using the wireless subsystem 320 of the mobile device 102 to tune into a frequency channel available to a signal source, determine if and when a signal can be received on the channel, and determine whether a signal source identifier is present in the signal.
移动设备102能够确定(508)检测到的信号源标识符的至少一部分匹配兴趣点数据库中存储的CID。该部分可以是信号源标识符的UUID部分。移动设备102然后可以基于匹配来激活(510)与CID相关联的应用程序。The mobile device 102 can determine (508) that at least a portion of the detected signal source identifier matches a CID stored in the point-of-interest database. This part may be the UUID part of the signal source identifier. The mobile device 102 can then activate (510) the application associated with the CID based on the match.
在一些具体实施中,移动设备102可以确定(512)退出围栏。该退出围栏可以是围绕该地理区域的基于类别的围栏。移动设备102然后可以通过例如利用GPS信号来确定移动设备102不再位于移动设备102初始所处的城市来确定已经发生从退出围栏的退出。在确定退出时,移动设备102能够确定存储信号源标识符新列表的新兴趣点数据库。例如,当移动设备102已确定移动设备102已经从第一城市移动到第二城市时,移动设备102能够注册与位于第二城市中的“杂货店”类别对应的信号源标识符列表,并在新列表中扫描发现信号源标识符。In some implementations, the mobile device 102 can determine (512) to exit the fence. The exit fence may be a category-based fence surrounding the geographic area. The mobile device 102 may then determine that an exit from the exit fence has occurred by, for example, utilizing the GPS signal to determine that the mobile device 102 is no longer located in the city in which the mobile device 102 was originally located. Upon determining to opt out, the mobile device 102 can determine a new point-of-interest database storing a new list of signal source identifiers. For example, when mobile device 102 has determined that mobile device 102 has moved from a first city to a second city, mobile device 102 can register a list of signal source identifiers corresponding to the category "grocery store" located in the second city, and Scan for source identifiers in the new list.
图6是创建基于类别的围栏的示例性过程600的流程图。过程600可以由包括一个或多个处理器的系统执行,例如,包括基于类别的围栏管理器110或应用服务器112或两者的系统。FIG. 6 is a flowchart of an exemplary process 600 of creating a category-based fence. Process 600 may be performed by a system including one or more processors, eg, a system including class-based fence manager 110 or application server 112 or both.
该系统可以将唯一标识符与应用程序相关联(602)。该唯一标识符(例如,CID)可以表示基于类别的围栏。当移动设备102进入基于类别的围栏时,可以在移动设备102上激活该应用程序。The system can associate a unique identifier with an application (602). The unique identifier (eg, CID) may represent a category-based fence. The application may be activated on the mobile device 102 when the mobile device 102 enters the category-based fence.
该系统可以使(604)唯一标识符的表示存储在多个信号源上。信号源可以是发射功率低于发射功率阈值的低功耗信号发射器或基于针对移动无线通信的IEEE802.11u技术标准的无线信标。The system may cause (604) the representation of the unique identifier to be stored on a plurality of signal sources. The signal source may be a low-power signal transmitter whose transmission power is lower than a transmission power threshold or a wireless beacon based on the IEEE802.11u technical standard for mobile wireless communication.
该系统可以使用多个离散位置来限定(606)基于类别的围栏。限定基于类别的围栏可以包括使信号源分布到离散位置。当位于第一位置处的第一信号源的指定通信范围不达到第二信号源所位于的第二位置时,位置是离散的,或彼此不连接的。系统可以独立于纬度坐标或经度坐标来限定基于类别的围栏。例如,系统可以不利用每个离散位置的纬度坐标或经度坐标限定基于类别的围栏。The system can define (606) a category-based fence using a number of discrete locations. Defining class-based fences may include distributing signal sources to discrete locations. When the designated communication range of a first signal source located at a first location does not reach a second location where a second signal source is located, the locations are discrete, or not connected to each other. The system can define category-based fences independently of latitude or longitude coordinates. For example, the system may not define category-based fences with latitude or longitude coordinates for each discrete location.
系统可以使(608)移动设备102在移动设备102在任何离散位置处检测到唯一标识符时激活应用程序。使移动设备102激活应用程序可以包括与唯一标识符相关联地向移动设备102提供应用程序,并将应用程序指定为在移动设备102进入或退出基于类别的围栏时被触发的应用程序。The system can cause (608) the mobile device 102 to activate the application when the mobile device 102 detects the unique identifier at any discrete location. Enabling mobile device 102 to activate the application may include providing the application to mobile device 102 in association with the unique identifier and designating the application as the application that is triggered when mobile device 102 enters or exits the category-based fence.
在一些具体实施中,该系统可以通过添加新的离散位置来扩展基于类别的围栏。添加新的离散位置可以包括使附加的信号源存储特定于该类别的唯一标识符,并使附加的信号源被放置在新的离散位置处并广播唯一标识符。In some implementations, the system can extend category-based fences by adding new discrete locations. Adding a new discrete location may include having the additional signal source store a unique identifier specific to the category, and having the additional signal source be placed at the new discrete location and broadcast the unique identifier.
示例性系统架构Exemplary System Architecture
图7是用于实现创建基于类别的围栏的特征和操作的示例性系统架构700的框图。也可以有其他架构,包括具有更多或更少部件的架构。在一些具体实施中,架构700包括一个或多个处理器702(例如,双核 处理器)、一个或多个输出设备704(例如LCD)、一个或多个网络接口706、一个或多个输入设备708(例如,鼠标、键盘、触敏显示器)以及一个或多个计算机可读介质712(例如RAM、ROM、SDRAM、硬盘、光盘、闪存存储器等)。这些部件可以经由一个或多个通信通道710(例如总线)来交换通信和数据,该通信通道710可利用各种硬件和软件来促进部件之间的数据和控制信号的传输。7 is a block diagram of an exemplary system architecture 700 for implementing the features and operations of creating category-based fences. Other architectures are also possible, including architectures with more or fewer components. In some implementations, architecture 700 includes one or more processors 702 (e.g., dual-core processor), one or more output devices 704 (e.g., LCD), one or more network interfaces 706, one or more input devices 708 (e.g., mouse, keyboard, touch-sensitive display), and one or more computer-readable Media 712 (eg, RAM, ROM, SDRAM, hard disk, optical disk, flash memory, etc.). These components may exchange communications and data via one or more communication channels 710 (eg, buses), which may utilize various hardware and software to facilitate the transfer of data and control signals between the components.
术语“计算机可读介质”是指参与向处理器702提供指令以供执行的任何介质,包括但不限于:非易失性介质(例如光盘或磁盘)、易失性介质(例如存储器)和传输介质。传输介质包括但不限于同轴电缆、铜线和光纤。The term "computer-readable medium" refers to any medium that participates in providing instructions to processor 702 for execution, including, but not limited to, nonvolatile media (such as optical or magnetic disks), volatile media (such as memory), and transmission medium. Transmission media include, but are not limited to, coaxial cables, copper wire and fiber optics.
计算机可读介质712还可以包括操作系统714(例如,Macserver、Windows)、网络通信模块716、应用配置单元720、CID分布单元730和类别发布单元740。应用配置单元720可以包括用于使处理器702获得CID(通过生成CID或从UUID源接收CID)并将每个CID与应用程序相关联的指令。CID分布单元730可以包括用于使处理器702向一个或多个信号源提供CID以在信号源上存储的指令。类别发布单元740可以包括用于使处理器702发布一个或多个类别和对应CID的列表的指令,以允许动态扩展或改变基于类别的围栏。操作系统714可以是多用户、多处理、多任务、多线程、实时的等等。操作系统714执行基本任务,包括但不限于:识别来自设备706,708的输入并向设备706,708提供输出;保持跟踪并管理计算机可读介质712(例如,存储器或存储设备)上的文件和目录;控制外围设备;以及管理一个或多个通信信道710上的流量。网络通信模块716包括用于建立和维持网络连接的各种部件(例如用于实现诸如TCP/IP、HTTP等之类的通信协议的软件)。Computer-readable media 712 may also include an operating system 714 (e.g., Mac server, Windows ), network communication module 716, application configuration unit 720, CID distribution unit 730 and category publishing unit 740. Application configuration unit 720 may include instructions for causing processor 702 to obtain CIDs (either by generating CIDs or receiving CIDs from a UUID source) and associating each CID with an application program. CID distribution unit 730 may include instructions for causing processor 702 to provide a CID to one or more signal sources for storage on the signal source. Category publishing unit 740 may include instructions for causing processor 702 to publish a list of one or more categories and corresponding CIDs to allow dynamic expansion or changes of category-based fences. Operating system 714 may be multi-user, multi-processing, multi-tasking, multi-threaded, real-time, and the like. The operating system 714 performs basic tasks including, but not limited to: recognizing input from and providing output to the devices 706, 708; keeping track of and managing files and directories on the computer-readable medium 712 (e.g., memory or storage); controlling peripheral device; and managing traffic on one or more communication channels 710. The network communication module 716 includes various components for establishing and maintaining network connections (eg, software for implementing communication protocols such as TCP/IP, HTTP, etc.).
架构700可在并行处理或对等基础结构中实现或者在具有一个或多个处理器的单个设备上实现。软件可包括多个软件部件或者可以是单个代码主体。Architecture 700 may be implemented in a parallel processing or peer-to-peer infrastructure or on a single device with one or more processors. Software may comprise multiple software components or may be a single body of code.
所描述的特征可有利地在能够在可编程系统上执行的一个或多个计算机程序中实现,该可编程系统包括至少一个输入设备、至少一个输出设备以及被耦接以从数据存储系统接收数据和指令并且将数据和指令发送到数据存储系统的至少一个可编程处理器。计算机程序是在计算机中可以直接或间接使用以执行某种活动或者产生某种结果的指令集。计算机程序能够以包括编译和解释语言在内的任何形式的编程语言(例如Objective-C、Java)来编程,并且其能够以任何形式部署,包括作为独立程序或者作为模块、部件、子例程、基于浏览器的web应用、或适于在计算环境中使用的其它单元。The described features may advantageously be implemented in one or more computer programs executable on a programmable system comprising at least one input device, at least one output device, and coupled to receive data from a data storage system and instructions and send the data and instructions to at least one programmable processor of the data storage system. A computer program is a set of instructions that can be used directly or indirectly in a computer to perform a certain activity or produce a certain result. A computer program can be programmed in any form of programming language (e.g., Objective-C, Java), including compiled and interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, A browser-based web application, or other unit suitable for use in a computing environment.
例如,用于执行指令的程序的合适处理器包括通用微处理器和专用微处理器两者,以及任何类型的计算机的多个处理器或内核中的一者或者唯一的处理器。一般来讲,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器。通常,计算机还将包括用于存储数据文件的一个或多个大容量存储设备或被操作性耦接以与一个或多个大容量存储设备通信;此类设备包括磁盘,例如内部硬盘和可移动磁盘;磁光盘;和光盘。适于有形地实现计算机程序指令和数据的存储设备包括所有形式的非易失性存储器,例如包括半导体存储器设备,诸如EPROM、EEPROM、和闪存存储器设备;诸如内部硬盘和可移动磁盘的磁盘;磁光盘;和CD-ROM和DVD-ROM盘。处理器和存储器可由ASIC(专用集成电路)补充,或者被并入ASIC中。Suitable processors for the execution of a program of instructions include, by way of example, both general and special purpose microprocessors, and the one or only processor of multiple processors or cores of any kind of computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memories for storing instructions and data. Typically, a computer will also include or be operatively coupled to communicate with one or more mass storage devices for storing data files; such devices include magnetic disks, such as internal hard drives and removable Magnetic disks; Magneto-optical disks; and Optical disks. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magnetic compact discs; and CD-ROM and DVD-ROM discs. The processor and memory can be supplemented by, or incorporated into, an ASIC (Application Specific Integrated Circuit).
为了提供与用户的交互,这些特征可以在具有用于向用户显示信息的显示设备以及用户可用来向计算机提供输入的键盘和指向设备的计算机上实现,所述显示设备为诸如CRT(阴极射线管)或LCD(液晶显示器)监视器,所述指向设备为诸如鼠标或轨迹球。To provide interaction with the user, these features may be implemented on a computer having a display device, such as a CRT (cathode ray tube ) or LCD (Liquid Crystal Display) monitor, the pointing device is such as a mouse or a trackball.
这些特征可在计算机系统中实现,该计算机系统包括后端部件诸如数据服务器,或者该计算机系统包括中间件部件诸如应用服务器或互联网服务器,或者该计算机系统包括前端部件诸如具有图形用户界面或互联网浏览器的客户端计算机或者它们的任何组合。系统的部件可通过任何形式的数字数据通信(诸如通信网络)或该数字数据通信的介质被连接。通信网络的示例包括例如LAN、WAN、以及形成互联网的计算机和网络。These features can be implemented in a computer system that includes a back-end component such as a data server, or that includes a middleware component such as an application server or an Internet server, or that includes a front-end component such as a computer with a graphical user interface or an Internet browser. server's client computer, or any combination of them. The components of the system can be connected by any form or medium of digital data communication such as a communication network. Examples of communication networks include, for example, LANs, WANs, and computers and networks forming the Internet.
计算机系统可包括客户端和服务器。客户端和服务器一般是彼此远离的,并且通常通过网络进行交互。客户端和服务器的关系借助于在相应计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。A computer system may include clients and servers. Clients and servers are generally remote from each other and typically interact over a network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
示例性移动设备架构Exemplary Mobile Device Architecture
图8是示出实现基于类别的特征和操作的移动设备的示例性设备架构800的框图。移动设备(例如,移动设备102)能够包括存储器接口802、一个或多个数据处理器、图像处理器和/或处理器804,以及外围设备接口806。存储器接口802、一个或多个处理器804和/或外围设备接口806可为独立部件,或者可集成到一个或多个集成电路中。处理器804可以包括应用程序处理器、基带处理器和无线处理器。移动设备102中的各部件例如可由一条或多条通信总线或信号线耦接。8 is a block diagram illustrating an example device architecture 800 for a mobile device implementing class-based features and operations. A mobile device (eg, mobile device 102 ) can include a memory interface 802 , one or more data processors, image processors and/or processors 804 , and peripherals interface 806 . Memory interface 802, one or more processors 804, and/or peripherals interface 806 may be separate components, or may be integrated into one or more integrated circuits. Processor 804 may include an application processor, a baseband processor, and a radio processor. Components in mobile device 102 may be coupled, for example, by one or more communication buses or signal lines.
可将传感器、设备和子系统耦接到外围设备接口806以促进多个功能。例如,可将运动传感器810、光传感器812以及接近传感器814耦接到外围设备接口806以促进移动设备的取向、照明和接近功能。可将位置处理器815(例如,GPS接收器)连接到外围设备接口806以提供地理定位。也可将电子磁力仪816(例如,集成电路芯片)连接到外围设备接口806,以提供可用于确定磁北方向的数据。因而,电子磁力仪816可用作电子罗盘。运动传感器810能够包括被配置为确定移动设备运动速度和方向变化的一个或多个加速计。气压计817能够包括连接到外围设备接口806并被配置为测量围绕移动设备的大气压力的一个或多个设备。Sensors, devices, and subsystems can be coupled to peripherals interface 806 to facilitate multiple functions. For example, a motion sensor 810, a light sensor 812, and a proximity sensor 814 can be coupled to the peripherals interface 806 to facilitate orientation, lighting, and proximity functions of the mobile device. A location processor 815 (eg, a GPS receiver) may be connected to the peripherals interface 806 to provide geolocation. An electronic magnetometer 816 (eg, an integrated circuit chip) can also be connected to peripherals interface 806 to provide data that can be used to determine the direction of magnetic north. Thus, the electronic magnetometer 816 can be used as an electronic compass. Motion sensor 810 can include one or more accelerometers configured to determine a change in speed and direction of motion of the mobile device. Barometer 817 can include one or more devices connected to peripherals interface 806 and configured to measure atmospheric pressure surrounding the mobile device.
可利用照相机子系统820和光学传感器822(例如,电荷耦合设备(CCD)或互补金属氧化物半导体(CMOS)光学传感器)来促进照相机功能,诸如拍摄照片和视频剪辑。Camera subsystem 820 and optical sensor 822 (eg, charge-coupled device (CCD) or complementary metal-oxide-semiconductor (CMOS) optical sensor) may be utilized to facilitate camera functions, such as taking pictures and video clips.
可通过一个或多个无线通信子系统824来促进通信功能,所述无线通信子系统可包括射频接收器与发射器和/或光学(例如,红外)接收器与发射器。通信子系统824的具体设计与实现可取决于移动设备旨在通过其操作的通信网络。例如,移动设备可包括设计用于通过GSM网络、GPRS网络、EDGE网络、Wi-FiTM或WiMaxTM网络以及BluetoothTM网络操作的通信子系统824。具体地,无线通信子系统824可包括主机协议,使得移动设备可被配置为其他无线设备的基站。Communications functions may be facilitated by one or more wireless communications subsystems 824, which may include radio frequency receivers and transmitters and/or optical (eg, infrared) receivers and transmitters. The specific design and implementation of communications subsystem 824 may depend on the communications network over which the mobile device is intended to operate. For example, a mobile device may include a communication subsystem 824 designed to operate over a GSM network, a GPRS network, an EDGE network, a Wi-Fi ™ or WiMax ™ network, and a Bluetooth ™ network. Specifically, the wireless communication subsystem 824 can include hosting protocols such that a mobile device can be configured as a base station for other wireless devices.
可将音频子系统826耦接到扬声器828和麦克风830,以促进启用语音的功能,诸如语音识别、语音复制、数字记录和电话功能。音频子系统826可以被配置为从用户接收语音命令。Audio subsystem 826 may be coupled to speaker 828 and microphone 830 to facilitate voice-enabled functions such as voice recognition, voice replication, digital recording, and telephony functions. Audio subsystem 826 may be configured to receive voice commands from a user.
I/O子系统840能够包括触摸表面控制器842和/或其他输入控制器844。可以将触摸表面控制器842耦接到触摸表面846或垫片。触摸表面846和触摸表面控制器842例如能够利用多种触敏技术中的任一种来检测接触和运动或其中断,触敏技术包括但不限于电容性、电阻性、红外和表面声波技术,以及用于确定与接触表面846接触的一个或多个点的其他接近传感器阵列或其他元件。触摸表面846能够包括例如触摸屏。I/O subsystem 840 can include touch surface controller 842 and/or other input controllers 844 . Touch surface controller 842 may be coupled to touch surface 846 or pad. Touch surface 846 and touch surface controller 842 can, for example, utilize any of a variety of touch-sensitive technologies to detect contact and motion, or interruption thereof, including, but not limited to, capacitive, resistive, infrared, and surface acoustic wave technologies, and other proximity sensor arrays or other elements for determining one or more points of contact with contact surface 846 . Touch surface 846 can include, for example, a touch screen.
可将其他一个或多个输入控制器844耦接到其他输入/控制设备848,诸如一个或多个按钮、摇臂开关、拇指滚轮、红外端口、USB端口和/或指针设备诸如触笔。一个或多个按钮(未示出)可包括用于扬声器828和/或麦克风830的音量控制的增大/减小按钮。The other one or more input controllers 844 may be coupled to other input/control devices 848, such as one or more buttons, rocker switches, thumb wheels, infrared ports, USB ports, and/or pointing devices such as stylus. The one or more buttons (not shown) may include up/down buttons for volume control of the speaker 828 and/or microphone 830 .
在一种具体实施中,按下按钮第一持续时间能够解除触摸表面846的锁定;并且按下按钮比第一持续时间更长的第二持续时间能够打开或关闭通向移动设备102的电力。用户能够对按钮中的一个或多个按钮的功能进行自定义。例如,也可以使用触摸表面846实现虚拟或软按钮和/或键盘。In one implementation, pressing the button for a first duration can unlock the touch surface 846 ; and pressing the button for a second duration longer than the first duration can turn power to the mobile device 102 on or off. The user can customize the functions of one or more of the buttons. For example, touch surface 846 may also be used to implement virtual or soft buttons and/or a keyboard.
在一些具体实施中,移动设备102可呈现记录的音频和/或视频文件,诸如MP3、AAC和MPEG文件。在一些具体实施中,计算设备102能够包括MP3播放器的功能。移动设备102因此可以包括与iPod兼容的针脚连接器。也可使用其他输入/输出以及控制设备。In some implementations, the mobile device 102 can present recorded audio and/or video files, such as MP3, AAC, and MPEG files. In some implementations, computing device 102 can include the functionality of an MP3 player. Mobile device 102 may thus include an iPod compatible pin connector. Other input/output and control devices may also be used.
存储器接口802可以耦接到存储器850。存储器850可包括高速随机存取存储器和/或非易失性存储器,诸如一个或多个磁盘存储设备、一个或多个光学存储设备,和/或闪存存储器(如NAND、NOR)。存储器850可存储操作系统852,诸如Darwin、RTXC、LINUX、UNIX、OSX、WINDOWS、iOS或嵌入式操作系统诸如VxWorks。操作系统852可包括用于处理基础系统服务以及用于执行硬件相关任务的指令。在一些具体实施中,操作系统852可以包括内核(例如,UNIX内核)。Memory interface 802 may be coupled to memory 850 . Memory 850 may include high-speed random access memory and/or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices, and/or flash memory (eg, NAND, NOR). The memory 850 may store an operating system 852, such as Darwin, RTXC, LINUX, UNIX, OSX, WINDOWS, iOS, or an embedded operating system such as VxWorks. Operating system 852 may include instructions for handling basic system services and for performing hardware-related tasks. In some implementations, the operating system 852 may include a kernel (eg, UNIX kernel).
存储器850还可存储通信指令854,以促进与一个或多个附加设备、一个或多个计算机和/或一个或多个服务器通信。存储器850可以包括促进图形用户界面处理的图形用户界面指令856;促进传感器相关处理和功能的传感器处理指令858;促进电话相关过程和功能的电话指令860;促进电子消息相关过程和功能的电子消息指令862;促进网络浏览相关过程和功能的网络浏览指令864;促进媒体处理相关过程和功能的媒体处理指令866;促进GPS和导航相关过程和功能的GPS/导航指令868;促进相机相关过程和功能的相机指令870;促进磁强计校准的磁强计数据872和校准指令874。存储器850还可存储其他软件指令(未示出),诸如安全指令,用于促进与网络视频相关的过程和功能的网络视频指令,和/或用于促进与网上购物相关的过程和功能的网上购物指令。在一些具体实施中,媒体处理指令866分为音频处理指令和视频处理指令,以促进与音频处理相关的过程和功能以及与视频处理相关的过程和功能。还可将启动记录和国际移动设备识别码(IMEI)或类似硬件标识符存储在存储器850中。存储器850能够存储围栏指令876,在执行时,围栏指令能够使处理器804执行如下操作:生成围栏触发的应用程序或从服务器请求围栏触发的应用程序,管理围栏触发的应用程序,以及在通知移动设备102已经进入或退出基于类别的围栏时,激活或去激活围栏触发的应用程序。Memory 850 may also store communication instructions 854 to facilitate communication with one or more additional devices, one or more computers, and/or one or more servers. Memory 850 may include graphical user interface instructions 856 to facilitate graphical user interface processing; sensor processing instructions 858 to facilitate sensor related processes and functions; telephony instructions 860 to facilitate telephony related processes and functions; electronic message instructions to facilitate electronic message related processes and functions 862; web browsing instructions 864 to facilitate web browsing related processes and functions; media handling instructions 866 to facilitate media handling related processes and functions; GPS/navigation instructions 868 to facilitate GPS and navigation related processes and functions; Camera instructions 870; magnetometer data 872 and calibration instructions 874 to facilitate magnetometer calibration. Memory 850 may also store other software instructions (not shown), such as security instructions, web video instructions for facilitating processes and functions related to web video, and/or web video instructions for facilitating processes and functions related to web shopping. shopping instructions. In some implementations, the media processing instructions 866 are divided into audio processing instructions and video processing instructions to facilitate audio processing related procedures and functions as well as video processing related procedures and functions. A boot record and International Mobile Equipment Identity (IMEI) or similar hardware identifier may also be stored in memory 850 . The memory 850 can store fence instructions 876 which, when executed, can cause the processor 804 to: generate a fence-triggered application or request a fence-triggered application from a server, manage the fence-triggered application, and notify mobile A fence-triggered application is activated or deactivated when the device 102 has entered or exited a category-based fence.
上面标识的指令和应用中的每一者可与用于执行上述一个或多个功能的指令集对应。这些指令不需要作为独立的软件程序、进程或模块来实施。存储器850可包括附加的指令或更少的指令。此外,可在硬件和/或软件中,包括在一个或多个信号处理和/或专用集成电路中,执行移动设备的各种功能。Each of the above-identified instructions and applications may correspond to a set of instructions for performing one or more functions described above. These instructions need not be implemented as separate software programs, processes or modules. Memory 850 may include additional instructions or fewer instructions. Additionally, various functions of the mobile device may be performed in hardware and/or software, including in one or more signal processing and/or application specific integrated circuits.
示例性操作环境Exemplary Operating Environment
图9是实现基于类别的围栏的特征和操作的移动设备的示例性网络操作环境900的框图。移动设备902a和902b可例如在数据通信中通过一个或多个有线和/或无线网络910来通信。例如,无线网络912(例如,蜂窝网络)可通过利用网关916与广域网(WAN)914诸如互联网通信。同样,接入设备918(诸如,802.11g无线接入点)可提供对广域网914的通信接入。移动设备902a和902b中的每个移动设备可以是移动设备102。9 is a block diagram of an exemplary network operating environment 900 for mobile devices that implements the features and operations of category-based fences. Mobile devices 902a and 902b may communicate over one or more wired and/or wireless networks 910, eg, in data communications. For example, a wireless network 912 (eg, a cellular network) may communicate with a wide area network (WAN) 914 such as the Internet by utilizing a gateway 916 . Likewise, an access device 918 , such as an 802.11g wireless access point, can provide communication access to the wide area network 914 . Each of mobile devices 902 a and 902 b may be mobile device 102 .
在一些具体实施中,可以通过无线网络912和接入设备918建立语音和数据通信。例如,移动设备902a能够拨打和接收电话呼叫(例如,使用互联网语音协议(VoIP)),发送和接收电子邮件消息(例如,使用邮局协议3(POP3)),以及通过无线网络912、网关916和广域网914检索电子文档和/或流,诸如网页、照片和视频(例如,使用传输控制协议/互联网协议(TCP/IP)或用户数据报协议(UDP))。同样,在一些具体实施中,移动设备902b可通过接入设备918和广域网914来拨打和接收电话呼叫、发送和接收电子邮件消息以及检索电子文档。在一些具体实施中,移动设备902a或902b可使用一条或多条电缆物理地连接到接入设备918,并且接入设备918可为个人计算机。在此配置中,移动设备902a或902b可被称为“受限”设备。In some implementations, voice and data communications can be established over the wireless network 912 and the access device 918 . For example, mobile device 902a is capable of making and receiving telephone calls (e.g., using Voice over Internet Protocol (VoIP)), sending and receiving electronic mail messages (e.g., using Post Office Protocol 3 (POP3)), and communicating via wireless network 912, gateway 916, and Wide area network 914 retrieves electronic documents and/or streams, such as web pages, photos, and videos (eg, using Transmission Control Protocol/Internet Protocol (TCP/IP) or User Datagram Protocol (UDP)). Likewise, in some implementations, the mobile device 902b can make and receive telephone calls, send and receive email messages, and retrieve electronic documents through the access device 918 and the wide area network 914 . In some implementations, the mobile device 902a or 902b can be physically connected to the access device 918 using one or more cables, and the access device 918 can be a personal computer. In this configuration, mobile device 902a or 902b may be referred to as a "restricted" device.
移动设备902a和902b也可以通过其他方式建立通信。例如,无线设备902a能够通过无线网络912与其他无线设备,例如其他移动设备、蜂窝电话等通信。同样,移动设备902a和902b可通过使用一个或多个通信子系统(诸如BluetoothTM通信设备)建立对等通信920,例如个人局域网。也可以实施其它通信协议和拓扑结构。Mobile devices 902a and 902b may also establish communications by other means. For example, wireless device 902a is capable of communicating with other wireless devices, such as other mobile devices, cellular telephones, etc., over wireless network 912 . Likewise, mobile devices 902a and 902b can establish peer-to-peer communications 920, such as a personal area network, using one or more communications subsystems, such as Bluetooth ™ communications devices. Other communication protocols and topologies may also be implemented.
移动设备902a或902b可例如通过所述一个或多个有线和/或无线网络与一个或多个服务930和940通信。例如,一个或多个基于类别的围栏服务930可以提供围栏触发的应用程序并将CID与移动设备902a和902b相关联。类别服务940能够向移动设备902a和902b提供发布的类别和对应的CID,使得移动设备902a和902b的用户能够通过向信号源存储对应于类别的CID来向类别围栏添加信号源,或通过改变信号源上存储的CID来修改信号源的类别。Mobile device 902a or 902b may communicate with one or more services 930 and 940, eg, over the one or more wired and/or wireless networks. For example, one or more category-based fence services 930 may provide fence-triggered applications and associate CIDs with mobile devices 902a and 902b. Category service 940 can provide published categories and corresponding CIDs to mobile devices 902a and 902b so that users of mobile devices 902a and 902b can add sources to the category fence by storing the CIDs corresponding to the categories with the sources, or by changing signal The CID stored on the source to modify the category of the signal source.
移动设备902a或902b能够与一个或多个信号源950通信。每个信号源950可以是被配置为广播信号源标识符的无线信标。信号源标识符可以包括CID。在一些具体实施中,每个信号源950可以通过广域网914与其他设备通信,或促进移动设备902a或902b与其他设备的通信。在一些具体实施中,每个信号源950可以独立于通信网络,并仅仅充当基于类别的围栏的信标。The mobile device 902a or 902b is capable of communicating with one or more signal sources 950 . Each signal source 950 may be a wireless beacon configured to broadcast a signal source identifier. The signal source identifier may include a CID. In some implementations, each signal source 950 can communicate with other devices over the wide area network 914, or facilitate communication between the mobile device 902a or 902b and other devices. In some implementations, each signal source 950 may be independent of the communication network and serve only as a beacon for a category-based fence.
移动设备902a或902b还可通过一个或多个有线和/或无线网络访问其他数据和内容。例如,移动设备902a或902b可访问内容发布者,诸如新闻站点、真正简单联合(RSS)供稿、网站、博客、社交网站、开发者网络等等。可通过响应于用户触摸(例如网络对象)对网络浏览功能或应用程序(例如浏览器)进行调用来提供此类访问。Mobile device 902a or 902b may also access other data and content over one or more wired and/or wireless networks. For example, mobile device 902a or 902b can access content publishers, such as news sites, Really Simple Syndication (RSS) feeds, websites, blogs, social networking sites, developer networks, and the like. Such access may be provided by making calls to web browsing functions or applications (eg, browsers) in response to user touches (eg, web objects).
已描述了本发明的若干实施方式。然而,应当理解,在不脱离本发明的实质和范围的情况下可作出各种修改。Several embodiments of the invention have been described. It should be understood, however, that various modifications may be made without departing from the spirit and scope of the invention.
Claims (30)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910660957.1A CN110213722B (en) | 2013-06-06 | 2014-05-30 | Category-based fence |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/912,088 | 2013-06-06 | ||
| US13/912,088 US9191832B2 (en) | 2013-06-06 | 2013-06-06 | Category-based fence |
| PCT/US2014/040265 WO2014197320A1 (en) | 2013-06-06 | 2014-05-30 | Category-based fence |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910660957.1A Division CN110213722B (en) | 2013-06-06 | 2014-05-30 | Category-based fence |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN105308567A true CN105308567A (en) | 2016-02-03 |
| CN105308567B CN105308567B (en) | 2019-07-16 |
Family
ID=51023166
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910660957.1A Active CN110213722B (en) | 2013-06-06 | 2014-05-30 | Category-based fence |
| CN201480032008.4A Active CN105308567B (en) | 2013-06-06 | 2014-05-30 | Category-Based Fencing |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201910660957.1A Active CN110213722B (en) | 2013-06-06 | 2014-05-30 | Category-based fence |
Country Status (4)
| Country | Link |
|---|---|
| US (6) | US9191832B2 (en) |
| EP (3) | EP3438820B1 (en) |
| CN (2) | CN110213722B (en) |
| WO (1) | WO2014197320A1 (en) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106840139A (en) * | 2016-12-29 | 2017-06-13 | 深圳众思科技有限公司 | The acquisition methods of fence, device and terminal |
| CN108307366A (en) * | 2017-01-12 | 2018-07-20 | 甲骨文国际公司 | Method and system for location estimation |
| CN109526250A (en) * | 2016-04-01 | 2019-03-26 | 微软技术许可有限责任公司 | Dynamic management of listening lists for beacon aware devices |
| CN112383959A (en) * | 2020-11-16 | 2021-02-19 | 深圳市斯博科技有限公司 | Positioning method, positioning device, computer equipment and storage medium |
| US11455701B2 (en) | 2016-02-26 | 2022-09-27 | Microsoft Technology Licensing, Llc | Presenting context-based guidance using electronic signs |
Families Citing this family (42)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9115908B2 (en) | 2011-07-27 | 2015-08-25 | Honeywell International Inc. | Systems and methods for managing a programmable thermostat |
| US9113300B2 (en) | 2013-03-15 | 2015-08-18 | Apple Inc. | Proximity fence |
| US9191832B2 (en) * | 2013-06-06 | 2015-11-17 | Apple Inc. | Category-based fence |
| WO2015089116A1 (en) | 2013-12-11 | 2015-06-18 | Honeywell International Inc. | Building automation control systems |
| TWI533731B (en) * | 2014-05-20 | 2016-05-11 | 啟碁科技股份有限公司 | Beacon device and control method thereof |
| US10261672B1 (en) * | 2014-09-16 | 2019-04-16 | Amazon Technologies, Inc. | Contextual launch interfaces |
| KR20160101533A (en) * | 2015-02-17 | 2016-08-25 | 삼성전자주식회사 | Method for designating geofence an electronic device thereof |
| US9900174B2 (en) | 2015-03-06 | 2018-02-20 | Honeywell International Inc. | Multi-user geofencing for building automation |
| US9967391B2 (en) | 2015-03-25 | 2018-05-08 | Honeywell International Inc. | Geo-fencing in a building automation system |
| US10571547B2 (en) * | 2015-03-27 | 2020-02-25 | Pcms Holdings, Inc. | System and method for indoor localization using beacons |
| US10802469B2 (en) | 2015-04-27 | 2020-10-13 | Ademco Inc. | Geo-fencing with diagnostic feature |
| US9609478B2 (en) | 2015-04-27 | 2017-03-28 | Honeywell International Inc. | Geo-fencing with diagnostic feature |
| US10802459B2 (en) | 2015-04-27 | 2020-10-13 | Ademco Inc. | Geo-fencing with advanced intelligent recovery |
| KR102374438B1 (en) | 2015-08-10 | 2022-03-15 | 삼성전자주식회사 | Method for managing geo-fence and electronic device thereof |
| JP6486811B2 (en) * | 2015-10-16 | 2019-03-20 | 日本電信電話株式会社 | Wireless system, terminal device, and identification information notification method |
| US10057110B2 (en) | 2015-11-06 | 2018-08-21 | Honeywell International Inc. | Site management system with dynamic site threat level based on geo-location data |
| US9628951B1 (en) | 2015-11-11 | 2017-04-18 | Honeywell International Inc. | Methods and systems for performing geofencing with reduced power consumption |
| US10516965B2 (en) | 2015-11-11 | 2019-12-24 | Ademco Inc. | HVAC control using geofencing |
| US9560482B1 (en) | 2015-12-09 | 2017-01-31 | Honeywell International Inc. | User or automated selection of enhanced geo-fencing |
| US9860697B2 (en) | 2015-12-09 | 2018-01-02 | Honeywell International Inc. | Methods and systems for automatic adjustment of a geofence size |
| US9877266B1 (en) * | 2015-12-10 | 2018-01-23 | Massachusetts Mutual Life Insurance Company | Methods and systems for beacon-based management of shared resources |
| KR102221027B1 (en) * | 2015-12-22 | 2021-02-26 | 삼성전자주식회사 | Method and apparatus for providing service in wireless network |
| CN105738921A (en) * | 2016-01-29 | 2016-07-06 | 北京小米移动软件有限公司 | Method and device used for acquiring position information |
| US11290425B2 (en) * | 2016-02-01 | 2022-03-29 | Airwatch Llc | Configuring network security based on device management characteristics |
| US10605472B2 (en) | 2016-02-19 | 2020-03-31 | Ademco Inc. | Multiple adaptive geo-fences for a building |
| US10469997B2 (en) | 2016-02-26 | 2019-11-05 | Microsoft Technology Licensing, Llc | Detecting a wireless signal based on context |
| CN105704252B (en) * | 2016-04-26 | 2019-05-07 | 青岛海信电器股份有限公司 | Bluetooth low energy device data transmission method and device |
| US10302322B2 (en) | 2016-07-22 | 2019-05-28 | Ademco Inc. | Triage of initial schedule setup for an HVAC controller |
| US10488062B2 (en) | 2016-07-22 | 2019-11-26 | Ademco Inc. | Geofence plus schedule for a building controller |
| US10306403B2 (en) | 2016-08-03 | 2019-05-28 | Honeywell International Inc. | Location based dynamic geo-fencing system for security |
| US11622275B2 (en) | 2017-02-21 | 2023-04-04 | Scorpion Security Products, Inc. | Geo-radius based mobile device management |
| US10708785B2 (en) | 2017-02-21 | 2020-07-07 | Scorpion Security Products, Inc. | Mobile device management system and method |
| US10317102B2 (en) | 2017-04-18 | 2019-06-11 | Ademco Inc. | Geofencing for thermostatic control |
| CN106961670B (en) * | 2017-05-02 | 2019-03-12 | 千寻位置网络有限公司 | Geo-fencing system and working method based on distributed structure/architecture |
| CN108882207B (en) * | 2017-05-08 | 2022-04-22 | 阿里巴巴集团控股有限公司 | Method and device for realizing near-field trigger function |
| CN107682512A (en) * | 2017-09-22 | 2018-02-09 | 上海斐讯数据通信技术有限公司 | A kind of method and system of prompting mobile telephone set people of unread information |
| JP2019148480A (en) * | 2018-02-27 | 2019-09-05 | オリンパス株式会社 | Measurement device and measurement method |
| WO2020031047A1 (en) * | 2018-08-10 | 2020-02-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Alternative addressing of managed objects |
| CN110381443B (en) * | 2019-09-05 | 2022-04-22 | 北京小米移动软件有限公司 | Near field communication card activation method and device |
| KR102821559B1 (en) | 2019-11-07 | 2025-06-19 | 삼성전자주식회사 | Context based application providing server and controlling method thereof |
| CN113053370B (en) * | 2019-12-27 | 2024-04-05 | 北京沃东天骏信息技术有限公司 | Method and device for waking up application |
| US11438886B2 (en) * | 2020-02-27 | 2022-09-06 | Psj International Ltd. | System for establishing positioning map data and method for the same |
Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020082921A1 (en) * | 2000-12-27 | 2002-06-27 | Koninklijke Philips Electronics N.V. | Credit system and method |
| CN1717943A (en) * | 2002-11-01 | 2006-01-04 | 诺基亚公司 | Disposable mini-applications |
| EP1631008A1 (en) * | 2003-05-21 | 2006-03-01 | International Business Machines Corporation | Provision of services to clients by use of radio communication |
| CN101796502A (en) * | 2007-05-16 | 2010-08-04 | 摩托罗拉公司 | Method and electronic device for management application |
| US20110070834A1 (en) * | 2009-09-24 | 2011-03-24 | Research In Motion Limited | System and associated nfc tag using plurality of nfc tags associated with location or devices to communicate with communications device |
| CN102055501A (en) * | 2009-11-10 | 2011-05-11 | 上海真灼电子技术有限公司 | Electronic tour guide system and method based on bluetooth technology |
| US20120115512A1 (en) * | 2010-11-09 | 2012-05-10 | Apple Inc. | Beacon-Based Geofencing |
| CN102752271A (en) * | 2011-04-22 | 2012-10-24 | 金锰 | Information processing method based on radio-frequency signal strength |
Family Cites Families (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8838481B2 (en) * | 2011-07-26 | 2014-09-16 | Golba Llc | Method and system for location based hands-free payment |
| US8150991B1 (en) | 2008-03-10 | 2012-04-03 | Symantec Corporation | Geolocation-based application streaming systems, apparatus, and methods |
| US8655960B2 (en) * | 2008-06-19 | 2014-02-18 | Verizon Patent And Licensing Inc. | Location-aware instant messaging |
| US20100302056A1 (en) | 2009-05-27 | 2010-12-02 | Geodelic, Inc. | Location discovery system and method |
| US20110153525A1 (en) | 2009-12-18 | 2011-06-23 | Alcatel-Lucent Usa Inc. | Method and system for managing power consumption using geolocation information |
| US9936333B2 (en) | 2010-08-10 | 2018-04-03 | Microsoft Technology Licensing, Llc | Location and contextual-based mobile application promotion and delivery |
| US8606260B2 (en) | 2010-08-18 | 2013-12-10 | Apple Inc. | Location-based profile |
| CN102377804A (en) * | 2010-08-19 | 2012-03-14 | 王轶彤 | Geographic location-based interactive information service system and method |
| US8688726B2 (en) * | 2011-05-06 | 2014-04-01 | Microsoft Corporation | Location-aware application searching |
| US20120284769A1 (en) | 2011-05-06 | 2012-11-08 | Kyle Dixon | Systems and Methods of Intelligent Policy-Based Geo-Fencing |
| US8750895B2 (en) * | 2011-06-03 | 2014-06-10 | Apple Inc. | Monitoring a geofence using wireless access points |
| US8626187B2 (en) * | 2011-06-03 | 2014-01-07 | Apple Inc. | Monitoring geofence exit |
| CN102291435B (en) * | 2011-07-15 | 2012-09-05 | 武汉大学 | Mobile information searching and knowledge discovery system based on geographic spatiotemporal data |
| US20130072226A1 (en) * | 2011-09-21 | 2013-03-21 | Jeff Thramann | Systems and Methods for Tracking Mobile Devices |
| US8810454B2 (en) * | 2011-10-13 | 2014-08-19 | Microsoft Corporation | Power-aware tiered geofencing and beacon watchlists |
| US9143601B2 (en) * | 2011-11-09 | 2015-09-22 | Microsoft Technology Licensing, Llc | Event-based media grouping, playback, and sharing |
| US8644848B2 (en) * | 2011-12-02 | 2014-02-04 | Yellowpages.Com Llc | Systems and methods for location sensitive alerts in a mobile communication network |
| US20140162693A1 (en) * | 2012-06-15 | 2014-06-12 | Qualcomm Incorporated | Methods and systems for providing location based services in a venue |
| US9215560B1 (en) * | 2012-07-12 | 2015-12-15 | two forty four a.m. LLC | System and method for device-centric location detection and geofencing |
| US9451403B2 (en) * | 2012-08-30 | 2016-09-20 | Ebay Inc. | Systems and method for configuring mobile device applications based on location |
| US9113300B2 (en) * | 2013-03-15 | 2015-08-18 | Apple Inc. | Proximity fence |
| US20140337123A1 (en) * | 2013-03-15 | 2014-11-13 | 30 Second Software, Inc. | System and method for adaptive use of geofence parameters |
| US9191832B2 (en) * | 2013-06-06 | 2015-11-17 | Apple Inc. | Category-based fence |
| US8755824B1 (en) * | 2013-06-28 | 2014-06-17 | Google Inc. | Clustering geofence-based alerts for mobile devices |
-
2013
- 2013-06-06 US US13/912,088 patent/US9191832B2/en active Active
-
2014
- 2014-05-30 EP EP18194879.5A patent/EP3438820B1/en active Active
- 2014-05-30 EP EP24151921.4A patent/EP4357918A1/en active Pending
- 2014-05-30 CN CN201910660957.1A patent/CN110213722B/en active Active
- 2014-05-30 WO PCT/US2014/040265 patent/WO2014197320A1/en not_active Ceased
- 2014-05-30 EP EP14733903.0A patent/EP3005111B1/en active Active
- 2014-05-30 CN CN201480032008.4A patent/CN105308567B/en active Active
-
2015
- 2015-11-16 US US14/942,907 patent/US9525771B2/en active Active
-
2016
- 2016-12-19 US US15/384,195 patent/US9894196B2/en active Active
-
2017
- 2017-12-22 US US15/852,431 patent/US10218835B2/en active Active
-
2019
- 2019-02-22 US US16/282,662 patent/US10462284B2/en active Active
- 2019-09-24 US US16/580,878 patent/US10868907B2/en active Active
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020082921A1 (en) * | 2000-12-27 | 2002-06-27 | Koninklijke Philips Electronics N.V. | Credit system and method |
| CN1717943A (en) * | 2002-11-01 | 2006-01-04 | 诺基亚公司 | Disposable mini-applications |
| EP1631008A1 (en) * | 2003-05-21 | 2006-03-01 | International Business Machines Corporation | Provision of services to clients by use of radio communication |
| CN101796502A (en) * | 2007-05-16 | 2010-08-04 | 摩托罗拉公司 | Method and electronic device for management application |
| US20110070834A1 (en) * | 2009-09-24 | 2011-03-24 | Research In Motion Limited | System and associated nfc tag using plurality of nfc tags associated with location or devices to communicate with communications device |
| CN102055501A (en) * | 2009-11-10 | 2011-05-11 | 上海真灼电子技术有限公司 | Electronic tour guide system and method based on bluetooth technology |
| US20120115512A1 (en) * | 2010-11-09 | 2012-05-10 | Apple Inc. | Beacon-Based Geofencing |
| CN102752271A (en) * | 2011-04-22 | 2012-10-24 | 金锰 | Information processing method based on radio-frequency signal strength |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11455701B2 (en) | 2016-02-26 | 2022-09-27 | Microsoft Technology Licensing, Llc | Presenting context-based guidance using electronic signs |
| CN109526250A (en) * | 2016-04-01 | 2019-03-26 | 微软技术许可有限责任公司 | Dynamic management of listening lists for beacon aware devices |
| CN109526250B (en) * | 2016-04-01 | 2021-03-12 | 微软技术许可有限责任公司 | Dynamic management of listening lists for beacon-aware devices |
| CN106840139A (en) * | 2016-12-29 | 2017-06-13 | 深圳众思科技有限公司 | The acquisition methods of fence, device and terminal |
| CN106840139B (en) * | 2016-12-29 | 2020-06-02 | 南昌黑鲨科技有限公司 | Electronic fence acquisition method and device and terminal |
| CN108307366A (en) * | 2017-01-12 | 2018-07-20 | 甲骨文国际公司 | Method and system for location estimation |
| CN112383959A (en) * | 2020-11-16 | 2021-02-19 | 深圳市斯博科技有限公司 | Positioning method, positioning device, computer equipment and storage medium |
Also Published As
| Publication number | Publication date |
|---|---|
| US9525771B2 (en) | 2016-12-20 |
| EP3005111B1 (en) | 2018-09-19 |
| US10868907B2 (en) | 2020-12-15 |
| CN110213722A (en) | 2019-09-06 |
| EP3438820B1 (en) | 2024-01-24 |
| US20180124231A1 (en) | 2018-05-03 |
| WO2014197320A1 (en) | 2014-12-11 |
| US9894196B2 (en) | 2018-02-13 |
| US20170099381A1 (en) | 2017-04-06 |
| CN105308567B (en) | 2019-07-16 |
| US10462284B2 (en) | 2019-10-29 |
| EP4357918A1 (en) | 2024-04-24 |
| CN110213722B (en) | 2021-01-29 |
| US20160142531A1 (en) | 2016-05-19 |
| EP3438820A1 (en) | 2019-02-06 |
| US20190191025A1 (en) | 2019-06-20 |
| US10218835B2 (en) | 2019-02-26 |
| US9191832B2 (en) | 2015-11-17 |
| US20140364100A1 (en) | 2014-12-11 |
| EP3005111A1 (en) | 2016-04-13 |
| US20200021682A1 (en) | 2020-01-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN105308567B (en) | Category-Based Fencing | |
| US9749797B2 (en) | Multi-level virtual fence | |
| CN103563406B (en) | Monitoring exit from geofence | |
| US9949200B2 (en) | Centralized beacon management service | |
| US9307358B2 (en) | Non-intrusive region notification | |
| US20150176998A1 (en) | Location-based operating modes | |
| CN102066969A (en) | Location determination | |
| CN103248999A (en) | Method, system and program product for performing actions at user equipment based on location | |
| CA2928191C (en) | Location based information service application | |
| US12464065B2 (en) | Modifying the type of interaction between a mobile computing device and a peripheral device based on proximity | |
| HK1188360A (en) | Location-based methods, systems, nad program products for performing an action at a user device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |