{
    "dpi": {
        "_id": "dpi",
        "type": "channel",
        "common": {},
        "native": {
            "object_id": "dpi"
        },
        "logic": {
            "has_key": "_self",
            "has": {
                "dpi.by_app": {
                    "type": "channel",
                    "common": {},
                    "native": {
                        "object_id": "dpi.by_app"
                    },
                    "logic": {
                        "_id": {
                            "ifNotNull": [
                                {
                                    "var": "by_app"
                                },
                                "by_app",
                                null
                            ]
                        },
                        "has_key": "by_app",
                        "has": {
                            "dpi.by_app.app": {
                                "type": "channel",
                                "common": {},
                                "native": {
                                    "object_id": "dpi.by_app.app"
                                },
                                "logic": {
                                    "_id": {
                                        "cleanupForUseAsId": [
                                            {
                                                "cat": [
                                                    "app_",
                                                    {
                                                        "var": "app"
                                                    }
                                                ]
                                            }
                                        ]
                                    },
                                    "common": {
                                        "name": {
                                            "translateAppCodeToName": [
                                                {
                                                    "var": "cat"
                                                },
                                                {
                                                    "var": "app"
                                                }
                                            ]
                                        }
                                    },
                                    "has_key": "_self",
                                    "has": {
                                        "dpi.by_app.app.app": {
                                            "_id": "app",
                                            "type": "state",
                                            "common": {
                                                "name": "Application Id",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.app"
                                            },
                                            "logic": {
                                                "value": "app"
                                            }
                                        },
                                        "dpi.by_app.app.cat": {
                                            "_id": "cat",
                                            "type": "state",
                                            "common": {
                                                "name": "Category Id",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.cat"
                                            },
                                            "logic": {
                                                "value": "cat"
                                            }
                                        },
                                        "dpi.by_app.app.name": {
                                            "_id": "name",
                                            "type": "state",
                                            "common": {
                                                "name": "Name of Application",
                                                "type": "string",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.name"
                                            },
                                            "logic": {
                                                "value": {
                                                    "translateAppCodeToName": [
                                                        {
                                                            "var": "cat"
                                                        },
                                                        {
                                                            "var": "app"
                                                        }
                                                    ]
                                                }
                                            }
                                        },                                        
                                        "dpi.by_app.app.clients": {
                                            "type": "channel",
                                            "common": {},
                                            "native": {
                                                "object_id": "dpi.by_app.app.clients"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "clients"
                                                        },
                                                        "clients",
                                                        null
                                                    ]
                                                },
                                                "has_key": "clients",
                                                "has": {
                                                    "dpi.by_app.app.clients.client": {
                                                        "type": "channel",
                                                        "common": {},
                                                        "native": {
                                                            "object_id": "dpi.by_app.app.clients.client"
                                                        },
                                                        "logic": {
                                                            "_id": {
                                                                "cleanupForUseAsId": [
                                                                    {
                                                                        "var": "mac"
                                                                    }
                                                                ]
                                                            },
                                                            "common": {
                                                                "name": "mac"
                                                            },
                                                            "has_key": "_self",
                                                            "has": {
                                                                "dpi.by_app.app.clients.client.mac": {
                                                                    "_id": "mac",
                                                                    "type": "state",
                                                                    "common": {
                                                                        "name": "MAC address",
                                                                        "type": "string",
                                                                        "role": "state",
                                                                        "read": true,
                                                                        "write": false,
                                                                        "desc": ""
                                                                    },
                                                                    "native": {
                                                                        "object_id": "dpi.by_app.app.clients.client.mac"
                                                                    },
                                                                    "logic": {
                                                                        "value": "mac"
                                                                    }
                                                                },
                                                                "dpi.by_app.app.clients.client.rx_bytes": {
                                                                    "type": "state",
                                                                    "common": {
                                                                        "name": "RX",
                                                                        "type": "number",
                                                                        "role": "state",
                                                                        "read": true,
                                                                        "write": false,
                                                                        "unit": "Byte",
                                                                        "desc": ""
                                                                    },
                                                                    "native": {
                                                                        "object_id": "dpi.by_app.app.clients.client.rx_bytes"
                                                                    },
                                                                    "logic": {
                                                                        "_id": {
                                                                            "ifNotNull": [
                                                                                {
                                                                                    "var": "rx_bytes"
                                                                                },
                                                                                "rx_bytes",
                                                                                null
                                                                            ]
                                                                        },
                                                                        "value": "rx_bytes"
                                                                    }
                                                                },
                                                                "dpi.by_app.app.clients.client.rx_packets": {
                                                                    "type": "state",
                                                                    "common": {
                                                                        "name": "RX packets",
                                                                        "type": "number",
                                                                        "role": "state",
                                                                        "read": true,
                                                                        "write": false,
                                                                        "desc": ""
                                                                    },
                                                                    "native": {
                                                                        "object_id": "dpi.by_app.app.clients.client.rx_packets"
                                                                    },
                                                                    "logic": {
                                                                        "_id": {
                                                                            "ifNotNull": [
                                                                                {
                                                                                    "var": "rx_packets"
                                                                                },
                                                                                "rx_packets",
                                                                                null
                                                                            ]
                                                                        },
                                                                        "value": "rx_packets"
                                                                    }
                                                                },
                                                                "dpi.by_app.app.clients.client.tx_bytes": {
                                                                    "type": "state",
                                                                    "common": {
                                                                        "name": "TX",
                                                                        "type": "number",
                                                                        "role": "state",
                                                                        "read": true,
                                                                        "write": false,
                                                                        "unit": "Byte",
                                                                        "desc": ""
                                                                    },
                                                                    "native": {
                                                                        "object_id": "dpi.by_app.app.clients.client.tx_bytes"
                                                                    },
                                                                    "logic": {
                                                                        "_id": {
                                                                            "ifNotNull": [
                                                                                {
                                                                                    "var": "tx_bytes"
                                                                                },
                                                                                "tx_bytes",
                                                                                null
                                                                            ]
                                                                        },
                                                                        "value": "tx_bytes"
                                                                    }
                                                                },
                                                                "dpi.by_app.app.clients.client.tx_packets": {
                                                                    "type": "state",
                                                                    "common": {
                                                                        "name": "TX packets",
                                                                        "type": "number",
                                                                        "role": "state",
                                                                        "read": true,
                                                                        "write": false,
                                                                        "desc": ""
                                                                    },
                                                                    "native": {
                                                                        "object_id": "dpi.by_app.app.clients.client.tx_packets"
                                                                    },
                                                                    "logic": {
                                                                        "_id": {
                                                                            "ifNotNull": [
                                                                                {
                                                                                    "var": "tx_packets"
                                                                                },
                                                                                "tx_packets",
                                                                                null
                                                                            ]
                                                                        },
                                                                        "value": "tx_packets"
                                                                    }
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        },
                                        "dpi.by_app.app.known_clients": {
                                            "type": "state",
                                            "common": {
                                                "name": "Known clients",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.known_clients"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "known_clients"
                                                        },
                                                        "known_clients",
                                                        null
                                                    ]
                                                },
                                                "value": "known_clients"
                                            }
                                        },
                                        "dpi.by_app.app.rx_bytes": {
                                            "type": "state",
                                            "common": {
                                                "name": "RX",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "unit": "Byte",
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.rx_bytes"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "rx_bytes"
                                                        },
                                                        "rx_bytes",
                                                        null
                                                    ]
                                                },
                                                "value": "rx_bytes"
                                            }
                                        },
                                        "dpi.by_app.app.rx_packets": {
                                            "type": "state",
                                            "common": {
                                                "name": "RX packets",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.rx_packets"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "rx_packets"
                                                        },
                                                        "rx_packets",
                                                        null
                                                    ]
                                                },
                                                "value": "rx_packets"
                                            }
                                        },
                                        "dpi.by_app.app.tx_bytes": {
                                            "type": "state",
                                            "common": {
                                                "name": "TX",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "unit": "Byte",
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.tx_bytes"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "tx_bytes"
                                                        },
                                                        "tx_bytes",
                                                        null
                                                    ]
                                                },
                                                "value": "tx_bytes"
                                            }
                                        },
                                        "dpi.by_app.app.tx_packets": {
                                            "type": "state",
                                            "common": {
                                                "name": "TX packets",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_app.app.tx_packets"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "tx_packets"
                                                        },
                                                        "tx_packets",
                                                        null
                                                    ]
                                                },
                                                "value": "tx_packets"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "dpi.by_cat": {
                    "type": "channel",
                    "common": {},
                    "native": {
                        "object_id": "dpi.by_cat"
                    },
                    "logic": {
                        "_id": {
                            "ifNotNull": [
                                {
                                    "var": "by_cat"
                                },
                                "by_cat",
                                null
                            ]
                        },
                        "has_key": "by_cat",
                        "has": {
                            "dpi.by_cat.cat": {
                                "type": "channel",
                                "common": {},
                                "native": {
                                    "object_id": "dpi.by_cat.cat"
                                },
                                "logic": {
                                    "_id": {
                                        "cleanupForUseAsId": [
                                            {
                                                "cat": [
                                                    "cat_",
                                                    {
                                                        "var": "cat"
                                                    }
                                                ]
                                            }
                                        ]
                                    },
                                    "common": {
                                        "name": {
                                            "translateCatCodeToName": [
                                                {
                                                    "var": "cat"
                                                }
                                            ]
                                        }
                                    },
                                    "has_key": "_self",
                                    "has": {
                                        "dpi.by_cat.cat.name": {
                                            "_id": "name",
                                            "type": "state",
                                            "common": {
                                                "name": "Name of Category",
                                                "type": "string",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_cat.cat.name"
                                            },
                                            "logic": {
                                                "value": {
                                                    "translateCatCodeToName": [
                                                        {
                                                            "var": "cat"
                                                        }
                                                    ]
                                                }
                                            }
                                        },
                                        "dpi.by_cat.cat.apps": {
                                            "_id": "apps",
                                            "type": "state",
                                            "common": {
                                                "name": "List of Application Ids",
                                                "type": "array",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_cat.cat.apps"
                                            },
                                            "logic": {
                                                "value": "apps"
                                            }
                                        },
                                        "dpi.by_cat.cat.cat": {
                                            "_id": "cat",
                                            "type": "state",
                                            "common": {
                                                "name": "Category Id",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_cat.cat.cat"
                                            },
                                            "logic": {
                                                "value": "cat"
                                            }
                                        },
                                        "dpi.by_cat.cat.rx_bytes": {
                                            "type": "state",
                                            "common": {
                                                "name": "RX",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "unit": "Byte",
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_cat.cat.rx_bytes"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "rx_bytes"
                                                        },
                                                        "rx_bytes",
                                                        null
                                                    ]
                                                },
                                                "value": "rx_bytes"
                                            }
                                        },
                                        "dpi.by_cat.cat.rx_packets": {
                                            "type": "state",
                                            "common": {
                                                "name": "RX packets",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_cat.cat.rx_packets"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "rx_packets"
                                                        },
                                                        "rx_packets",
                                                        null
                                                    ]
                                                },
                                                "value": "rx_packets"
                                            }
                                        },
                                        "dpi.by_cat.cat.tx_bytes": {
                                            "type": "state",
                                            "common": {
                                                "name": "TX",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "unit": "Byte",
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_cat.cat.tx_bytes"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "tx_bytes"
                                                        },
                                                        "tx_bytes",
                                                        null
                                                    ]
                                                },
                                                "value": "tx_bytes"
                                            }
                                        },
                                        "dpi.by_cat.cat.tx_packets": {
                                            "type": "state",
                                            "common": {
                                                "name": "TX packets",
                                                "type": "number",
                                                "role": "state",
                                                "read": true,
                                                "write": false,
                                                "desc": ""
                                            },
                                            "native": {
                                                "object_id": "dpi.by_cat.cat.tx_packets"
                                            },
                                            "logic": {
                                                "_id": {
                                                    "ifNotNull": [
                                                        {
                                                            "var": "tx_packets"
                                                        },
                                                        "tx_packets",
                                                        null
                                                    ]
                                                },
                                                "value": "tx_packets"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "dpi.last_updated": {
                    "_id": "last_updated",
                    "type": "state",
                    "common": {
                        "name": "Last updated",
                        "type": "string",
                        "role": "state",
                        "read": true,
                        "write": false,
                        "desc": ""
                    },
                    "native": {
                        "object_id": "dpi.last_updated"
                    },
                    "logic": {
                        "value": {
                            "secondsToDateTime": [
                                {
                                    "var": "last_updated"
                                }
                            ]
                        }
                    }
                }
            }
        }
    }
}