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
ca1ee4a565
process stream features after success when we inlined bind but not sm
2023-06-25 22:15:49 +02:00
Daniel Gultsch
6289e048b3
catch runtime exception when trying to stop tone manager
2023-06-05 10:05:59 +02:00
Daniel Gultsch
aa8e0b3c4d
remember bound stream features. fixes #45
2023-05-02 15:35:27 +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
1e0904a48d
use less entropy in SASL2 device id
2023-01-06 12:41:26 +01:00
Daniel Gultsch
1000d927a7
remove work arounds for nimbuzz.com
2023-01-01 12:20:10 +01:00
Daniel Gultsch
97d9cb7dd5
remove work arounds for slack
2023-01-01 12:05:49 +01:00
Daniel Gultsch
0cec499565
make sure we don’t dispose video source twice
2022-12-30 12:16:19 +01:00
Daniel Gultsch
a7fe3e8372
reset stanza count when enabling SM via SASL inline
2022-12-30 12:09:16 +01:00
Daniel Gultsch
01fba162f0
code clean up. use Optional to parse SM’s h attribute
2022-12-30 10:53:49 +01:00
Daniel Gultsch
f5b7fbc441
add log when we requested token but didn’t get one
2022-12-30 09:00:42 +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
499c4ddd0a
do not detect sm:2 as sm available
...
the 2.11.0 release removed support for enabling sm:2
unfortunatly sm:2 was still detected as "server supports stream managment"
down the line leading to resend loops.
fixes #4426
2022-12-16 08:07:46 +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
6b9ebb3abf
remove TODO
2022-11-18 10:40:16 +01:00
Daniel Gultsch
109a20ca40
do not expect stream features after inline resume
2022-11-17 10:52:30 +01:00
Daniel Gultsch
29461edf40
process challenge only on secure connection
2022-11-17 07:48:09 +01:00
Daniel Gultsch
44bfff7e49
fall back to regular authentication if fast fails
2022-11-16 11:00:43 +01:00
Daniel Gultsch
6ececb4d2b
refactor webrtc video source + capture code
2022-11-12 13:37:56 +01:00
Daniel Gultsch
dac2e17133
disable quick start if fast is available but we didn’t use fast
2022-11-01 18:06:32 +01:00
Daniel Gultsch
35ee01cb28
reset fast token on login failure
2022-11-01 16:44:36 +01:00
Daniel Gultsch
e2b9f0e77a
add support for HashedToken channel binding
2022-10-15 20:53:59 +02:00
Daniel Gultsch
24badda4c9
do quick start with HT-SHA-256-NONE
2022-10-15 18:56:31 +02:00
Daniel Gultsch
c13787873c
request fast token
2022-10-15 12:27:38 +02:00
Daniel Gultsch
3378447f60
parse hash token names
2022-10-15 00:09:29 +02:00
Daniel Gultsch
0cd416298d
ensure we only select channel binding methods available for tls version
2022-10-14 20:00:36 +02:00
Daniel Gultsch
7eb160386d
enable SM if it wasn’t enabled in bind 2
2022-10-14 13:29:59 +02:00
Daniel Gultsch
9a0c90f066
read new stream features directly after success
2022-10-14 13:13:21 +02:00
Daniel Gultsch
cb775ece99
wait for DB restore before bind
2022-09-26 09:47:53 +02:00
Daniel Gultsch
3d56d01826
handle case when server loses support for quick start
2022-09-26 07:53:48 +02:00
Daniel Gultsch
32f9a58d9a
pipeline sasl2 directly after stream start
2022-09-25 14:13:04 +02:00
Daniel Gultsch
126e8ef08c
refactor sasl 2 authentication code
2022-09-24 14:58:49 +02:00
Daniel Gultsch
9f5da67539
use bind:0 namespace
2022-09-24 11:59:53 +02:00
Daniel Gultsch
5a3cca9554
use bind 2 tag and sasl 2 user-agent
2022-09-15 14:28:51 +02:00
Daniel Gultsch
bf15070fef
bump sasl2 namespace
2022-09-15 13:10:15 +02:00
Daniel Gultsch
495f79921d
store full sasl mechanism (not just priority)
2022-09-15 12:22:05 +02:00
Daniel Gultsch
d4ec1eaf38
refactor processFailure and processChallange into methods
2022-09-07 10:31:11 +02:00
Daniel Gultsch
5da9f5b3a3
refactor ScramMechanism to support PLUS
2022-09-06 16:28:28 +02:00
Daniel Gultsch
b78acb6fca
extract channel binding types via XEP-0440
2022-09-06 14:53:12 +02:00
Daniel Gultsch
a210568a9c
refactor SASL choice into factory; remove unused TagWriter
2022-09-06 09:25:23 +02:00
Daniel Gultsch
eee14a822a
add todos
2022-09-05 11:07:25 +02:00
Daniel Gultsch
e0bd1d168c
do not attempt resume when already in smacks session
2022-09-04 09:28:00 +02:00
Daniel Gultsch
052c58f377
rudimentary bind 2 implementation
2022-09-03 20:17:29 +02:00
Daniel Gultsch
00dd9a8058
remove support for sm:2
2022-09-03 12:16:06 +02:00
Daniel Gultsch
4f92ba880b
process authorization id in case full jid changes
2022-08-30 09:31:06 +02:00
Daniel Gultsch
3fac7d4992
fix very rare NPE (race condition)
2022-08-30 08:21:32 +02:00
Daniel Gultsch
8f76084a43
add sm-failed processing
2022-08-29 19:44:39 +02:00
Daniel Gultsch
7ea4f64ce4
code clean up for resumed processing
2022-08-29 19:30:03 +02:00
Daniel Gultsch
f6ab3dd068
support resume via sasl 2.0
2022-08-29 19:22:25 +02:00
Daniel Gultsch
928a16d31d
abort on 'continue' - no client support
2022-08-29 18:53:34 +02:00
Daniel Gultsch
6202cbe26b
minor code clean up for tag and element
2022-08-29 18:40:49 +02:00
Daniel Gultsch
5fc8ff899a
support logging in via SASL 2
2022-08-29 17:09:52 +02:00
Daniel Gultsch
a717917b3d
explicitly search for namespaces when processing stream features
2022-08-29 15:09:53 +02: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
Daniel Gultsch
a9dd5a3c76
support sasl/temporary-auth-failure
...
if the server is unable to query the database throwing a temporary-auth-failure
might be more appropriate
2022-06-14 08:39:58 +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
Daniel Gultsch
d7f38a3e5a
fix precondition for timeout handling
2022-02-12 10:19:54 +01:00
Daniel Gultsch
b6442c0bd4
add Samsung S4 to hardware aec blacklist
...
fixes #4267
2022-01-18 11:30:23 +01:00
Daniel Gultsch
db834a1f07
indicate call reconnect in notification
2021-11-19 12:26:11 +01:00
Daniel Gultsch
f8a94161db
don't play tone going from connect->reconnect->connect
2021-11-19 12:25:27 +01:00
Daniel Gultsch
a508a81553
externalize rtc config generation into seperate method
2021-11-17 11:33:15 +01:00
Daniel Gultsch
61fb38cd84
clean up some error handling error ICE restarts
2021-11-17 10:49:16 +01:00
Daniel Gultsch
0a18c8613f
assume credentials are the same for all contents when restarting ICE
2021-11-16 17:08:34 +01:00
Daniel Gultsch
abb671616c
synchronize setDescription calls
2021-11-16 15:17:12 +01:00
Daniel Gultsch
297a843b9c
use implicit rollback (needed to be enabled on libwebrtc)
2021-11-16 13:17:10 +01:00
Daniel Gultsch
0698fa0d8c
store peer dtls setup for later use in ice restart
2021-11-16 11:21:11 +01:00
Daniel Gultsch
70b5d8d81a
set proper peer dtls setup on ice restart received
2021-11-15 21:49:31 +01:00
Daniel Gultsch
0a3947b8e3
terminate with application failure when failing to apply ICE restart
...
This is fairly unlikely to happen in practice
2021-11-15 17:18:45 +01:00
Daniel Gultsch
3f402b132b
respond with tie-break to prevent ICE restart race
2021-11-15 13:03:04 +01:00
Daniel Gultsch
5b80c62a63
treat transport-info w/o candidates and changed credentials as offer
2021-11-14 18:22:18 +01:00