Skip to content

Types Reference

Shared data types used across the SignalR hubs and live control WebSocket.

Control Object

A command targeting a single shocker.

FieldTypeDescription
idUUIDThe shocker identifier.
typeControlTypeThe action to perform.
intensityintegerIntensity level (0--100).
durationintegerDuration in milliseconds (300--30000).
exclusivebooleanIf true, overrides any active live control session. Default false.

LiveFrame

A single live control frame for continuous real-time control.

FieldTypeDescription
shockerUUIDThe shocker identifier.
intensityintegerIntensity level (0--100).
typestringOne of "Stop", "Shock", "Vibrate", "Sound".

ControlType

ValueName
0Stop
1Shock
2Vibrate
3Sound

DeviceOnlineState

FieldTypeDescription
deviceUUIDThe device identifier.
onlinebooleanWhether the device is connected.
firmwareVersionstring or nullFirmware version (e.g. 1.2.0), or null if unknown.

DeviceUpdateType

ValueNameDescription
0CreatedA new device was added.
1UpdatedDevice metadata changed.
2ShockerUpdatedA shocker on the device was modified (name, limits, etc.).
3DeletedThe device was removed.

OtaUpdateProgressTask

ValueName
0FetchingMetadata
1PreparingForUpdate
2FlashingFilesystem
3VerifyingFilesystem
4FlashingApplication
5MarkingApplicationBootable
6Rebooting

ControlLogSender

FieldTypeDescription
idUUIDSender's user ID.
namestringSender's display name.
imagestringURL of the sender's avatar.
customNamestring or nullCustom name provided via ControlV2, if any.
connectionIdstringSignalR connection ID of the sender.
additionalItemsobjectExtra metadata (key-value pairs).

ControlLog

FieldTypeDescription
shockerBasicShockerInfoThe shocker that was controlled.
typeControlTypeThe control action that was performed.
intensityintegerIntensity level (0--100).
durationintegerDuration in milliseconds.
executedAtstringISO 8601 timestamp of execution.

BasicShockerInfo

FieldTypeDescription
idUUIDThe shocker identifier.
namestringThe shocker's display name.