Daemon Network API - Get

Service name: <MachineName>-Daemon (one per machine).

Encryption

Gets for reading the current state of Pixotope encryption key files.

EncryptionKeys [GET]

EncryptionKeys

Returns the current encryption key info for this machine. The response contains metadata about the installed .pxkey files.

No parameters — message is always {}.



Value

Value

OBJECT

JSON object describing the current encryption key state (file names, validity, etc.).

Example - Get current encryption keys

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "EncryptionKeys"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "EncryptionKeys"
}
JSON
{
  "Keys": [
    {
      "Name": "machine.pxkey",
      "Valid": true
    }
  ]
}

Network

Gets for reading network discovery and broadcast configuration state.

AvailablePixotopeNetworks [GET]

AvailablePixotopeNetworks

Returns the list of all Pixotope machines currently discovered on the local network via UDP broadcast. The result is a JSON object mapping machine hostnames to their broadcaster metadata.

No parameters — message is always {}.



Value

Value

OBJECT

Map of `{ "<Hostname>": { "Hostname", "Name", "IP", "Version", "Encrypted", "BackupIp", "Group", "DissalowConnection" } }` for each discovered machine.

Example - Get all discovered Pixotope machines

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "AvailablePixotopeNetworks"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "AvailablePixotopeNetworks"
}
JSON
{
  "MACHINE-A": {
    "Hostname": "MACHINE-A",
    "Name": "Store",
    "IP": "192.168.1.10",
    "Version": "26.2.0",
    "Encrypted": "false",
    "BackupIp": "",
    "Group": "default",
    "DissalowConnection": "false"
  }
}
BroadcastInfo [GET]

BroadcastInfo

Returns the current network broadcast configuration for this machine, including the resolved broadcast address, network adapter IP, netmask, and mode.

No parameters — message is always {}.



Value

Value

OBJECT

`{ "Broadcast": "<broadcast_addr>", "NetworkAdapter": "<ip>", "Netmask": "<mask>", "Mode": "<mode>" }`.

Example - Get broadcast configuration

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "BroadcastInfo"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "BroadcastInfo"
}
JSON
{
  "Broadcast": "192.168.1.255",
  "NetworkAdapter": "192.168.1.5",
  "Netmask": "255.255.255.0",
  "Mode": "Primary"
}

Videohub

Gets for reading the current state and connection status of the Blackmagic Videohub.

VideohubServerState [GET]

VideohubServerState

Returns the full routing and label state of the connected Videohub device, including device info, input/output labels, output locks, and video routing.

No parameters — message is always {}.



Value

Value

OBJECT

`{ "VideohubDevice": {}, "InputLabels": {}, "OutputLabels": {}, "VideoOutputLocks": {}, "VideoOutputRouting": {} }`. All maps use port index strings as keys.

Example - Get the full Videohub state

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "VideohubServerState"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "VideohubServerState"
}
JSON
{
  "VideohubDevice": {
    "Model Name": "Blackmagic Smart Videohub 12x12"
  },
  "InputLabels": {
    "0": "Camera A"
  },
  "OutputLabels": {
    "0": "Monitor 1"
  },
  "VideoOutputLocks": {
    "0": "U"
  },
  "VideoOutputRouting": {
    "0": "0"
  }
}
VideohubServerConnectionStatus [GET]

VideohubServerConnectionStatus

Returns the current TCP connection status of the Videohub integration, including whether it is connected, and the IP and port of the connected device.

No parameters — message is always {}.



Value

Value

OBJECT

`{ "IsConnected": <bool>, "IP": "<ip>", "Port": <port> }`.

Example - Get Videohub connection status

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "VideohubServerConnectionStatus"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "VideohubServerConnectionStatus"
}
JSON
{
  "IsConnected": true,
  "IP": "192.168.1.20",
  "Port": 9990
}

IOBot

Gets for reading IOBot connection status, entities, and preset data.

IoBotConnectionStatus [GET]

IoBotConnectionStatus

Returns the current connection status of the IOBot integration as a JSON string.

No parameters — message is always {}.



Value

Value

OBJECT

JSON string describing the connection state (connected, IP, port).

Example - Get IOBot connection status

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "IoBotConnectionStatus"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "IoBotConnectionStatus"
}
JSON
{
  "connected": true,
  "address": "http://192.168.1.50:8080"
}
IoBotEntities [GET]

IoBotEntities

Returns all IOBot entities currently registered in the controller as a JSON array.

No parameters — message is always {}.



Value

Value

ARRAY

JSON array of entity objects: `[{ "name", "id", "online", "iotype", "nbPresets" }]`.

Example - Get all IOBot entities

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "IoBotEntities"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "IoBotEntities"
}
JSON
[
  {
    "name": "Camera Arm",
    "id": 1,
    "online": true,
    "iotype": "out",
    "nbPresets": 5
  }
]
IoBotPresets [GET]

IoBotPresets

Returns all IOBot presets currently cached in the state store as a JSON array.

No parameters — message is always {}.



Value

Value

ARRAY

JSON array of preset objects: `[{ "name", "id", "type", "status" }]`.

Example - Get all cached IOBot presets

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "IoBotPresets"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "IoBotPresets"
}
JSON
[
  {
    "name": "Home",
    "id": 1,
    "type": "position",
    "status": "idle"
  }
]
IoBotPresetUpdate [GET]

IoBotPresetUpdate

Returns an empty object. Used as a subscription point — subscribers listen for the broadcast variant of this name to receive live preset state changes pushed by `IoBotPreset`, `IoBotPresetCue`, `IoBotPresetPlay`, `IoBotPresetPlayLoop`, and `IoBotPresetStop`.

No parameters — message is always {}.



Value

Value

OBJECT

Always `{}`.

Example - Subscribe to preset updates

Request (you send)

JSON
{
  "Type": "Get",
  "Target": "<MachineName>-Daemon",
  "RespondTo": "<Service>",
  "Name": "IoBotPresetUpdate"
}

Response (you receive)

JSON
{
  "Type": "Update",
  "Source": "<MachineName>-Daemon",
  "Target": "<Service>",
  "Name": "IoBotPresetUpdate"
}
JSON
{}