Commit graph

4142 commits

Author SHA1 Message Date
Daniel Gultsch 5728cf13ea
RtpSessionActivity code clean up 2023-11-13 17:12:18 +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
kosyak 2b4b0b1212 fix conversation swipe background color 2023-10-31 15:05:04 +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
kosyak 53a4c6cbcb fix npe 2023-10-31 13:11:41 +01:00
Daniel Gultsch 438a228fc3
minor code clean up 2023-10-31 12:34:55 +01:00
Daniel Gultsch f6482c5a87
fix caps hash calculation for empty form fields 2023-10-31 11:03:59 +01:00
Daniel Gultsch fba7721cd5
fix rare concurrent modification in muc user search 2023-10-31 10:43:53 +01:00
kosyak 356d1e146e better messages highlighting 2023-10-30 21:32:42 +01:00
kosyak 1d7bd8f8da fix reply text color 2023-10-30 21:32:27 +01:00
kosyak 68d8e184fd fix crash during refresh feature discovery 2023-10-30 21:32:14 +01:00
kosyak f12c242628 note to self as separate context menu item 2023-10-30 21:31:54 +01:00
kosyak 11316a949d fix crash 2023-10-30 19:59:43 +01:00
kosyak b5b47f8d7d fix expandable contact clicks handling 2023-10-30 19:59:37 +01:00
Daniel Gultsch dfd7410b1a
make copy omemo fp button a show qr code button 2023-10-30 14:26:28 +01:00
Daniel Gultsch 71b6492d61
show unverified devices warning in contact and account details 2023-10-30 13:06:04 +01:00
Daniel Gultsch 0bbc1193e3
allow background activity start for OpenKeyChain intents 2023-10-29 08:54:19 +01:00
Daniel Gultsch ea5ffe92ea
improve logging when PGP decryption fails 2023-10-29 08:54:19 +01:00
Daniel Gultsch 48ffde9656
toggle foreground service to set correct type when gaining permissions 2023-10-29 08:54:18 +01:00
Daniel Gultsch e83a0af277
ignore false positive warning wrt foreground service 2023-10-29 08:54:17 +01:00
Daniel Gultsch 35c8d31d42
update gradle and gradle plugin 2023-10-29 08:54:17 +01:00
Daniel Gultsch e422b89df5
use aggressive reconnects for see-other-host 2023-10-29 08:54:17 +01:00
Daniel Gultsch 1732ab5cc7
add internal ping timer in case alarm manager fails 2023-10-29 08:54:17 +01:00
Daniel Gultsch a162d72c2a
code clean up in processAccountState() 2023-10-29 08:54:17 +01:00
Daniel Gultsch 928db01ae8
do not init connection for disabled accounts 2023-10-29 08:54:16 +01:00
Daniel Gultsch 2dd8896dc2
stop service on log out when UI is not active 2023-10-29 08:54:16 +01:00
Daniel Gultsch d1f648f2e3
code clean up in onStartCommand 2023-10-29 08:54:16 +01:00
Daniel Gultsch 69425e677c
remove soft disable flag when attempting call 2023-10-29 08:54:16 +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 418d6b09a0
explicitly declare foreground service type 2023-10-29 08:54:16 +01:00
kosyak 2d92736810 clickable replies 2023-10-27 05:31:52 +02:00
Daniel Gultsch 981dc2df6d
fix RtpSessionActivity not asking for permissions 2023-10-26 09:38:24 +02:00
kosyak f2012bc7f5 commands tab in conversation 2023-10-25 23:38:54 +02:00
Daniel Gultsch f6c9df00de
run account deletion callback on ui thread 2023-10-25 09:41:05 +02:00
kosyak 43870114d9 group contacts by tag 2023-10-25 04:13:36 +02:00
Daniel Gultsch 6d519cd447
pick proper TTL for non existent DNS entries 2023-10-24 21:05:35 +02:00
Daniel Gultsch 1da9d42065
retrieve DNS response from cache 2023-10-24 19:16:47 +02:00
Daniel Gultsch 97acd16422
keep cache of DNS messages 2023-10-24 18:53:14 +02:00
kosyak d1d23e4627 support primary color picker 2023-10-24 02:28:07 +02: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 822f3f4d22
consider going from unique or exporter to endpoint a downgrade 2023-10-21 14:21:29 +02:00
Daniel Gultsch d1f4fbd9de
add connect timeout to DoT 2023-10-19 20:51:19 +02:00
Daniel Gultsch 71ebca40e8
add ķ as irregular unicode 2023-10-19 18:11:08 +02:00
Daniel Gultsch 063f30ded2
ignore outgoing invite
outgoing, mediated invites are of type=normal and can end up in MAM.
We want to ignore those if they get mirrored back to us
2023-10-18 11:50:10 +02:00
Daniel Gultsch 1b49e6b3c1
disable password edit unless unauthorized 2023-10-15 11:23:12 +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 9a922ffe5d
quietly ignore mediated invites from blocked contacts 2023-10-13 17:36:12 +02:00
Daniel Gultsch 5b2444ea13
implement see-other-host stream error 2023-10-13 08:29:23 +02:00
Daniel Gultsch a40d244bf5
remove unnecessary in resolver 2023-10-12 11:59:21 +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 39194d111c
QR code scan: take disabled accounts into consideration
when making register or add contact decision
2023-10-10 09:36:08 +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 8f014d5525
implement Private DNS (DoT)
due to limitations in the MiniDNS library this does not work when
'Validate hostname with DNSSEC' is enabled in the expert settings
2023-10-09 13:27:44 +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 541c8ba80d
modify mime type detection for shared files
add support for audiobooks
2023-10-06 12:34:13 +02:00
kosyak 663a0feecb get rid of soprani.ca leftofvers 2023-10-06 11:14:10 +02:00
kosyak c9c98d98e6 get rid of soprani.ca bookmark 2023-10-06 11:13:24 +02:00
Daniel Gultsch 95aea4291e
don't attempt to figure out file path on Android 11+
fixes #117
2023-10-05 20:29:42 +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 1aeae9c7f6
set local-only flag on ongoing call notification 2023-10-03 14:16:48 +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 86f46ece83
revert back to AAC for voice messages
iOS can not do opus out of the box
2023-09-29 18:42:31 +02:00
Daniel Gultsch 05c79ff29d
version bump webrtc to m117 2023-09-29 16:19:01 +02:00
Daniel Gultsch 3e9c08a4aa
include date in backup file name
since `account.ceb` might have previously been created by a different application
(for example f-droid and user is on play now) or copied over via the file
manager Conversations might not have permission to write over an existing file.

we include the date so we always get a new file

fixes #105
2023-09-25 10:56:24 +02:00
Daniel Gultsch 2adff4a92c
catch rare instances of foreground service not allowed to start 2023-09-25 09:22:29 +02:00
Daniel Gultsch 8ba90f266e
add explicit error message for outdated backup files 2023-09-20 17:00:04 +02:00
kosyak b83d224652 bump mam limits 2023-09-18 13:29:01 +02:00
kosyak 13c22ad5db append author and day for multi select copy value 2023-09-15 17:56:07 +02:00
kosyak e3ce350077 improve message selection mode title 2023-09-15 17:38:19 +02:00
kosyak 5d30742a13 fix message archive issues 2023-09-15 16:14:32 +02:00
kosyak 6770f7de61 separate PM fixes 2023-09-15 14:11:43 +02:00
kosyak 1ca354c208 muc PM in the separate conversation 2023-09-15 11:28:50 +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 00ae1ca762
fix group chat shortcuts 2023-09-11 16:38:57 +02:00
Daniel Gultsch c6501a3ad4
fix UUIDv4 calculation 2023-09-08 14:19:18 +02:00
Stephen Paul Weber 11e6cb9693
Use conversation notifications
Allows for per-conversation priority and sound
2023-09-07 13:08:23 +02:00
Daniel Gultsch d5ae2f4b41
look at roomconfig_changesubject and roominfo_changesubject
fixes #90
2023-09-06 13:47:35 +02:00