Commit Graph
984 Commits
Author SHA1 Message Date
Robin 07a4244c05 Upgrade Compound Web to v7.12.0 2025-05-28 18:04:29 -04:00
Timo 7227c7b368 Merge branch 'livekit' into robin/audio-output-controls 2025-05-16 11:36:33 +02:00
Timo 2012b09845 review cleanup 2025-05-16 11:32:32 +02:00
Timo b5fe55aef2 Add custom audio renderer for iPhone earpiece and only render joined participants (#3249)
* Add custom audio renderer to only render joined participants & add ios earpice workaround

fix left right to match chromium + safari
(firefox is swapped)

earpice as setting

Simpler code and documentation
The doc explains, what this class actually does and why it is so complicated.

Signed-off-by: Timo K <toger5@hotmail.de>

use only one audioContext, remove (non working) standby fallback

* Add tests

* use optional audio context and effect to initiate it + review
2025-05-15 20:46:39 +02:00
Timo abd66f50db fix mute all audio via controls 2025-05-15 20:21:43 +02:00
Timo 7fa534d70d refactor
- `MediaDevice`->`MediaDeviceHandle`
 - use just one provider and switch inside the
 MediaDevicesProvider between: controlledAudioOutput, webViewAudioOutput
 - fix muteAllAudio
2025-05-15 15:34:35 +02:00
Timo 86beaeb20f apply mute from mobile controls 2025-05-14 20:09:39 +02:00
Valere FedronicandTimo 86d80630c1 Fix connection leaks: Ensure that any pending connection open are cancelled/undo when ActiveCall is unmounted (#3255)
* Better logs for connection/component lifecycle

* fix: `AudioCaptureOptions` was causing un-necessary effect render

AudioCaptureOptions was a different object but with same internal values, use directly deviceId so that Object.is works properly

* fix: Livekit openned connection leaks

* review: rename to AbortHandles

* review: rename variable

---------

Co-authored-by: Timo <toger5@hotmail.de>
2025-05-14 18:41:22 +02:00
Timo 18a59dd7db use optional audio context and effect to initiate it + review 2025-05-14 17:23:42 +02:00
Timo 6b8c620bbb Add tests 2025-05-14 10:59:23 +02:00
Timo 56328108ca Add custom audio renderer to only render joined participants & add ios earpice workaround
fix left right to match chromium + safari
(firefox is swapped)

earpice as setting

Simpler code and documentation
The doc explains, what this class actually does and why it is so complicated.

Signed-off-by: Timo K <toger5@hotmail.de>

use only one audioContext, remove (non working) standby fallback
2025-05-14 10:41:03 +02:00
Valere FedronicandTimo 1ff2fb3fff only show to-device transport label in dev mode (#3221)
* Only show to device encryption label if developer mode on

* Add tests for developer mode to device label

---------

Co-authored-by: Timo <toger5@hotmail.de>
2025-05-13 22:22:56 +02:00
Timo e6710f72e3 Fix to-device encryption info label (#3208)
* Fix to-device encryption info label
The label was shown also without checking that we use PerParticipantE2EE. Which is a prerequisite for toDevice transport. As a result the label was shown when not desired.

* rename: useLiveKit -> useLivekit

* make the settings naming consistent
2025-05-13 22:05:55 +02:00
Timo 04bc6c77a3 developer option to mute all audio (#3239) 2025-05-13 21:11:12 +02:00
Robin 8f1761442b Fix tests 2025-04-28 16:37:53 +02:00
Robin 7d0117903e Don't lie about the type of the video track 2025-04-28 16:01:34 +02:00
Robin 3fc4cc908e Cleanup + use a better check for blurring support 2025-04-22 19:20:43 +02:00
Robin 3243afd061 Merge branch 'livekit' into toger5/track-processor-blur 2025-04-18 12:32:03 +02:00
Timo 770b94eb44 Add RoomAndToDeviceKeyTransport and enable as default. (#3185) 2025-04-11 17:05:57 +02:00
Timo 3c0d81844f Add option to enable to-device-encryption (#3167)
* enable to-device-encryption

* add logging for key provider

* make rooms encrypted

* add dev setting to choose to-device or room encryption

* add indicator when to-device is used.
2025-04-11 10:07:50 +02:00
Timo 75933a508c Merge branch 'livekit' into toger5/track-processor-blur 2025-04-05 00:00:00 +02:00
Timo 2073cd3ac1 Rename EULA to SSLA (#3135)
* Change EULA to SSLA
 - rename i18n fields
 - update the config property to `ssla` and deprecate `eula`
 - use `eula` instead of ssla in case it is provided in the config.

* fix default config

* completely remove eula fallback
2025-03-31 14:18:45 +02:00
Robin 33700d1529 Merge branch 'livekit' into toger5/src-to-lib-import 2025-03-27 14:35:08 -04:00
Robin cd5ecb2352 Rename error boundary hook
It doesn't check whether it's actually used inside a GroupCallErrorBoundary, and it's generally useful for interacting with any error boundary, so I'm giving it a generic name to reflect this.
2025-03-21 15:17:41 -04:00
Robin 9a5dd10e27 Show errors that occur in GroupCallView using the error boundary
We were previously using the useGroupCallErrorBoundary hook to surface errors that happened during joining, but because that part is outside the GroupCallErrorBoundary it just ended up sending them to the app-level error boundary where they got displayed with a more generic message.
2025-03-21 14:59:27 -04:00
Valere 007ea89cd7 fixup eslint 2025-03-17 12:36:14 +01:00
Valere 03b5f0f2f9 Fixup: error boundary context not needed, local error resets already 2025-03-17 11:26:16 +01:00
Timo 6f93a037cf import cleanups 2025-03-13 18:00:24 -04:00
Timo f0545ced65 make it work withotu js-sdk changes 2025-03-13 18:00:24 -04:00
Timo 46f5c44db0 temp2 2025-03-13 18:00:07 -04:00
Timo adb5934f0b temp 2025-03-13 17:51:41 -04:00
Valere 188fe75534 Merge branch 'livekit' into valere/async_error_show_boundary 2025-03-13 11:20:32 +01:00
Valere b02ad8871e review: Make widget prop mandatory 2025-03-12 10:27:45 +01:00
Valere b0a4a954f8 Error: use a close button instead of go to home when in widget mode 2025-03-12 10:12:34 +01:00
Valere 612ace137a code review: recoveryActionHandler should not be optional 2025-03-12 09:44:41 +01:00
Valere 8584521ade fixup: post rebase fix 2025-03-11 20:19:14 +01:00
Valere c0ef6e5e4d fix: Error recover/retry buttons should reset error state 2025-03-11 16:54:19 +01:00
Valere 4c27551014 refactor: Centralize group call errors in custom GroupCallErrorBoundary 2025-03-11 16:54:19 +01:00
Valere 04a46ebabe error management: Handle fail to get JWT token 2025-03-11 09:07:19 +01:00
Valere c22412c045 error management: showError API for async error handling 2025-03-10 15:20:51 +01:00
750db09156 Use the New MatrixRTCSession MembershipManager (#3015)
* provide option to use the New MembershipManager

* fix cryptoApi import change

* add error screen

* bump js-sdk

* rename to `setUnrecoverableError` and remove onLeave call because that will be handled by an effect.

* this was doing nothing (it is a fragment back when there was no deprecated `rtcSession.room`)

* rename to error

* Update src/utils/errors.ts

Co-authored-by: Hugh Nimmo-Smith <hughns@users.noreply.github.com>

* Update src/utils/errors.ts

Co-authored-by: Hugh Nimmo-Smith <hughns@users.noreply.github.com>

* review

* bump js-sdk

* expose lk log level changing in `window`

* bump js-sdk
 - always log "Missing own membership: force re-join"
 - also check insertions queue

* change lk log level to warn

* Bump js-sdk

* Bump js-sdk

* .

* Bump js-sdk

* show user count based on meberships not users.

Signed-off-by: Timo K <toger5@hotmail.de>

* bump js-sdk

* rename setting name

* remove unused import

* js sdk bump

* remove `window.setLKLogLevel`

* bump js sdk with reverted incompatible change

* bump js-sdk with one less merge

---------

Signed-off-by: Timo K <toger5@hotmail.de>
Co-authored-by: Hugh Nimmo-Smith <hughns@users.noreply.github.com>
Co-authored-by: Hugh Nimmo-Smith <hughns@element.io>
2025-03-07 16:27:04 +00:00
Valere 13a19ed751 fix: Error recover/retry buttons should reset error state 2025-03-07 15:18:32 +01:00
Valere 28c7c9dd38 refactor: Centralize group call errors in custom GroupCallErrorBoundary 2025-03-05 20:50:19 +01:00
Robin b5f5edba09 Fix the control flow of GroupCallView render function
2bb5b020e6 refactored the end of the GroupCallView render function to not use any early returns, and clumsily failed to account for the fall-through case that makes returnToLobby work (as opposed to sitting on a blank screen).
2025-03-05 07:29:56 -05:00
Valere 4c91326edb fix, testing: i18n not properly configured 2025-03-03 14:41:31 +01:00
Valere 5dfc89d36c fixup: lint error 2025-02-28 12:24:43 +01:00
Valere 1fbf8e2686 review: Report unknown exceptions when entering RTC session 2025-02-28 12:17:28 +01:00
Valere f8a5de604f review: rename ec-error file to error 2025-02-28 12:04:49 +01:00
Valere 3c23e5a4e6 Error Handling: gracefully handle missing livekit service url in config 2025-02-26 15:19:08 +01:00
Valere 7423dfa527 refactor: Introduce specific ElementCall error type with code 2025-02-26 14:58:31 +01:00