The Core APIs facilitate the creation, configuration, and management of WiFi Motion networks via RESTful APIs. It offers interfaces for accessing topologies, events, motion data, and more.
Cognitive Systems App Core API
The zone_priority_list is a list of locations within a WiFi Motion network that is configured by the end user. The list indicates which rooms are within the user's dwelling and can be used to map WiFi devices with the rooms that they are located in. The zone_priority_list is used to help determine which devices to be used for placement when the Default Sounding Mode is enabled. The order of the list identifies the user's priorities, with the locations at the top of the list being considered the top priority.
Enable motion events. On detected motion, the network emits a MotionDetectedEvent.
Enable Device Connection Events.
Requires global sounding_mode to equal deny and individual devices' sounding_mode to equal allow. When the connection state of device changes, an event is emitted. Possible events are: DeviceConnectedEvent, DeviceDisconnectedEvent and DeviceTimedOutEvent
Enable historical motion data from the network. The data can be queried through the Motion History APIs.
Enable storage of motion events. Requires motion_events_enabled to be enabled. The stored events can be queried through the Events APIs.
Pauses all motion detection. While paused, the network can't receive setting changes.
Advanced - Minimum score for device selection algorithm. Set to -1.1 to ignore device quality, and always use them for motion detection. This feature should be used in conjunction with the sounding_mode features.
When enabled, pet motion is less likely to generate a MotionDetectedEvent. Can only be used when global sensitivity is set to high (1.0) and all clients' sensitivity_mode is global.
Represents the duration of inactivity following a MotionDetectedEvent, that the network keeps monitoring for motion. Once inactivity is observed, the network emits a MotionStoppedEvent and concludes the event window.
Global motion detection sensitivity (1.0 - high, 2.0 - medium, 3.0 - low, 7.0 - very-low)
This parameter controls the default leaf selection policy for the network, the two policy modes are allow and deny.
Allow mode: leafs will be selected as best determined by leaf blower. Leaf(s) can be blocked from selection by setting txenble=0 for that leaf(s).
Deny mode: leafs that are not explicitly listed via a whitelist will be disallowed from sounding.
Note switching this mode will clear any existing device device availability settings and all devices will revert to available for allow mode or unavailable for deny mode.
- Mock serverhttps://docs.cognitivesystems.com/_mock/assets/specs/api/core/network/{network_id}/sounding/settings
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PATCH \
'https://docs.cognitivesystems.com/_mock/assets/specs/api/core/network/{network_id}/sounding/settings?update=false' \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"cooldown": 20,
"leafblower_cutoff": -1.1
}'{ "status": 0, "success": 0, "details": { "warnings": [], "errors": [] } }
- Mock serverhttps://docs.cognitivesystems.com/_mock/assets/specs/api/core/network/{network_id}/sounding/clients
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.cognitivesystems.com/_mock/assets/specs/api/core/network/{network_id}/sounding/clients' \
-H 'Authorization: YOUR_API_KEY_HERE'{ "devices": [ { … } ] }
The term Friendly Name, also known as friendly_name, refers to a name that is easy for the end user to understand. For example, if referring to a location, it is easier for an end user to refer to a location as "Bedroom" rather than the mac address of the device that is located in the bedroom.
Device location name assigned to the Device or Node. Maximum of 256 characters, supporting letters, spaces, digits, with only the following special characters: =, +, -, _, @, !. Supports base64 encoding. Can also be an empty string.
Indicates whether the device is using the global sensitivity setting or is being overridden at the device level.
Current sensitivity of the device
Only valid when sensitivity_mode = override, otherwise an error will be returned.
Controls if the device can be used for sounding.
- Mock serverhttps://docs.cognitivesystems.com/_mock/assets/specs/api/core/network/{network_id}/sounding/clients
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PATCH \
'https://docs.cognitivesystems.com/_mock/assets/specs/api/core/network/{network_id}/sounding/clients?update=false' \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"devices": [
{
"mac": "01:2a:b3:45:c6:78",
"friendly_name": "Apple TV"
}
]
}'{ "status": 0, "success": 0, "details": { "warnings": [], "errors": [] } }