Location Streaming Event
A location event is generated when the location of a client (station) is computed using RSSI values reported by the Instant Access Points (IAPs) periodically. The event message includes coordinates of the client on the VisualRF floor plan and GeoFence notification, which contains information on when a device enters or leaves a GeoFence region (if GeoFence is enabled). Therefore, an existing visualRF floor plan with AP location mapping is a prerequisite for the Location Streaming Events.
Location Event Protocol Buffer File
message mac_address
{
optional bytes addr = 1;
}
enum target_dev_type
{
TARGET_TYPE_UNKNOWN = 0;
TARGET_TYPE_STATION = 1;
TARGET_TYPE_ROGUE = 3;
}
enum algorithm
{
ALGORITHM_TRIANGULATION = 0;
}
enum measurement_unit
{
METERS = 0;
FEET = 1;
}
message stream_location
{
optional float sta_location_x = 1;
optional float sta_location_y = 2;
optional uint32 error_level = 3;
optional algorithm loc_algorithm = 9;
optional measurement_unit unit = 14;
required mac_address sta_eth_mac = 15;
optional string campus_id_string = 16;
optional string building_id_string = 17;
optional string floor_id_string = 18;
optional target_dev_type target_type = 19
optional bool associated = 20;
}
enum zone_event {
ZONE_IN = 0;
ZONE_OUT = 1;
}
message stream_geofence_notify {
optional zone_event geofence_event = 1;
optional bytes geofence_id = 2;
optional string geofence_name = 3;
optional mac_address sta_eth_mac = 4;
optional bool associated = 5;
optional uint32 dwell_time = 6 [default=0];
optional string hashed_sta_eth_mac = 7;
}
Parameter Descriptions
The following table lists the field, type, rule, and descriptions of the above mentioned protobuf file
Field | Type | Rule | Description |
---|---|---|---|
target_type | target_dev_type | optional | Indicates the type of the device. It contains the following:
|
loc_algorithm | algorithm | optional | Indicates the algorithm that populated the X and Y coordinates. It contains the following:
|
unit | measurement_unit | optional | Indicates the unit of measurement used for floor specifications. It contains the following:
|
sta_location_x | float | optional | Indicates the X coordinate used to determine the client location on a floormap. This value is based on the number of feet or meters, if configured. The station is from the top left corner of the floormap. |
sta_location_y | float | optional | Indicates the Y coordinate used to determine the client location on a floormap. This value is based on the number of feet or meters, if configured. The station is from the top left corner of the floormap. |
error_level | uint32 | optional | Indicates the radius of the horizontal uncertainty, computed at 95%. This is the sum of the probability of all the potential locations in this uncertainty circle that represents 95% probability of the whole venue. The unit of this radius is configured and published in the unit field. |
sta_eth_mac | mac_address | required | Indicates the MAC address of the client station or rogue. |
campus_id_string | string | optional | Indicates the ID number that identifies a specific campus. |
building_id_string | string | optional | Indicates the ID number that identifies a specific campus building. |
floor_id_string | string | optional | Indicates the ID number that identifies a specific building floor. |
associated | bool | optional | Indicates whether the client is associated with an AP on the network. For example, 1 indicates that the client is associated with an AP and 0 indicates that the client is not associated with an AP. |
Example for the Location Message
sta_location_x: 333.671569824
sta_location_y: 220.563110352
error_level: 92
loc_algorithm: ALGORITHM_TRIANGULATION
unit: FEET
sta_eth_mac {
addr: "\320\323\340\262@p"
}
campus_id_string: "77d249ac35b548cab35fb48a8a1e7dd5__default"
building_id_string: "77d249ac35b548cab35fb48a8a1e7dd5__1"
floor_id_string: "77d249ac35b548cab35fb48a8a1e7dd5__ee80edb6-0476-4c9e-93a4-d79acd2c6f7a"
target_type: TARGET_TYPE_ROGUE
associated: false
Updated about 1 year ago