Daniel Gultsch
acef5dbd3b
code clean up
2023-11-20 19:29:19 +01:00
Daniel Gultsch
c72a86a0a4
add timeout to ICE gathering
2023-11-14 08:57:22 +01:00
Daniel Gultsch
622b569bbc
fix accepting senders both content adds
2023-11-13 13:46:30 +01:00
Daniel Gultsch
80c49955f0
JingleRtpConnection code clean up
2023-11-13 13:46:30 +01:00
Daniel Gultsch
96dcc75ac3
add SDP Offer / Answer support
2023-11-13 12:36:20 +01:00
Daniel Gultsch
38ca53fcac
bump reporting xep and add ability to report messages
2023-11-12 19:29:15 +01:00
Daniel Gultsch
e73fbac56f
enable 'PEP Native Bookmarks'
2023-11-10 15:29:26 +01:00
Stephen Paul Weber
f798102978
Fix and updates Bookmarks2 support
...
Support the stable version namespace and the new elements, including preserving
any extension content.
2023-11-10 11:41:02 +01:00
Daniel Gultsch
0898ea77ff
jingle: do not send session-terminate after failed regneg when session already was
2023-10-31 13:16:17 +01:00
Daniel Gultsch
f042efd550
add 'log out' button to foreground notifcation
...
this temporarily disconnects all accounts until the user opens the app again.
essentially this akin to an 'Exit' button
Users previously had the option to 'disable' accounts but this provides a
faster way to "free up resources" until the next time the app is opened.
2023-10-29 08:54:16 +01:00
Daniel Gultsch
55a77c083f
store SSLSocket after starttls to fix channel binding mechanism detection
2023-10-23 14:40:40 +02:00
Daniel Gultsch
68eb17d400
create missed call notification when device is busy
2023-10-23 11:22:00 +02:00
Daniel Gultsch
c44f4b102a
do not accept fast token w/o channel binding for channel bound login
2023-10-21 14:22:38 +02:00
Daniel Gultsch
3350ea8b5b
ensure we are in session accepted when processing content-modify
2023-10-15 08:51:15 +02:00
Daniel Gultsch
5b2444ea13
implement see-other-host stream error
2023-10-13 08:29:23 +02:00
Daniel Gultsch
788565b299
upgrade to 'both' upon accepting recvonly content-add
2023-10-11 11:38:09 +02:00
Daniel Gultsch
dbf71e5d54
handle senders modification via content-modify
...
Dino uses this to enable/disable video when a video content is already present
2023-10-10 18:47:29 +02:00
Daniel Gultsch
c53e035935
do not use JMI if any rtp capable device does not support it
2023-10-09 16:23:02 +02:00
Daniel Gultsch
d3d582759f
support omemo verification in non stub transport content modifications
...
Dino (and this is probably correct behaviour) expects a fingerprint in the
content-add message. (and not a stub transport as indicated in the examples).
however if we start to include them we also need to encrypt and verify them
properly.
2023-10-09 13:19:26 +02:00
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
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