155 Commits

Author SHA1 Message Date
Cédric Verstraeten 76a136abc9 Add trailing commas to fallback calls
Add trailing commas to the arguments passed to fallbackToSDLiveview in ui/src/pages/Dashboard/Dashboard.jsx. This is a non-functional formatting change applied to the WebRTC initialization, ICE candidate handling, and connection-state fallback calls to align with the project's code style/formatter.
2026-03-09 21:34:17 +01:00
Cédric Verstraeten 5475b79459 Remove extraneous trailing commas in Dashboard
Clean up trailing commas and minor formatting in ui/src/pages/Dashboard/Dashboard.jsx. Adjusts object/argument commas and formatting around WebRTC message handling, peer connection setup, error handling, and SD liveview fallback callbacks to avoid potential syntax/lint issues.
2026-03-09 21:32:10 +01:00
Cédric Verstraeten 2ad768780f Format Dashboard.jsx: add trailing commas
Apply consistent formatting to ui/src/pages/Dashboard/Dashboard.jsx by adding trailing commas in object literals, function call argument lists, and callbacks (primarily around WebRTC handling and error messages). This is a non-functional style change to match the project's code style (e.g., Prettier/ESLint) and should not affect runtime behavior.
2026-03-09 21:29:30 +01:00
Cédric Verstraeten f64b5fb65b Replace uuidv4 with local createUUID
Remove the uuidv4 import and introduce a local createUUID helper that uses window.crypto.randomUUID when available and falls back to a v4-style generator. Update webrtcClientId and webrtcSessionId to use createUUID(), removing the external dependency while preserving UUID generation for WebRTC session/client IDs.
2026-03-09 21:27:01 +01:00
Cédric Verstraeten bb773316a2 Add trailing commas and tidy Media.scss
Add trailing commas to multi-line function calls and RTCPeerConnection instantiation in Dashboard.jsx for consistent formatting. In Media.scss remove an extra blank line and relocate the .media-filters__field:first-child rule to consolidate related styles. Purely stylistic/organizational changes with no intended behavior change.
2026-03-09 21:23:16 +01:00
Cédric Verstraeten fc6fa9d425 Format Media.jsx and add newline
Reformat code in ui/src/pages/Media/Media.jsx for readability: wrap long argument lists (getTimestampFromInput, buildEventFilter) and reflow the appliedFilter ternary onto multiple lines. Also add the missing trailing newline to ui/public/locales/en/translation.json. No functional changes.
2026-03-09 21:18:52 +01:00
Cédric Verstraeten 730b1b2a40 Add WebRTC liveview signaling and UI fallback
Introduce structured WebRTC handshake signaling and client-side fallbacks. Changes:

- machinery: replace HandleLiveHDHandshake channel to carry LiveHDHandshake (payload + signaling callbacks) and expose active WebRTC reader count in dashboard data.
- routers: MQTT and WebSocket handlers now send/receive LiveHDHandshake structs; websocket supports stream-hd and webrtc-candidate messages and uses callback-based signaling to reply over the WS connection.
- webrtc: add helper functions to send MQTT or callback answers/candidates, adapt InitializeWebRTCConnection to the new handshake type, and expose GetActivePeerConnectionCount.
- utils: minor GetMediaFormatted filtering fix and unit test for timestamp range behavior.
- ui: Dashboard gains native WebRTC liveview with fallback to SD image stream, shows active listener count, and handles signaling/candidates; Media page adds datetime range filters, infinite-scroll append behavior, and styles; reducer/action updates to support appending events; package.json scripts disable ESLint plugin during start/build/test.

These changes enable browser-based HD liveviews with dual signaling paths (websocket callbacks or MQTT), improve media filtering, and provide graceful fallback to SD streaming when WebRTC fails.
2026-03-09 21:10:18 +01:00
Cédric Verstraeten 30e2b8318d Refactor build workflow to support multi-architecture builds and enhance MQTT connection handling 2026-03-09 11:40:24 +00:00
Cédric Verstraeten dbcf4e242c Enhance MQTT reconnection handling and improve WebRTC connection cleanup
- Enable automatic reconnection for MQTT with configurable intervals and timeouts.
- Add logging for connection loss and reconnection attempts.
- Refactor WebRTC connection cleanup to ensure proper resource management on disconnection.
- Improve event handling in ImageCanvas and Dashboard components for better performance and reliability.
2026-03-09 11:04:10 +00:00
Cédric Verstraeten c054526998 Add image resizing functionality and update dependencies
- Introduced ResizeImage function to resize images before encoding.
- Updated ImageToBytes function to accept pointer to image.
- Added nfnt/resize library for image resizing.
- Updated go.mod and go.sum to include new dependencies.
- Updated image processing in HandleLiveStreamSD, GetSnapshotRaw, and other functions to use resized images.
- Updated yarn.lock for ui package version change.
2025-07-30 12:06:12 +00:00
cedricve ac710ae1f5 Fix typo in Kerberos Vault max retries translation key 2025-05-17 19:16:27 +00:00
cedricve f5ea82ff03 Add Kerberos Vault settings for max retries and timeout configuration 2025-05-17 19:14:02 +00:00
Cédric Verstraeten 0d95026819 Add loading state for secondary persistence verification in Settings UI 2025-04-24 08:58:33 +00:00
cedricve 9f63ffd540 Add secondary persistence verification and UI integration 2025-04-23 20:30:11 +00:00
cedricve 9c7116a462 Add secondary persistence verification and UI integration 2025-04-23 15:24:24 +00:00
cedricve dd9b4d43ac Update development API URLs to use port 8080 2025-04-23 16:19:56 +02:00
Cédric Verstraeten aa63eca24c Add persistence configuration inputs for Kerberos Vault in Settings 2025-04-23 12:46:43 +00:00
Orange Pi Vietnam 4fcb12c3a3 Update translation.json
remove duplicate
2025-04-08 22:31:25 +07:00
Tony Tran 7bcc30f4b7 add Vietnamese locales 2025-02-27 15:06:41 +00:00
ghosty2004 0ada943699 Add Romanian language 2024-06-26 21:04:02 +03:00
Cedric Verstraeten ecadf7a4db add realtime processing endpoint 2024-06-11 22:47:01 +02:00
Cedric Verstraeten b67a72ba9a [release] v3.1.8 2024-01-30 13:26:44 +01:00
Cedric Verstraeten 8fc9bc264d feature: add camera friendly name to UI 2024-01-30 11:21:58 +01:00
Cedric Verstraeten b1ff5134f2 feature: add double encryption
we are now encrypting to Kerberos Hub by default, secondary encryption can be added through bring your own encryption keys.

all encryption can be turned on/off if required
2024-01-17 20:53:42 +01:00
Cedric Verstraeten 3551d02d50 feature: add ability to force TURN server 2024-01-17 09:44:24 +01:00
Cedric Verstraeten 4c413012a4 [release] v3.1.7 2024-01-16 13:02:41 +01:00
Cedric Verstraeten 21d81b94dd [release] v3.1.6 2024-01-16 09:47:07 +01:00
Cedric Verstraeten 8c44da8233 hide passwords in ui + skip empty decode frames 2024-01-12 11:47:08 +01:00
Cedric Verstraeten 83ba7baa4b [release] v3.1.4
- hot-fix: preserve width and height of both main and sub stream
2024-01-10 17:06:49 +01:00
Cedric Verstraeten 9339ae30fd [release] v3.1.3 2024-01-10 16:30:20 +01:00
Cedric Verstraeten aac2150a3a [release] v3.1.1 2024-01-07 22:14:44 +01:00
Cedric Verstraeten 9b713637b9 change version number of ui 2024-01-07 21:44:32 +01:00
Cedric Verstraeten fa91e84977 Merge branch 'port-to-gortsplib' into develop 2024-01-01 23:11:24 +01:00
Cedric Verstraeten 8c231d3b63 Merge branch 'master' into develop 2024-01-01 23:10:36 +01:00
Cedric Verstraeten 775c1b7051 show correct error message for failing onvif 2024-01-01 19:36:14 +01:00
Cedric Verstraeten fb23815210 add support for H265 in UI 2024-01-01 19:31:58 +01:00
Cedric Verstraeten fd01fc640e get rid of snapshots + was blocking stream and corrupted recordings 2023-12-07 21:33:32 +01:00
Izzotop cd8347d20f Add Russian language 2023-11-09 16:03:40 +03:00
Cedric Verstraeten 860077a3eb turn off linting for: jsx-a11y/control-has-associated-label 2023-11-02 08:28:26 +01:00
Cedric Verstraeten e474a62dbc Add hindi #119 + allow recordings encryption + decryption tooling. 2023-10-23 10:56:36 +02:00
Cédric Verstraeten f29b952001 Merge pull request #119 from fadkeabhi/feat#47-add-hindi-language-support
Added transaltions for hindi language
2023-10-22 22:15:07 +02:00
Cedric Verstraeten 38247ac9f6 Add italian to language selector #115 2023-10-22 20:00:10 +02:00
ABHISHEK FADAKE 839185dac8 Added transaltions for hindi language 2023-10-03 19:24:47 +05:30
LeoSpyke ba6cdef9d5 i18n(it): translate persistence and bugfix 2023-09-15 08:17:12 +00:00
Leonardo Papini 2539255940 i18n: Italian translations 2023-09-14 12:47:28 +02:00
Cedric Verstraeten 414f74758c remove curly brackets 2023-07-26 19:22:19 +02:00
Cedric Verstraeten f7ced6056d update to port 80 + allow frontend to take into account a custom config directory 2023-06-28 20:24:41 +02:00
Cedric Verstraeten 2b425a2ddd add test video for verification 2023-06-23 17:16:13 +02:00
Cedric Verstraeten d2dd3dfa62 add outputconfiguration + change endpoint 2023-06-21 15:55:51 +02:00
Cedric Verstraeten 6672535544 fix glitch with loading livestream when hitting dashboard page first 2023-06-14 17:14:40 +02:00