Real-time event stream from the camera SDK. Subscribe to events from all cameras or a specific camera.
Subscribe to All Camera Events
curl -N http://localhost:8080/api/events
Subscribe to Select Camera Events
GET /api/cameras/{cameraId}/events
Same event types, filtered to a single camera.
curl -N http://localhost:8080/api/cameras/D10F60149B0C/events
Connection & Lifecycle Events
Events related to camera connection state and SDK errors.
When using the Client SDK, connection and lifecycle events can also be accessed via manager.on(). See Client SDK Events for details.
| Event | SDK Callback | Description |
|---|
connected | OnConnected | Camera connection established |
disconnected | OnDisconnected | Camera disconnected |
error | OnError | SDK error occurred |
connected
{"cameraId": "D10F60149B0C"}
disconnected
error
{"code": "0x00008001", "message": "Generic error"}
Property & Action Events
Real-time notifications from camera activity — settings changes, shutter events, autofocus, and file transfers.
| Event | SDK Callback | Description |
|---|
propertyChanged | OnPropertyChangedCodes | Property values changed |
warning | OnWarning | Camera warning/notification |
afStatus | OnWarningExt | Autofocus state change |
downloadComplete | OnCompleteDownload | Auto-transferred image saved |
transferProgress | OnNotifyRemoteTransferResult | File pull completed |
propertyChanged
{"codes": ["0x104", "0x105"], "count": 2}
warning
{"code": "0x20011", "message": "Captured_Event"}
Code 0x20011 = image captured (shutter fired).
afStatus
States: focused, unlocked, tracking
downloadComplete
{"filename": "/path/to/DSC09596.JPG", "type": "image"}
Only fires in remote connection mode with still-image-store-destination set to Host PC or Both.
transferProgress
{"percent": 100, "notify": "0x20093", "filename": "/path/to/DSC09598.JPG"}
Only fires in remote-transfer mode after explicit file pull.
Event Sequence Examples
Capture with auto-transfer (remote mode)
event: afStatus
data: {"state":"focused"}
event: warning
data: {"code":"0x20011","message":"Captured_Event"}
event: downloadComplete
data: {"filename":"/path/to/DSC09596.JPG","type":"image"}
event: afStatus
data: {"state":"unlocked"}
SD card file pull (remote-transfer mode)
event: transferProgress
data: {"percent":100,"notify":"0x20093","filename":"/path/to/DSC09598.JPG"}
File Transfer by Mode
| Mode | Auto-transfer? | SSE Event | Mechanism |
|---|
remote | Yes (if StoreDestination = HostPC/Both) | downloadComplete | SDK pushes via OnCompleteDownload |
remote-transfer | No — explicit pull | transferProgress | Pull via POST .../download |
contents | No — pull only | contentsTransfer | Pull-only, no shooting |
Keepalive
The server sends a : keepalive comment every 30 seconds to detect dead connections.