4.7. Edge Connect Filter Outputs

This document describes the potential output for the various filters in Edge Connect. Note that all filters receive the keys provided by the previous filter. Unless the select filter is used to pick out specific keys, all input keys should be present in the output of any filter.

4.7.1. BLE Advertising Data

This section describes all of the available keys that are input to pipelines which process advertising data.

{
    "mac": "string",
    "rssi": "int",
    "name": "string",
    "mfg": "[]byte",
    "services": "[][]byte",
    "serviceData": "map[[]byte][]byte",
    "connectable": "bool",
    "solicited": "[][]byte",
    "eventType": "uint8",
    "flags": "byte",
    "txPower": "int"
}
Note that all of the advertising data input keys listed above will be present in the output unless they are removed with the select filter.

4.7.2. iBeacon

The iBeacon filter processes the main fields of the iBeacon payload and adds them to the output map.

{
    "ibeacon": {
        "uuid": "string",
        "major": "int",
        "minor": "int",
        "txPower": "int"
    }
}

4.7.3. Eddystone

The Eddystone filter processes the fields of the Eddystone payload and adds them to the output map.

{
    "eddystone": {
        "url": {
            "txPower": "int",
            "url": "string"
        },
        "tlm": {
            "version": "int",
            "battery": "int",
            "temperature": "float64",
            "temperatureRaw": "int",
            "advCount": "int",
            "secCount": "int"
        },
        "uid": {
            "txPower": "int",
            "beaconID": "string"
        },
        "eid": {
            "txPower": "int",
            "ephemeralID": "string"
        }
    }
}

4.7.4. Ruuvi Tag

The Ruuvi filter processes the fields of the Ruuvi Tag payload and adds them to the output map.

{
    "temperature": "float64",
    "humidity": "float64",
    "pressure": "uint32",
    "battery": "uint16",
    "accel": {
        "x": "float64",
        "y": "float64",
        "z": "float64"
    },
    "txpower": "uint16",
    "movecount": "int",
    "seqnum": "int"
}

4.7.5. Haltian Thingsee Occupancy

The Occupancy filter processes the fields of the Occupancy payload and adds them to the output map.

{
    "count": "int (raw mode)",
    "state": "bool (normal mode)"
}

4.7.6. Door Sensor

The Door Sensor filter processes the fields of the Door Sensor payload and adds them to the output map.

{
    "open": "bool",
    "mfgId": "int"
}

4.7.7. EnOcean Occupancy Sensor (EMDCB)

The EMDCB filter processes the fields of the EnOcean Occupancy sensor and adds them to the output map.

{
    "light": "int",
    "occupancy": "bool",
    "voltage": "float64",
    "energy": "float64",
    "solarLight": "int",
    "seq":"int",
    "seqSig":"int"
}

4.7.8. Minew S1 Temperature Sensor

The Minew S1 Temperature sensor filter processes the fields of the temperature sensor and adds them to the output map.

{
    "battery":"int",
    "temperature":"float64",
    "humidity":"float64"
}

4.7.9. Minew E6 Light Sensor

The Minew E6 Light sensor filter processes the fields of the temperature sensor and adds them to the output map.

{
    "battery":"int",
    "lightDetected":"bool"
}

4.7.10. Other Filters

Generally all other filters modify the output of the previous filter in some way. As this is the case, those filter outputs are not specifically documented here. For example, the inject filter may add any number of keys as specified in its configuration. Those keys will be available in the next filter of the pipeline.