Commit graph

972 commits

Author SHA1 Message Date
Daniel Gultsch 0ba4892d3e RTP: write log message on background thread 2020-06-12 09:08:09 +02:00
Daniel Gultsch 7e2d87f39c recover if attachImage can’t generate scalled down version of image. fixes #3773 2020-06-09 21:08:27 +02:00
Daniel Gultsch 4bc43af690 improve logging in export backup service. closes #3672 2020-06-02 07:59:46 +02:00
Daniel Gultsch 8edfc61346 fixed concurrent modification when iterating over presences 2020-05-30 10:57:22 +02:00
Daniel Gultsch aa1e69d277 use escaped jid for EXTRA_ACCOUNT 2020-05-20 20:14:13 +02:00
Daniel Gultsch 304411fc09 return audio mode to normal (instead of previous mode) after call ended 2020-05-20 19:40:26 +02:00
Daniel Gultsch dd0f354b62 publish pep bookmarks 1.0 to an item called 'current' 2020-05-19 19:39:05 +02:00
Daniel Gultsch df3273a6fc fix jid.withResource() for domain jids 2020-05-18 09:14:57 +02:00
Daniel Gultsch a0920b83e2 use Account.getDomain() for direct access to domain jid 2020-05-17 10:24:46 +02:00
Daniel Gultsch 78a82a74bc use unescaped jid in ManageAccount 2020-05-15 20:20:22 +02:00
Daniel Gultsch ef7d4fca86 show escaped jid in most of the UI
for historical reasons we store unescaped variants in DB and use them in intents.
2020-05-15 18:22:04 +02:00
Daniel Gultsch b6703dbe38 switch xmpp-addr to jxmpp-jid 2020-05-15 17:06:16 +02:00
Daniel Gultsch 1b4f9cc8ab allow 'login with certificate' from welcome screen. fixes #3724 2020-05-13 13:52:05 +02:00
Daniel Gultsch 36d2ecfcfa always use private key for TLS connection when one is configured 2020-05-13 09:38:30 +02:00
Daniel Gultsch bd0234ba4d dismiss incoming call notification on crash. fixes #3701 2020-05-08 19:34:20 +02:00
Daniel Gultsch 1b237e4ea0 pulled translations from transifex 2020-05-06 21:46:11 +02:00
Daniel Gultsch abb33b048a fixed crash after accepting voice calls on devices that don’t have an earpiece (tablets)
fixes #3682
2020-05-02 18:06:56 +02:00
Daniel Gultsch 8183c54ba0 use stanza-id for display markers in group chats 2020-04-28 08:25:21 +02:00
Daniel Gultsch 418cecad11 remove XEP-0357 support for group chats 2020-04-28 06:50:04 +02:00
Daniel Gultsch 3c0b3f4b94 allow dnd overwrite for incoming calls 2020-04-21 18:13:09 +02:00
Daniel Gultsch 187dff3df9 put contact picture in incoming call notification 2020-04-20 15:57:31 +02:00
Daniel Gultsch df2ef0eeb0 automatically reject/ignore calls from strangers if the setting is set 2020-04-20 15:57:31 +02:00
Daniel Gultsch e661d5b7ad provide deep link from settings into call notification settings 2020-04-20 15:57:31 +02:00
Daniel Gultsch c7269bc0aa check microphone availability on background thread 2020-04-20 15:57:31 +02:00
Daniel Gultsch 934b98d199 add microphone availability check 2020-04-20 15:57:30 +02:00
Daniel Gultsch 8472712b3e play notification sound pre notification categories 2020-04-20 15:57:30 +02:00
Daniel Gultsch 36e117979a put 'video' in ongoing video call notification 2020-04-20 15:57:30 +02:00
Daniel Gultsch 5a20faaf0f show 'incoming video cal' notification 2020-04-20 15:57:30 +02:00
Daniel Gultsch e16e0d895e cancle ongoing jingle sessions on xmpp rebind 2020-04-20 15:57:30 +02:00
Daniel Gultsch b924a63d01 copy audio manager from AppRTCDemo 2020-04-20 15:57:30 +02:00
Daniel Gultsch 609120c0d8 only ever create one wake lock in rtpsessionactivity 2020-04-20 15:57:30 +02:00
Daniel Gultsch c9f7e174f7 use foreground service for ongoing call notification 2020-04-20 15:57:30 +02:00
Daniel Gultsch d19b5e0634 show notification during ongoing call 2020-04-20 15:57:30 +02:00
Daniel Gultsch 7909a72d43 make retract jingle messages work 2020-04-20 15:57:30 +02:00
Daniel Gultsch e2f1cec2e5 prepare more state transitions 2020-04-20 15:57:30 +02:00
Daniel Gultsch ccfc55e9b6 show proper notification on incoming call 2020-04-20 15:57:30 +02:00
Daniel Gultsch a9a35fb74b show status in RtpSessionActivity 2020-04-20 15:57:30 +02:00
Daniel Gultsch 34f42c73bc cleaned JinglePacket and Content element 2020-04-20 15:57:29 +02:00
Daniel Gultsch 23ebb6ae80 rename JingleConnection to JingleFileTransferConnection; use ID tuple to identify sessions 2020-04-20 15:57:29 +02:00
Daniel Gultsch 4e33ebb308 close FileInputStream in MTM. fixes #1150 2020-03-26 08:25:22 +01:00
Daniel Gultsch 00191e2b60 explicitly use BouncyCastle for file crypto 2020-03-09 19:12:30 +01:00
Daniel Gultsch 7b5d0e034e when setting moderated also set non standard field to not make users participants by default 2020-03-02 11:11:23 +01:00
Daniel Gultsch 843d7fe12d evict cached previews when file gets deleted 2020-01-20 10:54:55 +01:00
Daniel Gultsch e38a9cd729 omemo changes: use 12 byte IV, no longer accept auth tag appended to payload 2020-01-18 12:08:03 +01:00
Daniel Gultsch 9bcef7a8e7 display '#' in generated channel avatars 2019-12-22 19:30:58 +01:00
Marc Schink cae124d93f createOutputStream(): allow to disable decryption 2019-12-20 19:17:55 +01:00
Daniel Gultsch 10c5d151d3 delete cached posh file after not being able to verify 2019-11-18 19:12:04 +01:00
Daniel Gultsch abc1cb5a89 remove 'indicate received' setting and default to true 2019-11-08 12:06:38 +01:00
Daniel Gultsch 07786d4576 optionally search local muc rooms instead of jabber.network 2019-11-02 09:43:37 +01:00
Daniel Gultsch adfbe59e57 mark silent notifications as local only
this will prevent silent notifications (for example those supressed by grace
period) showing up on my smart watch
2019-11-01 11:03:58 +01:00
Daniel Gultsch 2bed0dad12 attempt to fix some rare crashes 2019-10-26 13:23:27 +02:00
Daniel Gultsch 2f59d66fd1 catch dead system exception when creating error notification 2019-10-23 22:33:51 +02:00
Daniel Gultsch e0b5010f24 don’t mark pgp encrypted files received from dino as deleted 2019-10-11 15:37:41 +02:00
Daniel Gultsch 79c3135b4d properly guard bookmarks2 deletion 2019-10-07 13:49:39 +02:00
Daniel Gultsch 4df8343b05 set autojoin=true after following invite 2019-10-07 09:51:03 +02:00
Daniel Gultsch b96ef1e591 update ui after bookmark change 2019-10-07 09:37:12 +02:00
Daniel Gultsch f530e395ca bookmarks2. introduce #compat namespace 2019-10-07 09:37:12 +02:00
Daniel Gultsch 94c592f213 leave/join on bookmark modifactions 2019-10-07 09:37:12 +02:00
Daniel Gultsch 95bf66ca7d Bookmarks2: support retraction 2019-10-07 09:37:12 +02:00
Daniel Gultsch f1aa5f2cab support for delete bookmarks2 2019-10-07 09:37:12 +02:00
Daniel Gultsch 6923b2898c WIP Bookmarks 2 support 2019-10-07 09:37:12 +02:00
Marcin Mielniczuk c7bbfaf061 Use a more meaningful name for old status (#3552) 2019-10-01 19:42:05 +00:00
Daniel Gultsch 618d892ae7 account deletion: only attempt to delete omemo id when connected 2019-09-29 01:40:40 +02:00
Daniel Gultsch 863ac7f2e5 show resource prompt when sending uncompressed video 2019-09-28 23:56:02 +02:00
Daniel Gultsch 9276eff1db delete omemo keys when deleting account 2019-09-28 21:52:07 +02:00
Daniel Gultsch abe01f18f2 improved logging for messages waiting for join 2019-09-19 10:00:50 +02:00
Daniel Gultsch af74c3604c fixed R8 weirdness 2019-09-18 11:04:36 +02:00
Daniel Gultsch 02351dc0fb fixed direct invites after adhoc 2019-09-18 09:55:18 +02:00
Daniel Gultsch 4c92d1b755 cancel spinning wheel on muclumbus error 2019-09-18 09:17:47 +02:00
Daniel Gultsch d963d95e30 fixed some minor NPE 2019-09-16 14:20:15 +02:00
Daniel Gultsch ab57c59838 clear notifications when deleting account 2019-09-15 12:23:56 +02:00
Daniel Gultsch a39fff5c8e fixed 2 issues reported by new linter 2019-09-11 15:42:43 +02:00
Daniel Gultsch 8b69f8ae50 include ticker information in notification. fixes #3532 2019-09-08 17:58:15 +02:00
Daniel Gultsch 0e1c26c569 do not include link local in direct candidates 2019-09-05 13:17:45 +02:00
Daniel Gultsch c84a89924e include pgp sig and status in presence to non anon muc 2019-08-19 14:27:11 +02:00
Daniel Gultsch f11adf4c02 do not put default nick into bookmark if none has been set before 2019-08-19 13:55:52 +02:00
Daniel Gultsch 0770914edf refactored filename and extension parsing 2019-08-16 14:09:42 +02:00
Daniel Gultsch c039ffcf35 clean up logging 2019-08-14 18:44:57 +02:00
Daniel Gultsch 6e1394ab40 make config flag for leave before join 2019-08-14 12:04:27 +02:00
Daniel Gultsch b68851b719 create share button in backup done notification 2019-07-15 19:11:00 +02:00
Daniel Gultsch 7e93c1021b handle blocking and unblocking of full jids 2019-07-10 17:58:48 +02:00
Daniel Gultsch 8c526de0af disable muc push on archive instead of leave
leave can be triggered on swipe and doesn’t mean we don’t want pushes
2019-07-01 14:35:00 +02:00
Daniel Gultsch 7ec8f7952f migrate copy ond write list to synchronized hashset for pending mucs 2019-06-30 21:57:37 +02:00
Daniel Gultsch 0ecdb43be6 rate limit muc pings / joins. never run two pings at same time 2019-06-30 19:54:07 +02:00
Daniel Gultsch 49224335fc attempt to unregister when receiving push for channel no longer joined
when receiving a FCM push message for a channel the user is no longer in (this can happen when the disable command failed) an attempt will be made to explicitly unregister from the app server (which in turn will then send item-not-found on next push)
2019-06-26 17:40:12 +02:00
Daniel Gultsch 7809af9b57 implement FCM push for group chats 2019-06-25 18:15:51 +02:00
Daniel Gultsch e467fe341e implement client support for muc push
Staying connected to a MUC room hosted on a remote server can be challenging.

If a server reboots it will usually send a shut down notification to all
participants. However even if a client knows that a server was shut down it
doesn’t know when it comes up again. In some corner cases that shut down
notification might not even be delivered successfully leaving the client in a
state where it thinks it is connected but it really isn’t.

The possible work around implemented in this commit is to register the clients
full JID (user@domain.tld/Conversations.r4nd) as an App Server according to
XEP-0357 with the room. (Conversations checks for the push:0 namespace on the
room.)

After cycling through a reboot the first message send to a room will trigger
pubsub notifications to each registered full JID. This event will be used to
trigger a XEP-0410 ping and if necessary a subsequent rejoin of the MUC.

If the resource has become unavailable during down time of the MUC server the
user’s server will respond with an IQ error which in turn leads to the MUC
server disabling that push target.

Leaving a MUC will send a `disable` command. If sending that disable command
failed for some reason (network outage) and the client receives a pubsub
notification for a room it is no longer joined in it will respond with an
item-not-found IQ error which also disables subsequent pushes from the server.

Note: We 0410-ping before a join to avoid unnecessary full joins which can be
quite costly. Further client side optimazations will also surpress pings when
a ping is already in flight to further save traffic.
2019-06-24 18:16:06 +02:00
Daniel Gultsch 17c8bf3452 attempt to keep messages waiting until muc is connected 2019-06-18 18:09:44 +02:00
Daniel Gultsch 6862b60c3f self ping (xep-0410) after receiving invite to muc 2019-06-18 13:20:24 +02:00
Daniel Gultsch 1cfba86aff don’t crash when attempting to publish bookmarks while offline 2019-06-16 18:05:06 +02:00
Daniel Gultsch 2fbd9e6744 MessageStyle notifications replace car extender 2019-06-16 16:02:22 +02:00
ialokim 15791b732c fix export error for non-unicode numbers (#3444) 2019-04-28 10:46:49 +00:00
Daniel Gultsch b2ea91909b introduced type private_file_message to handle attachments in PMs. fixes #3372 2019-04-27 11:46:43 +02:00
Daniel Gultsch 6704db21fb added Tor support to channel search 2019-04-25 21:10:50 +02:00
Daniel Gultsch ff84ee6964 cache channel search results 2019-04-24 13:25:54 +02:00
Daniel Gultsch 2fa687b8ae refactor muc search to use http 2019-04-22 13:00:45 +02:00
Daniel Gultsch a0f88aa9b4 implement channel discovery over jabber.search.network 2019-04-22 10:42:21 +02:00
Daniel Gultsch 39bc067405 execute some dismiss error notification and reset error in background 2019-04-17 12:49:36 +02:00
Daniel Gultsch 46596e8652 fix backup creation for older installations
if your Conversations installation is older than December 2016 (version 1.15.0) the backup would
include historic data that a current installation is not able to read on restore.
This commits excludes that data from the backup.
If you had problems importing the backup you need to create a new backup after this patch
2019-03-07 09:08:37 +01:00
Daniel Gultsch a29a5fd491 copy intent extras in eventreceiver 2019-02-27 14:16:26 +01:00