Devices
Devices is a technique for identifying devices based on event data. Once identified, Devices provides many features for working with the data.
DeviceMdns
DeviceMdns
Configuration for devices which are discovered via MDNS requests
Referenced By:
DeviceType
Fields
Name | Type | Description | Required |
---|---|---|---|
requestMac | boolean | When RequestMac is true, an attempt will be made to discover the mac address of the device found via an ARP request If retrieval of the mac fails, no event will be generated | No |
services | array | Services is the list of MDNS services which are broadcast by the device | Yes |
DeviceMonitoring
DeviceMonitoring
DeviceMonitoring controls reporting of devices to Edge Direct
If enabled, all devices of known types are reported to Edge Direct.
Referenced By:
Devices
Fields
Name | Type | Description | Required |
---|---|---|---|
debug | boolean | Enable debug logging | No |
debugInput | object | Enable logging a custom map built from the input map; will override the default event logging Define the map as key pairs (see inject), supports dot-notation, templating Example: { "importantValue": "{{.nested.important.value}}"} | No |
debugOutput | object | Enable logging a custom map built from the output map; will override the default event logging Define the map as key pairs (see inject), supports dot-notation, templating Example: { "importantValue": "{{.nested.important.value}}"} | No |
enabled | boolean | Set ot true to enable device monitoring | No |
eventInterval | ? | The interval to send batches of device events to Edge Direct | No |
snapshotInterval | ? | The interval to send full device snapshots to Edge Direct | No |
verbose | boolean | Enable verbose logging | No |
DeviceProp
DeviceProp
DeviceProp describes a property that is settable/gettable on a device.
See the propSet
filter and {{ Device.Props }}
template function.
Referenced By:
DeviceType
Fields
Name | Type | Description | Required |
---|---|---|---|
persistent | boolean | No |
DeviceType
DeviceType
Definition for a particular type of Device that Edge Connect will interact with.
DeviceTypes can be used to add properties to a device and can be used to define a device group.
A DeviceType minimally has an ID and a way to identify the devices from advertisements using matchers.
Referenced By:
Devices
Fields
Name | Type | Description | Required |
---|---|---|---|
allowUnknownProps | boolean | True if devices of this type allow undefined properties to be set on them | No |
deviceIdTemplate | string | The template used to generate the deviceId for devices of this type Example: "mydevice_{{ .mac | ToUpper }}" | No |
ephemeral | boolean | True if this device type represents an ephemeral device that should not be tracked long term. An example of an ephemeral device is one that is only around for a little bit, or has an unstable mac/id. This essentially tells the device registry to identify this device but not track it. Example: false | No |
id | string | Unique ID of the DeviceType Example: "rs40" | Yes |
keys | map of string to KeyDefinition | device specific keys | No |
match | ? | Keys to match (all keys) for an inline definition (see MatcherDefinition ), or a Template to evaluate and match to a true value. | No |
matchAny | boolean | Should we match any of the provided matchers (true)? Or all of the matchers (false) | No |
matchers | array | The list of top-level matcher IDs to apply to the input map Example: [ "is-nearby", "is-my-device-type"] | No |
mdns | DeviceMdns | No | |
props | map of string to DeviceProp | Properties that can be set/get on devices of this type. See the propSet filter and the Device.Props template function. | No |
Devices
Devices
Configuration of Devices and Device Templates
Referenced By:
EdgeConnectConfig RecipeDefinition
Fields
Name | Type | Description | Required |
---|---|---|---|
maxDevices | integer | The maximum number of devices to track in the device registry LRU cache. If this number is exceeded, devices are pushed out of this cache and also removed from their device group tracking. Maximum value 50000. | No |
monitoring | DeviceMonitoring | No | |
types | array of DeviceType | An ordered list of DeviceTypes to try to apply to any incoming events from devices, in order to identify them. | No |
Updated over 1 year ago