Skip to main content

Table 1 Common Dioptase services and their parameters

From: Dioptase: a distributed data streaming middleware for the future web of things

Service path Description and parameters
/streams Access to a stream. id=<stream id>, mode=stream|hook, *hook=<hook name> (if mode=hook)
/thing/properties Get the properties of the Thing: sensors, actuators, supported storage types and metadata. *sensors=true|false, *actuators=true|false, *storages=true|false, *metadata=true|false
/thing/sensors Get identifiers, units, semantic/concrete types and metadata of one or all the sensors. *id=<sensor id>
/thing/actuators Get identifiers and parameters (names, types, metadata) of one or all the actuators. *id=<actuator id>
/thing/operators Get identifiers and contracts (name/type of inputs, number of inputs) of one or all the compiled operators. *id=<operator id>
/thing/actuate Executes one of the actuation service. id=<actuator id>, service=<service name>, actuator-specific parameters (key/value)
/components/running Get the name and the input/output stream URIs of deployed components (producer, processor, storage).
/components/remove Stop and destroy a component. id=<component id>
/processors Get identifiers and input/output streams schemas of one or all the processors, possibly in extended form (logic, state, schemas). id*=<processor id>, *extended=true|false
/processors/state Get the content of the internal state of a processor. id=<processor id>
/processors/new Deploy a new processor and starts it. id=<processor id>, code=<source code> or operator=<operator id>, inputs=<URIs>, *state=<start state>, *history=true|false, *h-size=<history size>, operator-specific parameters (key/value)
/processors/history Get a processor history as a stream. id=<processor id>, *t-start=<timestamp>, *t-end=<timestamp>|now, *nb=<nb of items>
/processors/migrate Migrate a processor to another device. id=<processor id>, to=<URI>, *forget-state=true|false
/producers Get identifiers, sensor names and output streams schemas of one or all the producers. *id=<processor id>
/producers/new Deploy a new producer. id=<producer id>, sensor=<sensor id>, *sampling=<sampling rate>
/storages Get identifiers, types and input/output schemas of one or all the storages. *id=<storage id>
/storages/new Deploy a new storage. id=<storage id>, type=<storage type>, storage-specific parameters (key/value)
  1. Legend: *xxx = optional parameter <yyy> = any value a|b|c = parameter value can be a, b or c.