Skip to content

Latest commit

 

History

History
355 lines (298 loc) · 11.8 KB

lights.md

File metadata and controls

355 lines (298 loc) · 11.8 KB

Purpose

This specification is intended to define a standardized way of communicating with lighting systems for real-time monitoring and control and to allow data collection between control systems and / or peripheral devices.

NOTE: need to add API to query last-known update...identify what was done and when (and by whom?)

Scope

The scope of this document is limited to providing a payload structure and endpoint type definitions to allow basic control and data acquisition. The addition of product specific features is left to the implementer, but to be in compliance the product must support the basic set of features specified below.

Definitions

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

Endpoints

Sensors

Talking to one sensor

Retrieving ID information

GET http://[domain:port]/agroapi/[version]/lights/sensors/[sensorid]/info  

Returns Info

Sending ID information

POST http://[domain:port]/agroapi/[version]/lights/sensors/[sensorid]/info  

Sends Info

Retrieving version information

GET http://[domain:port]/agroapi/[version]/lights/sensors/[sensorid]/version  

Returns Version

Retrieving location information

GET http://[domain:port]/agroapi/[version]/lights/sensors/[sensorid]/location  

Returns Location

Sending location information

POST http://[domain:port]/agroapi/[version]/lights/sensors/[sensorid]/location  

Sends Location

Retrieving spectrum measurements as PPF

GET http://[domain:port]/agroapi/[version]/lights/sensors/[sensorid]/ppf  

Returns Light PPF

Retrieving spectrum measurements as PPFD

GET http://[domain:port]/agroapi/[version]/lights/sensors/[sensorid]/ppfd  

Returns Light PPFD

Talking to all sensors

Retrieving ID information

GET http://[domain:port]/agroapi/[version]/lights/sensors/info  

Returns an array of Info

Sending ID information

POST http://[domain:port]/agroapi/[version]/lights/sensors/info  

Sends an array of Info

Retrieving version information

GET http://[domain:port]/agroapi/[version]/lights/sensors/version  

Returns an array of Version

Retrieving location information

GET http://[domain:port]/agroapi/[version]/lights/sensors/location  

Returns an array of Location

Sending location information

POST http://[domain:port]/agroapi/[version]/lights/sensors/location  

Sends an array of Location

Retrieving spectrum measurements as PPF

GET http://[domain:port]/agroapi/[version]/lights/sensors/ppf  

Returns an array of Light PPF

Retrieving spectrum measurements as PPFD

GET http://[domain:port]/agroapi/[version]/lights/sensors/ppfd  

Returns an array of Light PPFD

Talking to all sensors in a zone

Retrieving ID information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/sensors/info  

Returns an array of Info

Sending ID information

POST http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/sensors/info  

Sends an array of Info

Retrieving version information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/sensors/version  

Returns an array of Version

Retrieving location information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/sensors/location  

Returns an array of Location

Sending location information

POST http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/sensors/location  

Sends an array of Location

Retrieving spectrum measurements as PPF

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/sensors/ppf  

Returns an array of Light PPF

Retrieving spectrum measurements as PPFD

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/sensors/ppfd  

Returns an array of Light PPFD

Light PPF

Name Description Unit
id Unique id of the device uid
timestamp UTC timestamp of the measurement datetime
red Level of red spectrum light PPF
blue Level of blue spectrum light PPF
green Level of green spectrum light PPF
uv Level of ultraviolet light PPF
infrared Level of infrared light PPF
par Level of absorbable light PPF
light Level of all spectrums of light PPF

Light PPFD

Name Description Unit
id Unique id of the device uid
timestamp UTC timestamp of the measurement datetime
red Level of red spectrum light PPFD
blue Level of blue spectrum light PPFD
green Level of green spectrum light PPFD
uv Level of ultraviolet light PPFD
infrared Level of infrared light PPFD
par Level of absorbable light PPFD
light Level of all spectrums of light PPFD

Fixtures

Talking to one fixture

Retrieving ID information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/info

Returns Info

Sending ID information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/info

Sends Info

Retrieving version information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/version  

Returns Version

Retrieving location information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/location

Returns Location

Sending location information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/location

Sends Location

Retrieving configuration information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/config

Returns Fixture Configuration

Sending configuration information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/config

Sends Fixture Configuration

Retrieving power state information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/power

Returns Fixture Power

Sending power state information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/[fixtureid]/power

Sends Fixture Power

Talking to all fixtures

Retrieving ID information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/info

Returns an array of Info

Sending ID information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/info

Sends an array of Info

Retrieving version information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/version  

Returns an array of Version

Retrieving location information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/location

Returns an array of Location

Sending location information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/location

Sends an array of Location

Retrieving configuration information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/config

Returns an array of Fixture Configuration

Sending configuration information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/config

Sends an array of Fixture Configuration

Retrieving power state information

GET http://[domain:port]/agroapi/[version]/lights/fixtures/power

Returns an array of Fixture Power

Sending power state information

POST http://[domain:port]/agroapi/[version]/lights/fixtures/power

Sends an array of Fixture Power

Talking to all fixtures in a zone

Retrieving ID information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/info

Returns an array of Info

Sending ID information

POST http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/info

Sends an array of Info

Retrieving version information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixture/[fixtureid]/version  

Returns an array of Version

Retrieving location information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/location

Returns an array of Location

Sending location information

POST http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/location

Sends an array of Location

Retrieving configuration information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/config

Returns an array of Fixture Configuration

Sending configuration information

POST http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/config

Sends an array of Fixture Configuration

Retrieving power state information

GET http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/power

Returns an array of Fixture Power

Sending power state information

POST http://[domain:port]/agroapi/[version]/zones/[zoneid]/lights/fixtures/power

Sends an array of Fixture Power

Fixture Configuration

Name Description Unit
id Unique id of the fixture uid
channels array of channel configurations Channel Configuration

Channel Configuration

Name Description Unit
id Unique id of the channel uid
lo-color Lower boundary of the frequency range for a color channel nm
hi-color Upper boundary of the frequency range for a color channel nm
cct Color temperature for a white channel K (Kelvin)
intensity Light intensity %

Fixture Power

Name Description Unit
id Unique id of the fixture uid
status The active state of the lights "on" or "off"