Skip to main content
Skip table of contents

Pool

A pool groups a set of devices. It has PoolCapabilities that connect a pool to Capabilities that all devices in the pool have.

If the actual device for an action is not important, it can be scheduled on a pool that has the needed PoolCapability. For example, a “Record” can be scheduled on a pool that contains devices of type “Recorder” and has a PoolCapability of type “Record”. The scheduler selects an available port for recording from the pool automatically.

Properties

Property

Possible Values

Example

Description

id

string

0B

External ID of the Pool.

description

string

All recording devices in Cologne.

A human readable description of what the pool contains.

name

string

CologneRecordingDevicesPool.

The name of the pool.

deviceIds

Array of string

CODE
[
  "2n",
  "0B"
]

A list of the external IDs of the devices being part of the pool.

poolCapabilities

Array of PoolCapability

see PoolCapability.

Assigns all Capabilities it has to this Pool using PoolCapability-objects.

Example JSON Snippet

JSON
{
  "id": "0B",
  "description": "Best recording devices",
  "name": "Pool1",
  "deviceIds": [
    "MX",
    "2n",
    "YQ",
    "aN",
    "ya"
  ],
  "poolCapabilities": [
    {
      "id": "0B",
      "capability": {
        "id": "0B",
        "content": "{\"action\":\"Record\",\"input\":{\"targetPath\":{\"type\":\"string\",\"optional\":\"true\"},\"profileName\":{\"type\":\"string\",\"optional\":\"true\"}},\"output\":{\"pathToFile\":{\"type\":\"string\"}},\"properties\":{\"preroll\":{\"type\":\"integer\",\"kind\":\"fix\"}}, \"events\": [ \"RecorderMock.fileCreated\", \"RecorderMock.recordingFailed\", \"RecorderMock.recordingStarted\", \"RecorderMock.recordingFinished\" ]}",
        "capabilityType": "Record",
        "needsStopCommand": true
      },
      "config": "{\"preroll\":2}"
    },
    {
      "id": "GD",
      "capability": {
        "id": "GD",
        "content": "{\"action\":\"LoopRecord\",\"input\":{\"targetPath\":{\"type\":\"string\",\"optional\":\"true\"},\"profile\":{\"type\":\"string\",\"optional\":\"true\"},\"output\":{\"pathToFile\":{\"type\":\"string\"}},\"properties\":{\"preroll\":{\"type\":\"integer\",\"kind\":\"fix\"},\"maxLoopTime\":{\"type\":\"integer\",\"kind\":\"dynamic\"}}}}",
        "capabilityType": "LoopRecord",
        "needsStopCommand": false
      },
      "config": ""
    },
    {
      "id": "pY",
      "capability": {
        "id": "pY",
        "content": "{\"action\":\"Storage\",\"input\":{\"profile\":{\"type\":\"string\",\"optional\":\"true\"}},\"output\":{\"capacity\":{\"type\":\"TimeSpan\"}}}",
        "capabilityType": "Storage",
        "needsStopCommand": false
      },
      "config": "{\"preroll\":3}"
    }
  ]
}

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.