Commit graph

421 commits

Author SHA1 Message Date
Arne-Brün Vogelsang 1a7e75235a Update src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java
just a space
2023-10-08 18:25:47 +00:00
Arne-Brün Vogelsang 77631c97a7 Update src/main/java/eu/siacs/conversations/xmpp/jingle/WebRTCWrapper.java
Add Fairphone 4 to AEC Blacklist to fix Echo problems: https://github.com/iNPUTmice/Conversations/issues/4439
2023-10-08 18:25:20 +00:00
Daniel Gultsch 1c5a1b8c71
keep order of rtp contents 2023-10-06 12:34:41 +02:00
Daniel Gultsch 601a8cb3bc
process content-modify for pending content-adds 2023-10-05 16:23:43 +02:00
Daniel Gultsch a8241c72df
use url safe jingle session ids
Movim does not like slashes (/) in jingle session ids.
When proposing a session called 'wBKabx1kRIfkgNxAShip/w' Movim will
accept (proceed) a session called 'wBKabx1kRIfkgNxAShip' which the initiator of course does not know about. (Conversations will get stuck at ringing/discovering devices)

This is likely because a click on 'Reply' (accept call) in Movim opens upa pop up window where both the full jid as well as the session id are transmitted as part of the URL.

(Full jids can contain more than on slash btw)
2023-10-04 13:30:53 +02:00
Daniel Gultsch 1b5d2151d0
warn early when SDP is likely to be invalid 2023-10-04 13:07:28 +02:00
Daniel Gultsch 6bc3cad7de
apply ice-options when adding content or restarting ice 2023-10-04 10:43:45 +02:00
Daniel Gultsch 8570c9f912
use more aggressive reconnect intervals during rtp session 2023-10-03 12:56:10 +02:00
Daniel Gultsch fd4b8ba188
bring back ICE Renomination via negotiation 2023-10-03 12:55:44 +02:00
Daniel Gultsch 17856a47db
hold back candidates until after content-add 2023-10-02 13:54:36 +02:00
Daniel Gultsch 7e9980d997
catch illegal state exception in TrackWrapper 2023-10-02 11:48:03 +02:00
Daniel Gultsch 09993b8319
fetch local description on its own executor 2023-10-02 11:03:08 +02:00
Daniel Gultsch 0dca7f8a5a
JMI: send 'ringing' and receipts only for contacts
fixes #110
2023-10-01 08:05:40 +02:00
Daniel Gultsch ac3ce93c56
fix stun url generation 2023-10-01 08:02:55 +02:00
Daniel Gultsch c9b80254e4
add more logging to unroutable jingle messages 2023-09-30 15:56:06 +02:00
Daniel Gultsch 6660877bcf
jingle: trim media attribute values
Movim has trailing whitespace around some of their media attributes

<source ssrc="1892824964" xmlns="urn:xmpp:jingle:apps:rtp:ssma:0">
  <parameter name="msid" value="{a98821d7-b298-4130-925a-ff6c510734c0} {f45dfc5c-2fa7-42b4-85e5-935e786b3feb} " xmlns="urn:xmpp:jingle:apps:rtp:ssma:0"/>
  <parameter name="cname" value="{63b1042b-5cb5-4411-b2a5-bdff92ae45be}" xmlns="urn:xmpp:jingle:apps:rtp:ssma:0"/>
</source>

our WebRTC doesn’t like that. We trim the value even though this seems to be a Movim bug.
2023-09-30 07:55:08 +02:00
Daniel Gultsch 05c79ff29d
version bump webrtc to m117 2023-09-29 16:19:01 +02:00
Daniel Gultsch b4c3334d7e
add a few TODOs wrt tie breaks 2023-09-14 14:39:32 +02:00
Daniel Gultsch fdd7f2926f
support 'ringing' jingle message 2023-09-14 11:22:19 +02:00
Daniel Gultsch 7a9f18f223
play tones as music when silent only on android 12+ 2023-08-08 09:04:26 +02:00
Daniel Gultsch 6289e048b3
catch runtime exception when trying to stop tone manager 2023-06-05 10:05:59 +02:00
Daniel Gultsch 9187739450
play dial tones on STREAM_MUSIC when phone is silent
when the phone is silent only the first ~three tones are played when
attempting to play out the tone over STREAM_VOICE_CALL

it’s unclear exactly why this is the case (in the past we went back and forth
between STREAM_VOICE_CALL and STREAM_MUSIC) exactly to fix issues around silent
mode.
Apparently we failed to test this past three sounds.

This commit changes the stream back to music - but not generally as this was in
the past - but only for when the phone is on silent
2023-04-03 16:00:06 +02:00
Daniel Gultsch 0cec499565
make sure we don’t dispose video source twice 2022-12-30 12:16:19 +01:00
Daniel Gultsch 13606aae60
add todo item in turn server code 2022-12-29 14:53:05 +01:00
Daniel Gultsch ce0992036a
disable proximity sensor after switching from audio to video 2022-12-29 12:53:59 +01:00
Daniel Gultsch 909aa72b25 catch exception in getSignalingState() 2022-12-24 10:55:16 +01:00
Daniel Gultsch 36efd51a7f fix transports/descriptions not upgraded to jingle ft
fixes #4429
2022-12-20 19:28:47 +01:00
Daniel Gultsch 4ef4207593 show switch to video only if other party has caps
fixes #4421
2022-12-12 10:15:13 +01:00
Daniel Gultsch bb52962f0d delay candidates until after session-init/accept 2022-12-05 15:40:07 +01:00
Daniel Gultsch 2c7c44e957 null PeerConnection reference before disposing; otherwise getState() might be issued against disposed object 2022-12-01 20:46:18 +01:00
Daniel Gultsch 80d195d35e avoid race condition when restarting ICE 2022-11-30 17:32:46 +01:00
Daniel Gultsch 4e8ceadfbf prepare JingleRtpConnection for content-adds 2022-11-28 08:59:23 +01:00
Daniel Gultsch f4be142e4d add helper methods for content modification to RtpContentMap 2022-11-22 10:13:48 +01:00
Daniel Gultsch e2f98f6bbc ensure cc-ed proceed is equivalent to accept 2022-11-22 10:13:07 +01:00
Daniel Gultsch 9897fa3a45 rename initiateIceRestart to renegotiate to handle content adds 2022-11-21 09:10:01 +01:00
Daniel Gultsch 304205b2e3 take senders attr into account when converting to and from sdp 2022-11-20 17:00:40 +01:00
Daniel Gultsch 59ea66ca78 make sure VideoSourceWrapper is stored in property 2022-11-19 14:19:07 +01:00
Daniel Gultsch 27d8da2ab4 refactor WebRTCWrapper to allow for track adds 2022-11-19 13:03:34 +01:00
Daniel Gultsch 8fb2c11771 use plurals for missed call strings 2022-11-19 08:14:50 +01:00
Daniel Gultsch 6ececb4d2b refactor webrtc video source + capture code 2022-11-12 13:37:56 +01:00
Dmitry Markin a6b88ba9e9
Add missed call notifications
Co-authored-by: Daniel Gultsch <daniel@gultsch.de>
2022-08-29 12:41:35 +02:00
Daniel Gultsch e8736d5f1b bump guava library 2022-08-22 11:29:04 +02:00
Daniel Gultsch fe3433e427 do not accept empty credentials as ice-restart 2022-08-10 09:11:09 +02:00
Daniel Gultsch d41020ccf3 ignore race condition after reject from notification
fixes #4351
fixes #4261
2022-08-05 10:46:15 +02:00
Daniel Gultsch 62a379862e jingle rtp: improve logging and error reporting 2022-08-01 10:14:49 +02:00
Daniel Gultsch 42bd8e6d61 minor code clean up 2022-06-22 07:56:44 +02:00
Stephen Paul Weber 78048bbd3d Enable WebRTC-BindUsingInterfaceName/Enabled/
This makes 464XLAT networks (such as T-Mobile LTE) work.

https://bugs.chromium.org/p/webrtc/issues/detail?id=10707
2022-03-10 16:29:00 +01:00
Daniel Gultsch 372078629b fix ice candidate sending when different credentials are used 2022-02-25 17:26:36 +01:00
Daniel Gultsch 1f772df74f remove security check that ensures rtp connection was properly finished
this only causes race conditions
2022-02-25 16:24:16 +01:00
Daniel Gultsch d6be6ddd18 use full file name for all new files 2022-02-22 16:05:02 +01:00