Skip to content

SPS Extensions

Alex Robin edited this page Dec 14, 2016 · 10 revisions

Several types of SPS extensions are needed:

Persistent connection to send low latency commands

This implies getting exclusive access to the asset until expiration or another higher priority request is received.

Idea #1 Extension to existing Submit operation: Additional XML attribute to keep the connection alive so that server can accept real-time commands records in the incoming stream, optionally through websockets.

Idea #2 Implementation similar to SOS InsertResult: 1st register to get a "command stream ID", then send raw records with KVP request containing the ID, either via persistent HTTP connection or websockets.

Idea #3 Combined with asset locking: Call ReserveAsset request to reserve the asset for a given time period and obtain a "command stream ID" as above.

Allow sensor to register itself with SPS (we'll call that SPS-T)

  1. A sensor registers with a remote SPS-T endpoint using InsertSensor (same as SOS operation, already in the common SWES namespace)

  2. The sensor then registers supported command streams using the InsertTaskingTemplate operation (consistent with InsertResultTemplate in SOS)

  3. The actual command stream is created when the sensors issues a ConnectTaskingStream using Websocket

Clone this wiki locally