Commit graph

860 commits

Author SHA1 Message Date
Daniel Gultsch f7b5124fd3
support location attribute on enable 2023-12-01 18:29:52 +01:00
Daniel Gultsch 747f58c35b
JingleConnectionManager: code clean up 2023-11-22 08:37:17 +01:00
Daniel Gultsch b183f49977
update call UI after RTP connection has ended 2023-11-22 08:36:44 +01:00
Daniel Gultsch 402882389f
fixup: properly detect fast 2023-11-21 19:40:10 +01:00
Daniel Gultsch 59ff27062b
treat carbons as enabled when requested through bind 2 2023-11-21 16:50:46 +01:00
Daniel Gultsch 3dac9ef3f4
use stricter namespace matching in stream parser 2023-11-21 15:25:21 +01:00
Daniel Gultsch 5bb8f3f9aa
stricter bind 2 inline feature parsing 2023-11-21 15:24:31 +01:00
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