Cambium

Overview

The Kloudspot Analytics Engine can receive events from many types of WiFi network.

One or more of event sources can be configured in the ‘Configuration - > Event Processing - > Wi-Fi’ screen.

Validate the Receiver URLs

The protocol (HTTP/HTTPS) used varies depending on the source. We support both HTTP and HTTPS protocols using port 48082 and 48083. Refer to the specific data source below to determine the correct one to use.

If you have set a SSL certificate for the UI, that will be used instead of the self signed one.

You can check access to both the HTTP and HTTPS urls with a ‘ping’:

$ curl http://{server}:48082/ping
hi from http receiver
$ curl -k https://{server}:48083/ping
hi from https receiver

Cambium cnPilot

Kloudspot Analytics support the WiFi Location API provided by Cambium cnPilot Enterprise APs. The API can be setup either on standalone APs or via the cnMeastro Wireless Controller/Network Manager.

In either case the setup is the same:

  • Go to the Radio options and enable Off Channel scan and Auto RF and save.

Auto OCS Auto OCS

  • Then to the Services options and enable the Location API and save.

Feed Enable Feed Enable

The default Server URL will be: https://<server>:48083/cambium. The Interval should be ~30 seconds.

  • Go the the event sources screen in the Kloudspot Analytics Engine, enable the ‘Cambium Location API’ source and then restart the Stream Processing job.

Cambium cnMaestro

For cnMaestro, the steps to be taken are the same as with cnPilot, however to navigate to the radio & service settings please follow the steps in the below screenshot:

If BLE is also being scanned for, make sure to enable the Bluetooth API on the services page, and enter in the same information entered for WiFi.

Check Event Reception

Login to the Analytics Engine via SSH and run the kafka-listen command:

$ kafka-listen
{"vendor": "Kloudspot", "eventType": "PRESENCE", "location": null,..
{"vendor": "Kloudspot", "eventType": "PRESENCE", "location": null,..
{"vendor": "Kloudspot", "eventType": "PRESENCE", "location": null,..
{"vendor": "Kloudspot", "eventType": "PRESENCE", "location": null,..

You will be able to see the ‘raw’ event feed going into the stream processing.

[template(“related”)]