Commit graph

1584 commits

Author SHA1 Message Date
Robert Long 0f340282e7 Add callType to createCall function parameters 2022-04-18 21:58:49 -07:00
Robert Long 85b77e277f Add power_level_content_override to create room 2022-04-18 21:57:50 -07:00
Bruno Windels ea1c3a2b86 Merge remote-tracking branch 'origin/bwindels/calls' into bwindels/calls 2022-04-14 13:47:23 +02:00
Bruno Windels 021b8cdcdc send hangup when leaving the call
but not when somebody else leaves the call through a member event
2022-04-14 13:45:21 +02:00
Bruno Windels ff856d843c ensure all member streams are cloned
so we can stop them without affecting the main one
also, only stop them when disconnecting from the member, rather then
when the peer call ends, as we might want to retry connecting to
the peer with the same stream.
2022-04-14 13:44:11 +02:00
Robert Long 55097e4154 Add intent to CallHandler 2022-04-13 13:08:47 -07:00
Bruno Windels bc118b5c0b WIP 2022-04-13 18:34:01 +02:00
Bruno Windels 2d4301fe5a WIP: expose streams, senders and receivers 2022-04-12 21:20:24 +02:00
Bruno Windels 36dc463d23 update TODO 2022-04-12 21:20:15 +02:00
Bruno Windels 0e9307608b update TODO 2022-04-12 14:02:57 +02:00
Bruno Windels 2635adb232 hardcode turn server for now 2022-04-12 14:02:38 +02:00
Bruno Windels 797cb23cc7 implement receiving hangup, and retry on connection failure 2022-04-12 14:02:13 +02:00
Bruno Windels fd5b2aa7bb only create datachannel on side that sends invite 2022-04-11 16:29:46 +02:00
Bruno Windels 517e796e90 remove obsolete import 2022-04-11 15:56:31 +02:00
Bruno Windels c99fc2ad70 use deviceId getter in Member 2022-04-11 15:54:41 +02:00
Bruno Windels 9be64730b6 don't automatically join a call we create 2022-04-11 15:54:06 +02:00
Bruno Windels b84c90891c add very early datachannel support 2022-04-11 15:53:34 +02:00
Bruno Windels c02e1de001 log when renegotiation would be triggered 2022-04-11 14:55:14 +02:00
Bruno Windels 8153060831 only send to target device, not all user devices 2022-04-11 13:39:40 +02:00
Bruno Windels 302d4bc02d use session id from member event, and also send it for other party 2022-04-11 13:39:18 +02:00
Bruno Windels 1b0abebe8f remove unused constants 2022-04-11 12:37:05 +02:00
Bruno Windels 156f5b78bf use session_id from member event to set dest_session_id
so our invite event isn't ignored by EC
2022-04-11 12:36:02 +02:00
Bruno Windels 8a06663023 load all call members for now at startup
later on we can be smarter and load then once you interact with the call
2022-04-07 16:55:41 +02:00
Bruno Windels b133f58f7a don't throw here for now, although it is probably a sign of why the tracks disappear 2022-04-07 16:54:47 +02:00
Bruno Windels bade40acc6 log track length 2022-04-07 16:54:36 +02:00
Bruno Windels 1dc46127c3 no need to throw here 2022-04-07 16:54:24 +02:00
Bruno Windels 79411437cf fix who initiates call, needs to be lower, not higher 2022-04-07 16:53:57 +02:00
Bruno Windels 6472800387 impl session id so EC does not ignore our messages 2022-04-07 16:53:37 +02:00
Bruno Windels fe6e7b09b5 don't encrypt to_device messages for now 2022-04-07 16:50:16 +02:00
Bruno Windels ad1cceac86 fix error thrown during request when response code is not used 2022-04-07 10:33:12 +02:00
Bruno Windels 2852834ce3 persist calls so they can be quickly loaded after a restart
also use event prefixes compatible with Element Call/MSC
2022-04-07 10:32:43 +02:00
Bruno Windels d7360e7741 fix multiple device support 2022-03-30 15:18:46 +02:00
Bruno Windels c54ffd4fc3 support multiple devices in call per user 2022-03-29 17:13:33 +02:00
Bruno Windels ba45178e04 implement terminate and hangup (currently unused) 2022-03-29 12:01:47 +02:00
Bruno Windels 11a9177592 log state changes in PeerCall 2022-03-29 12:01:47 +02:00
Bruno Windels eaf92b382b add structured logging to call code 2022-03-29 12:01:47 +02:00
Bruno Windels a0a07355d4 more improvements, make hangup work 2022-03-29 12:01:47 +02:00
Bruno Windels 0a37fd561e just enough view code to join a call 2022-03-29 12:01:47 +02:00
Bruno Windels 9efd191f4e some more fixes 2022-03-29 12:01:46 +02:00
Bruno Windels cad2aa760d some fixes 2022-03-29 12:01:46 +02:00
Bruno Windels e760b8e556 basic view model setup 2022-03-29 12:01:46 +02:00
Bruno Windels 6daae797e5 fix some ts/lint errors 2022-03-29 12:01:46 +02:00
Bruno Windels 07bc0a2376 move observable values each in their own file 2022-03-29 12:01:46 +02:00
Bruno Windels 1bccbbfa08 fix typescript errors 2022-03-29 12:01:46 +02:00
Bruno Windels f674492685 remove local media promises (handle them outside of call code) + glare 2022-03-29 12:01:46 +02:00
Bruno Windels 3c160c8a37 handle remote ice candidates 2022-03-29 12:01:46 +02:00
Bruno Windels b213a45c5c WIP: work on group call state transitions 2022-03-29 12:01:46 +02:00
Bruno Windels b2ac4bc291 WIP13 2022-03-29 12:01:46 +02:00
Bruno Windels 6da4a4209c WIP: work on group calling code 2022-03-29 12:01:46 +02:00
Bruno Windels 4bedd4737b WIP11 2022-03-29 12:01:46 +02:00