-
Notifications
You must be signed in to change notification settings - Fork 12
Distributed Query Language
list * | filter @unit='kwh' | subscribe $value
- every query method is based on the result of left pipe
- the first method will always be based on the root node of the broker
- syntax:
list {path}
- input: array of node
- output: array of node
- distributed: yes
{path}:
-
*
means match any nodes -
?
means match one node
exmaples
list /a/b/c
list /?/a?/?b/c
list /a/b/c*
- syntax:
subscribe {expression1}, {expression2}, {expression3} .....
- input: array of node
- output: array of records (with path and the record id)
- distributed: yes
Examples
subscribe $path
subscribe $value
subscribe child.value
- syntax:
filter {condition}
- input: array of nodes or array of records
- output: same type as input
- distributed: yes
examples
filter $unit="F"
filter @icon!=null
invoke actions
set config/attribute/value
remove config/attribute
waiting for changes and doing rollup
Protocol
◌ Design
◌ Initializing Connection
◌ Node API
◌ Methods
◌ Broker
◌ Broker Discovery
◌ Configs
◌ Value Types
◌ Tokens
◌ Quality of Service
DSLink Manager
◌ dslink.json
◌ Startup Command
SDK Development
◌ Implementation Guide
DSA Server
◌ Installation
◌ Update Server
◌ Server Configuration
◌ CLI Tools
◌ DSA Permission Basics
◌ DSA Permission Model
◌ Permission List for the Root
◌ Authentication
◌ OpenID Connect
◌ Password Hasher
◌ DGLux Server SSL (HTTPS)
◌ Docker
◌ Audit
◌ Data Node
◌ Install NGINX with DSA Server
◌ Configure Ubuntu Linux to auto start DSA server
◌ Troubleshooting