Use Cases
Common integration patterns for the Cisco Spaces Firehose API.
Real-Time Location Tracking
Consume DEVICE_LOCATION_UPDATE events to track device positions on floor maps in real time.
Typical flow:
- Connect to the streaming endpoint
- Filter for
DEVICE_LOCATION_UPDATEevents - Extract
xPos,yPos,latitude,longitude, andmapIdfrom the payload - Plot positions on a floor map retrieved via
GET /api/partners/v1/maps/{mapId}/image
Relevant events: DEVICE_LOCATION_UPDATE, DEVICE_RSSI_UPDATE
Tips:
- Use the map metadata endpoint to get image dimensions and coordinate scaling
- Location updates arrive frequently for active devices — batch UI updates if rendering to a dashboard
Occupancy and People Counting
Track how many people are in a space using device counts, camera counts, or space occupancy events.
Typical flow:
- Subscribe to
DEVICE_COUNT,CAMERA_COUNT, and/orSPACE_OCCUPANCYevents - Aggregate counts by
locationId - Store time-series data for trend analysis
Relevant events: DEVICE_COUNT, CAMERA_COUNT, RAW_CAMERA_COUNT, SPACE_OCCUPANCY, SPACE_OCCUPANCY_CHANGE
Tips:
DEVICE_COUNTincludes both associated (connected to Wi-Fi) and probing (not connected) countsCAMERA_COUNTprovides aggregated people counts;RAW_CAMERA_COUNTgives per-camera data- Use
SPACE_OCCUPANCY_CHANGEfor threshold-based alerting (e.g., room is now occupied)
Visitor Analytics and Presence
Analyse visitor behaviour — dwell times, visit frequency, entry/exit patterns — using presence events.
Typical flow:
- Subscribe to
DEVICE_PRESENCEand/orUSER_PRESENCEevents - Track lifecycle: entry → active → inactive → exit
- Compute dwell time from
entry_timestampandexit_timestamp - Use
days_since_last_visitfor repeat visitor analysis
Relevant events: DEVICE_PRESENCE, USER_PRESENCE
Tips:
USER_PRESENCEgroups multiple devices by the same user (via authentication identity)- Use
visit_idto correlate all lifecycle events within a single visit - Inactive events fire after 10 minutes of no activity; exit fires after ~3 hours
IoT Sensor Monitoring
Monitor environmental sensors (temperature, humidity, air quality, accelerometer, battery) from BLE and RFID devices.
Typical flow:
- Subscribe to
IOT_TELEMETRYevents - Extract sensor data from
temperature,battery,accelerometer, and other telemetry fields - Alert on thresholds (e.g., temperature > 30°C, battery < 20%)
Relevant events: IOT_TELEMETRY, IOT_USER_ACTION, BLE_RSSI_UPDATE
Tips:
- Use Firehose filters to narrow events to specific BLE devices by MAC, OUI, iBeacon UUID, or Eddystone namespace
IOT_USER_ACTIONcaptures button presses and other physical interactions
Network Health Monitoring
Track network infrastructure health and performance metrics.
Typical flow:
- Subscribe to
NETWORK_TELEMETRYandNETWORK_STATUS_UPDATEevents - Monitor AP telemetry (clients per AP, SNR, channel utilisation, RSSI)
- Alert on connector/controller disconnections via
NETWORK_STATUS_UPDATE
Relevant events: NETWORK_TELEMETRY, NETWORK_STATUS_UPDATE, AP_TOPOLOGY_CHANGE
Tips:
- Use the network topology endpoint for the full AP hierarchy
AP_TOPOLOGY_CHANGEfires when floor map AP placements change
Location Hierarchy Sync
Keep your application's location model in sync with Cisco Spaces.
Typical flow:
- Subscribe to
LOCATION_CHANGEevents - Handle
ADD,REMOVE,MOVE, andUPDATEchange types - Sync
LocationDetails(timezone, city, coordinates, map info) into your local store
Relevant events: LOCATION_CHANGE, LOCATION_ANCHOR_UPDATE
Multi-Tenant Data Routing
Route events to the correct downstream tenant system using the partnerTenantId field.
Typical flow:
- Open a single streaming connection (all tenants on one channel)
- Read
partnerTenantIdfrom each event - Route to the appropriate tenant pipeline or storage
Tips:
- No need for separate connections per tenant — the API is multi-tenant by design
- Use
spacesTenantIdfor Cisco Spaces internal correlation
See Also
- Best Practices — Production recommendations
- Getting Started — Quick start and protocol selection
- Event Types — Detailed event descriptions
- Supporting APIs — Filters, health, maps, devices