How jemcats/ubox_camera_api works
uBox Camera API is a Node.js HTTP interface for authenticated camera-account queries and experimental live streaming. The main workflow is client request → server route handling → authenticated Ubia API call or stream-session control → JSON/video response. The README also documents device listing, SIM details, cloud recordings, event calendars, cloud-video URLs, and subscribed iOS devices. Streaming includes a camera datagram protocol path and H.264 delivery bridges. Sampled excerpts establish several core calls; unsampled route details are represented only at the documented capability level.
Main entry points: requests.js API Routes · helpers.js Request Helpers · ubox-live-stream.js Stream Manager · server.js HTTP Server
Components 22
HTTP API
- HTTP Server
server.js - API Routes
src/main/requests.js - Request Helpers
src/main/helpers.js
Account Data
- Login
src/main/requests.js - Device Listing
src/main/requests.js - SIM Information
src/main/requests.js - Cloud Recordings
src/main/requests.js - Event Calendar
src/main/requests.js - Cloud Video URL
src/main/requests.js - iOS Subscriptions
src/main/requests.js
Live Streaming
- Stream Manager
src/stream/ubox-live-stream.js - HLS Bridge
src/main/h264-hls.js - RTSP Bridge
src/main/h264-rtsp.js
Media Processing
- P4P Protocol
src/stream/p4p-codec.js - Live MP4 Muxer
src/stream/live-mp4.js - Video Detection
src/stream/video-codec.js - MP4 Dump Builder
src/stream/h264-mp4.js
Other components
- API Client
- Ubia Portal
- uBox Camera
- Stream Client
- FFmpeg
Connections 29
- API Client → HTTP Server: sends HTTP
- HTTP Server → API Routes: dispatches routes
- HTTP Server → Login: initializes login
- API Routes → Request Helpers: uses helpers
- Login → Ubia Portal: authenticates
- API Routes → Device Listing: dispatches query
- API Routes → SIM Information: dispatches query
- API Routes → Cloud Recordings: dispatches query
- API Routes → Event Calendar: dispatches query
- API Routes → Cloud Video URL: dispatches query
- API Routes → iOS Subscriptions: dispatches query
- Device Listing → Request Helpers: requests data
- SIM Information → Request Helpers: requests data
- Cloud Recordings → Request Helpers: requests data
- Event Calendar → Request Helpers: requests data
- Cloud Video URL → Request Helpers: requests data
- iOS Subscriptions → Request Helpers: requests data
- Request Helpers → Ubia Portal: calls portal
- API Routes → Stream Manager: controls session
- Stream Manager → uBox Camera: exchanges datagrams
- Stream Manager → P4P Protocol: encodes packets
- Stream Manager → Live MP4 Muxer: muxes video
- Stream Manager → Video Detection: detects format
- Stream Client → HTTP Server: requests stream
- API Routes → HLS Bridge: handles HLS
- API Routes → RTSP Bridge: configures RTSP
- HLS Bridge → FFmpeg: starts transcoding
- RTSP Bridge → FFmpeg: starts transcoding
- MP4 Dump Builder → Stream Client: returns MP4