Commit Graph

376 Commits

Author SHA1 Message Date
Chris Eager
11601fd091 Multi-recipient message views
This adds support for storing multi-recipient message payloads and recipient views in Redis, and only fanning out on delivery or persistence. Phase 1: confirm storage and retrieval correctness.
2024-09-04 13:58:20 -05:00
Jon Chambers
f09cc03164 Detect message delivery loops 2024-08-30 16:27:21 -04:00
ravi-signal
7df978390f Add playProductId to backup level configuration 2024-08-30 12:59:09 -05:00
ravi-signal
564dba3053 Add playbilling endpoint to /v1/subscriptions 2024-08-30 12:50:18 -05:00
ravi-signal
176a15dace Add GooglePlayBillingManager 2024-08-28 14:22:37 -05:00
Katherine
9eafa118d5 Return key transparency protobufs encoded as base64 strings 2024-08-21 17:08:06 -04:00
Katherine
4c0a5ac3b2 Add versionedExpirationTimer capability 2024-08-21 11:39:43 -04:00
Ameya Lokare
7cbbf73cc9 Add registration recovery checker 2024-08-19 11:43:19 -07:00
Jon Chambers
659ac2c107 Generalize push notification scheduler and add support for delayed "new messages" notifications 2024-08-16 16:16:55 -04:00
Jon Chambers
fc3e547dce Remove an obsolete client version check when changing phone numbers 2024-08-16 16:14:00 -04:00
Ravi Khadiwala
e4f9f949f0 Serialize subscription errors as json 2024-08-15 18:30:48 -05:00
Fedor Indutny
7605462d48 Allow device to unlink itself 2024-08-15 13:54:07 -05:00
Ravi Khadiwala
fd10b9723d Add source length validation on backup media copy 2024-08-15 13:52:50 -05:00
Katherine
2aa1eee29d Align chat endpoints with "distinguished key" changes in key transparency service 2024-08-15 14:35:15 -04:00
Ravi Khadiwala
97e566d470 Move common subscription management out of controller 2024-08-15 13:29:26 -05:00
ravi-signal
a8eaf2d0ad Group one-time donation methods together 2024-08-15 13:25:09 -05:00
Ravi Khadiwala
b5f9564e13 Validate that sourceAttachments are valid base64 strings 2024-08-14 17:36:30 -05:00
Jon Chambers
0075e94a42 Rename AuthenticatedAccount to AuthenticatedDevice 2024-08-14 12:44:48 -04:00
Katherine
84c329e911 Key transparency search and monitor endpoints 2024-08-12 13:14:42 -07:00
Katherine
0e4625ef88 Migrate to 429 for all ratelimit responses 2024-08-05 12:02:11 -07:00
Ravi Khadiwala
10d559bbb5 Return backup info at /v1/subscription/configuration
- Return the free tier media duration and storage allowance for backups
- Add openapi annotations
- Update default media storage allowance
2024-08-02 14:08:00 -05:00
Chris Eager
6fa6c3c81c Ensure multi-recipient messages are addressed to ACI service IDs 2024-08-01 12:31:27 -05:00
Chris Eager
e4ffc932a9 Check for IdentityType.PNI in OptionalAccess#verify 2024-08-01 12:31:27 -05:00
Chris Eager
a63e0e0390 Remove unused RateLimiters 2024-07-11 16:37:55 -05:00
Chris Eager
775889c0b6 Remove deprecated PUT /v2/keys/signed endpoint 2024-07-08 15:26:26 -04:00
Jon Chambers
73e0aea85c Retire Device#hasMessageDeliveryChannel() 2024-06-26 14:46:39 -04:00
Jon Chambers
90e622b307 Require that message bundles include all linked devices 2024-06-25 11:51:09 -04:00
Jon Chambers
cb5cd64c05 Gracefully handle NotPushRegisteredException 2024-06-25 11:23:16 -04:00
Jon Chambers
d306cafbcc Allow, but do not require, message delivery to devices without active delivery channels 2024-06-25 09:53:31 -04:00
ravi-signal
4aadabfac0 Make copy/delete streaming friendly 2024-06-20 16:00:09 -05:00
Katherine
0414da8c32 Add delete sync capability 2024-06-12 13:54:06 -04:00
Katherine
f435b612c9 Remove stale pni, pnp, and giftBadges capabilities 2024-06-12 13:42:18 -04:00
Jon Chambers
2f55747601 Remove expiration check from Device#isEnabled() 2024-06-07 10:39:11 -07:00
Jon Chambers
64ac22a918 Resolve warnings/suggestions throughout MessageControllerTest 2024-06-06 14:11:44 -04:00
Alan Liu
ffb81e4ff7 Retrieve Cloudflare Turn Credentials from Cloudflare 2024-06-05 12:03:40 -04:00
Jonathan Klabunde Tomer
01743e5c88 Delete messages lazily on account and device deletion to prevent timeouts when deleting accounts/devices with large queues 2024-06-04 12:16:43 -07:00
Ravi Khadiwala
cea2abcf6e Fix some accidentally sync async methods 2024-06-03 14:07:02 -05:00
Jon Chambers
7980da9ce5 Set client public keys in the scope of a pessimistic account lock 2024-05-22 09:40:48 -04:00
ravi-signal
ce1c5be940 Add svr3 share-set store/retrieve 2024-05-17 10:45:18 -05:00
Jon Chambers
101ecf342f Remove now-unused rate limiters 2024-05-16 16:56:42 -05:00
Jon Chambers
4efba94662 Add an API endpoint for storing public keys 2024-05-16 17:53:16 -04:00
Ravi Khadiwala
40639f70f4 Fix flaky MessageMetricsTest
Make the MeterRegistry in MessageMetrics configurable
2024-05-16 13:39:17 -05:00
Alan Liu
843151859d Adding hostname property to cloudflare turn config 2024-05-02 12:35:32 -07:00
Chris Eager
4a28ab6317 Add support to trial Cloudflare TURN beta 2024-05-01 10:15:01 -05:00
Ravi Khadiwala
37aa3b8e49 Default to 0 usedBytes in GET /v1/archives 2024-05-01 10:10:46 -05:00
Ravi Khadiwala
19944bfdb2 Update to libsignal 0.45 and use libsignal's BackupLevel 2024-04-25 16:54:41 -05:00
Jon Chambers
8999f0104f Trigger pub/sub events for one-time donations via Braintree (PayPal) 2024-04-24 09:19:21 -04:00
Jonathan Klabunde Tomer
f0dcd8e07b Group Send Endorsement support for unversioned profile fetch 2024-04-23 14:58:19 -07:00
ravi-signal
9ef1fee172 Add DELETE v1/archives 2024-04-23 16:50:11 -05:00
Jonathan Klabunde Tomer
b3bd4ccc17 simplify profile auth 2024-04-23 14:49:04 -07:00