Commit Graph

1576 Commits

Author SHA1 Message Date
td 00154f3c78
feat: active speaker in group calls 2023-01-30 15:46:21 +05:30
td ef0bf44b70
fix: missed incomingCallRoomId case in removing glare stuff during group calls 2023-01-28 03:42:58 +05:30
duanweiwei1982@gmail.com 0deb8d9e6e fix: fix glare side effects for group calls. 2023-01-28 01:10:29 +08:00
td 169ac9c88c Merge branch 'td/deprecateIsBg' into 'main'
chore: deprecate isBackground

See merge request famedly/company/frontend/famedlysdk!1225
2023-01-27 13:09:13 +00:00
Krille f9c0fdca69 Merge branch 'td/stopRingtone' into 'main'
fix: try to stop ringtone on call termination

Closes famedly/company/product-management#531

See merge request famedly/company/frontend/famedlysdk!1220
2023-01-27 12:58:09 +00:00
td 8a1ca08d7c Merge branch 'td/missedCallreject' into 'main'
fix: only send call reject event when needed

See merge request famedly/company/frontend/famedlysdk!1224
2023-01-27 12:56:45 +00:00
td 6246dd1301
chore: deprecate isBackground
This was used by callkeepv1 to fire a system notification or in call flutter screens on a new call, has always been set to false on web
2023-01-27 18:18:55 +05:30
td d8ac3b337a
fix: try to stop ringtone on call termination 2023-01-27 17:57:53 +05:30
td 10e6b9b0e6 Merge branch 'voip/remove-call-in-group-calls-correctly' into 'main'
fix: Fix can't correctly remove/cleanup call in group call.

See merge request famedly/company/frontend/famedlysdk!1222
2023-01-27 12:23:19 +00:00
Duan Weiwei 8ed9913eb6 fix: Fix can't correctly remove/cleanup call in group call. 2023-01-27 12:23:18 +00:00
td 9a232580be fix: send all servers for getIceServers 2023-01-27 12:05:07 +00:00
td ce0bdd9dc6
fix: only send call reject event when needed
This is fixes rejects by missed calls, which should only reject a new call locally and not send a event if they are already in a call
2023-01-27 17:16:41 +05:30
td 441df7851b Merge branch 'td/glare' into 'main'
fix: glare

Closes famedly/company/product-management#80

See merge request famedly/company/frontend/famedlysdk!1161
2023-01-23 06:48:09 +00:00
td 262b456010 fix: glare 2023-01-23 06:48:07 +00:00
td 5510049dec
fix: update groupCalls state stream
refactor: add a try catch around disposing streams. Decoding streams is broken in flutter_webrtc atm
2023-01-23 06:43:35 +05:30
Nicolas Werner e81fce1f1f Merge branch 'td/generateInviteLink' into 'main'
feat: add method to generate the matrix.to link

See merge request famedly/company/frontend/famedlysdk!1207
2023-01-20 07:32:56 +00:00
td 9e649b7d37
fix: tweak some stuff in group calls code for group calls onboarding feat 2023-01-20 03:46:20 +05:30
td c5d484bb13
feat: add method to generate the matrix.to link 2023-01-20 03:41:43 +05:30
Krille 05c945b042 fix: Last message set incorrectly on all session key received
This fixes a bug that the
last message was sent
incorrectly when a session
key received for example
from the key backup. It may
fix several issues like the
last message is set as a
very old one or the last
message is not decrypted.
2023-01-18 11:46:32 +01:00
Krille d6c4b530c5 refactor: room displayname calculation
This deprecates the displayname
getter in favor of the new
getLocalizedDisplayname which
gets the default localization
by default so it can be
called without defining localizations. It adds a method
to calculate if a room is an
abandoned DM room where
it is made sure that the room
is actually empty.
2023-01-17 08:51:07 +01:00
Duan Weiwei 579b01a405 Fix the timing error when the candidate arrives before the answer sdp. 2023-01-11 02:50:38 +00:00
Nicolas Werner 4ff07b58f4 Merge branch 'td/ringtone' into 'main'
fix: play ringtone for incoming calls before trying to getUserMedia

Closes famedly-web#656

See merge request famedly/company/frontend/famedlysdk!1204
2023-01-03 22:56:51 +00:00
td 1138012dd1
fix: propogate filter to getParticipants in requestParticipants 2023-01-04 03:36:51 +05:30
td bd352b60a6
fix: play ringtone for incoming calls before trying to getUserMedia 2022-12-30 20:33:04 +05:30
The one with the braid ed0ab3bdb9 Merge branch 'krille/remove-transaction-workaround' into 'main'
refactor: Remove database transaction workaround

See merge request famedly/company/frontend/famedlysdk!1192
2022-12-27 13:20:21 +00:00
Krille Fear 956a2f793f fix: Add timeout to sync http call 2022-12-27 09:30:04 +01:00
cloudwebrtc 23552d5434 fix: Fix the called party not sending screensharing correctly. 2022-12-21 20:49:37 +08:00
Christian Pauly 7a5b013c92 refactor: Remove database transaction workaround
The workaround was from the
time when we have used
sqflite or when Hive had
bugs. But now HiveCollections
already supports transactions
in Dart zones and concurrent
write operations shouldn't
be a problem anymore.
2022-12-21 09:41:11 +01:00
Krille 9d9b1e38ec Merge branch 'krille/store-after-decrypted-last-event' into 'main'
fix: Store decrypted last event in store

See merge request famedly/company/frontend/famedlysdk!1197
2022-12-21 08:24:39 +00:00
Krille Fear 49703f5808 fix: Store decrypted last event in store 2022-12-21 08:43:52 +01:00
Nicolas Werner 58b3098f16 Merge branch 'braid/null-safe-code' into 'main'
fix: make some Room getters null safe

See merge request famedly/company/frontend/famedlysdk!1196
2022-12-14 22:36:29 +00:00
TheOneWithTheBraid 35a108b704 fix: make some Room getters null safe
- gixes huge error cause in integration tests of related apps

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-12-14 21:20:14 +01:00
Christian Pauly 2f1696bff8 chore: Bump version 2022-12-14 09:00:08 +01:00
Christian Pauly c66d2edb5e refactor: Key manager megolm handling to make key generation more efficient 2022-12-14 08:59:36 +01:00
Reza 52d6b59cc1
fix: leaved direct chat name 2022-12-12 10:31:40 +01:00
Duan Weiwei 0bd8848ec5 chore: Add voip connection tester. 2022-12-01 14:14:08 +00:00
Philipp Grieshofer 3f82835d3a fix: await requestKey() in event search 2022-12-01 08:55:57 +00:00
Philipp Grieshofer 789527c256 fix: Request session key for bad encrypted events before the text search is carried out 2022-11-28 08:08:26 +00:00
Mohammad Reza Moradi 67e1b9b253 Merge branch 'krille/check-if-verified-by-any-master-key' into 'main'
feat: Check if a key is verified by any master key

See merge request famedly/company/frontend/famedlysdk!1173
2022-11-24 13:11:07 +00:00
Reza 7da56ee212 fix: minor stuff 2022-11-24 11:00:10 +01:00
Reza f969a733f1 fix: minor stuff 2022-11-24 10:48:17 +01:00
Reza dd4d0696b3 fix: do not pass the verified device list 2022-11-24 10:19:52 +01:00
Reza 8f37466295 fix: minor stuff 2022-11-24 09:33:36 +01:00
Reza 10cf979877 fix: minor stuff 2022-11-23 19:28:08 +01:00
Reza 44f862b966 feat: start verification with the verified device 2022-11-23 13:43:57 +01:00
TheOneWithTheBraid 6ef8a56041 feat: migrate e2ee test to DinD
- migrate e2ee tests to DinD
- test e2ee against Synapse, Conduit and Dendrite
- fix error handling in push rules (thanks to Dendrite tests)

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-11-23 09:01:53 +01:00
Reza ffb37e834f feat: check if the key is verified by any master key 2022-11-22 17:22:04 +01:00
TheOneWithTheBraid 3cc4cd8410 fix: follow account kind in registration
- as of now, account kind ist simply ignored

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-11-22 07:53:59 +01:00
td d517581fa5 Merge branch 'krille/fix-powerlevels' into 'main'
fix: PowerLevel calculation regarding to spec

See merge request famedly/company/frontend/famedlysdk!1172
2022-11-21 09:39:50 +00:00
Christian Pauly f3287dbb99 fix: PowerLevel calculation regarding to spec 2022-11-21 10:14:28 +01:00
Christian Pauly aaaf63a0b8 feat: Check if a key is verified by any master key
To check if a device is cross
signed by any master key can
be useful to know which
device can give us the
bootstrap keys on login.
2022-11-21 10:12:12 +01:00
The one with the braid 50288698a8 Merge branch 'braid/cute-events' into 'main'
feat: support MSC 3935: cute events

See merge request famedly/company/frontend/famedlysdk!1168
2022-11-21 08:53:44 +00:00
TheOneWithTheBraid 476963069a feat: support MSC 3935: cute events
- add cute event skeletron (`im.fluffychat.cute_events`)
- add cute events to default command batch
- this way, all SDK users can profit from cute events
- supported events: `hug`, `googly_eyes`, `cuddle`

Fixes:
https://rail.chat/@AgathaSorceress@eldritch.cafe/109336005433123570

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-11-21 09:17:07 +01:00
td 6da10bf233
fix: handleMissedCalls on remote hangups before answer 2022-11-18 12:13:02 +05:30
Nicolas Werner dbac5d83dc fix: recover from very unlikely key upload errors
Usually we store the keys we want to upload first, then upload them,
then store, that we uploaded them. So that should be fool proof.

But.

In some cases the filesyste lies to us and the database change isn't
actually persisted yet. That can happen when someone turns of their
phone aprubtly for example. In that case we generate new OTKs with the
same id. Uploading that will fail, since they already exist server side.
We can work around that by manually claiming them and removing them
locally.
2022-11-15 17:18:29 +01:00
Grieshofer Philipp d60a3aa579 refactor: Add argument for custom CreateRoomPreset to startDirectChat method 2022-11-14 11:07:53 +01:00
td 6784f4e83a Merge branch 'krille/fix-request-users' into 'main'
chore: Follow up fix for request users in invite rooms

See merge request famedly/company/frontend/famedlysdk!1163
2022-11-14 09:32:11 +00:00
Christian Pauly 7caab4d086 chore: Follow up fix for request users in invite rooms 2022-11-14 08:27:47 +01:00
cloudwebrtc 81eacf7291 chore: upgrade webrtc_interface, remove WebRTCDelegate.cloneStream. 2022-11-12 18:48:26 +08:00
Christian Pauly 67fd9cd00e refactor: Improve error handling for no olm session found exception
Finding no olm session can
happen quiet often when there
are dead devices in a room.
We do not need to print the
whole stacktrace then.
2022-11-08 14:02:37 +01:00
td 79378714b9 Merge branch 'krille/do-not-request-users-invite-rooms' into 'main'
fix: Do not request users in not joined rooms

See merge request famedly/company/frontend/famedlysdk!1159
2022-11-07 11:37:00 +00:00
Christian Pauly 0a6a813804 refactor: Get rid of unnecessary type cast 2022-11-07 11:09:20 +01:00
Christian Pauly f8140866ae fix: Do not request users in not joined rooms 2022-11-07 08:41:15 +01:00
td 70af77b3ac Merge branch 'voip/fix-offre-issue-for-ios' into 'main'
fix: sdp negotiation issue on iOS, close #335.

Closes #335

See merge request famedly/company/frontend/famedlysdk!1150
2022-11-03 02:48:58 +00:00
cloudwebrtc d2d29b5966 chore: Put all hard-coded timeout parameters into the Timeouts class. 2022-11-03 09:16:55 +08:00
cloudwebrtc fdee6fe590 fix: sdp negotiation issue on iOS, close #335.
Update lib/src/voip/call.dart

chore: flutter format.
2022-11-01 22:17:48 +08:00
td 6566bb8eeb
chore: reduce error logging level of groupCall is null 2022-10-28 22:01:17 +05:30
td aa03f5aa06
fix: filter list for adding p2p call events 2022-10-28 21:52:02 +05:30
Malin Errenst 380963e87a Merge branch 'krille/dont-try-to-decrypt-redacted-events' into 'main'
Krille/dont try to decrypt redacted events

See merge request famedly/company/frontend/famedlysdk!1156
2022-10-28 12:31:56 +00:00
Krille Fear 78cb434bf2 Merge branch 'krille/remove-deprecated-fluffybox' into 'main'
refactor: Remove deprecated fluffybox

See merge request famedly/company/frontend/famedlysdk!1155
2022-10-28 11:28:16 +00:00
Christian Pauly e6182db16b refactor: Remove deprecated fluffybox 2022-10-28 12:56:20 +02:00
Christian Pauly 296b193c1d chore: Lower logs level of native implementation noSuchMethod
Otherwise it would spam in the
production logs all the time
2022-10-28 12:45:27 +02:00
Christian Pauly 411cf3d4ec fix: Redact originalSource on redaction 2022-10-28 12:30:27 +02:00
Christian Pauly da8ebe85ef fix: Do not try to decrypt redacted events 2022-10-28 12:25:35 +02:00
Krille Fear fc1146fe94 Merge branch 'krille/more-stable-migration' into 'main'
fix: Do not wait for first sync after migration init

See merge request famedly/company/frontend/famedlysdk!1153
2022-10-26 10:07:58 +00:00
Christian Pauly 6c307980a5 fix: Do not wait for first sync after migration init
If the first sync fails because of
a connection problem then the
migration is lost. This should not
happen.
2022-10-26 11:54:33 +02:00
TheOneWithTheBraid ed7913e710 feat: introduce hightlighted room getter
- adds `Room.isUnreadOrInvited` extending `Room.isUnread` to invited rooms

This is some high-level abstraction simplifying computation of unread
room badges / notifications.

Related: https://gitlab.com/groups/famedly/company/-/epics/28

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-10-26 11:51:32 +02:00
Christian Pauly 7b1a519de0 fix: Do not assume that push rules are never malformed in account data 2022-10-21 10:48:40 +02:00
Nicolas Werner 1656c51f05 Merge branch 'fix/audio-input-auto-selection' into 'main'
chore: update audio device for call when input device changes.

Closes famedly-web#587

See merge request famedly/company/frontend/famedlysdk!1144
2022-10-18 14:06:50 +00:00
Nicolas Werner 99c77b9276 Merge branch 'nico/decryption-queue' into 'main'
feat: Implement a queue for events pending decryption

Closes famedly-web#535

See merge request famedly/company/frontend/famedlysdk!1143
2022-10-18 14:02:48 +00:00
Christian Pauly 69f82b2619 refactor: Remove unused imports 2022-10-18 11:42:11 +02:00
Nicolas Werner f55bb4776a feat: Support evaluating pushrules
fixes #339
2022-10-17 04:29:20 +02:00
cloudwebrtc e50c0ec641 chore: null safety. 2022-10-12 19:11:53 +08:00
Christian Pauly 779c278854 refactor: Use DateTime method instead of comparing milliseconds 2022-10-12 11:33:00 +02:00
Nicolas Werner c6a8f5a162 feat: Implement a queue for events pending decryption
fixes https://gitlab.com/famedly/company/frontend/famedly-web/-/issues/535
2022-10-12 11:07:50 +02:00
td 157b488255 Merge branch 'td/staleGroupCalls' into 'main'
feat: implement expire_ts in group calls and provide methods to terminate stale calls

Closes #332

See merge request famedly/company/frontend/famedlysdk!1137
2022-10-07 10:13:59 +00:00
td da4174c91a
feat: implement expire_ts in group calls and provide methods to terminate stale calls 2022-10-07 15:08:38 +05:30
duanweiwei1982@gmail.com 27527f0417 chore: update audio device for call when input device changes. 2022-10-05 21:38:45 +08:00
Nicolas Werner c3ec0ffa2a fix: messages not being processed after a new encryption event. 2022-09-29 12:18:18 +02:00
td 3a8fedb02f Merge branch 'krille/warn-on-unverified-devices' into 'main'
feat: Add getter for own unverified devices

See merge request famedly/company/frontend/famedlysdk!1141
2022-09-27 09:25:20 +00:00
Duan Weiwei e5bc54ef88 Improve ice connection speed. 2022-09-23 20:02:09 +00:00
Christian Pauly dd375eddfd feat: Add getter for own unverified devices 2022-09-21 10:23:01 +02:00
Nicolas Werner 029a4ae77a fix: files get needlessly lowercased
relates to https://gitlab.com/famedly/app/-/issues/1755
2022-09-20 10:59:22 +02:00
Nicolas Werner c8a97ce7f8 Merge branch 'krille/on-secret-stored-stream' into 'main'
feat: Add onSecretStored StreamController to SSSS

Closes #331

See merge request famedly/company/frontend/famedlysdk!1135
2022-09-20 07:42:04 +00:00
Christian Pauly f0356532be feat: Add onSecretStored StreamController to SSSS 2022-09-19 15:15:27 +02:00
Krille Fear d94bb1e480 Merge branch 'henri2h/dont-assume-redacts-is-valid' into 'main'
fix: don't assume redacts attribute from content to be valid

See merge request famedly/company/frontend/famedlysdk!1131
2022-09-19 13:06:34 +00:00
Christian Pauly 403824b261 feat: Store original event 2022-09-19 09:40:42 +02:00
cloudwebrtc 62cd4e78fb chore: fix analyzer error. 2022-09-17 00:19:21 +08:00
cloudwebrtc e1ccda3cb1 chore: update. 2022-09-17 00:10:50 +08:00
cloudwebrtc df426e763a chore: Properly close usermedia/screen stream for 1v1/group calls. 2022-09-16 23:29:49 +08:00