Commit Graph

1647 Commits

Author SHA1 Message Date
Jon Chambers 8955e31a1e Configure an "idle primary device reminder" interceptor 2025-03-04 08:35:01 -05:00
Jon Chambers f7a3971c64 Add an authentication interceptor that adds alert headers for idle primary devices 2025-03-04 08:35:01 -05:00
Adel Lahlou 886984861f remove performance based turn routing from CallRoutingControllerV2 2025-03-04 08:01:18 -05:00
ravi-signal 8d0d0d61f1
Add reregistration flag to account creation response 2025-02-21 14:13:04 -06:00
Ravi Khadiwala 26c348520f Revert "Add a 2-notification ttl=0 push notification experiment"
This reverts commit 4908a0aa9e.
2025-02-21 14:07:07 -06:00
Ravi Khadiwala ec79386306 Only accept backup receipt redemption when account has a backup credential request 2025-02-21 14:06:51 -06:00
Ravi Khadiwala 68e2c511b7 Split up backup-id rotation rate limits 2025-02-18 10:52:43 -06:00
Jon Chambers b8b17ae473 Add methods for iterating over all account identifiers 2025-02-18 11:46:00 -05:00
Chris Eager 3f9863c441 Discard mrm messages that can never be sent 2025-02-14 12:06:15 -06:00
ravi-signal 4908a0aa9e
Add a 2-notification ttl=0 push notification experiment 2025-02-13 10:25:25 -06:00
Jon Chambers 6032764052
Validate parsed message size, not base64-encoded message size 2025-02-10 14:13:24 -08:00
Jonathan Klabunde Tomer b086a73353
Return 200 and unregistered recipient list for multi-recipient send with GSEs 2025-02-10 09:08:21 -08:00
Ravi Khadiwala 760c5737f9 Add field to RestoreAccountRequest for device transfer initialization 2025-02-07 13:43:57 -06:00
Jonathan Klabunde Tomer ea17eee320
Make logging of message delivery loops configurable, default off 2025-02-07 13:43:28 -06:00
Adel Lahlou 09ce79bd43 Remove /v1/calling/relays API endpoint 2025-02-07 13:41:59 -06:00
Chris Eager 2dfd17af4a Add counter with WebSocket close codes 2025-02-07 13:41:37 -06:00
Jonathan Klabunde Tomer 5d062285c2
Filter to block old REST API for specified client versions 2025-02-05 12:26:47 -08:00
Jon Chambers 70ce6eff9e Include `ephemeral` flag in individual messages 2025-01-31 12:57:54 -05:00
Chris Eager 09eb42e5c6 Add tag for requests made with libsignal 2025-01-31 11:56:56 -06:00
Jon Chambers 48ada8e8ca
Clarify roles/responsibilities of components in the message-handling pathway 2025-01-31 10:24:50 -05:00
Ravi Khadiwala 282bcf6f34 Add persistent timer utility backed by redis 2025-01-29 11:32:13 -06:00
Ravi Khadiwala 1446d1acf8 Fix blocking call in waitForLinkedDevice 2025-01-29 11:32:13 -06:00
Ravi Khadiwala e30beb9c9f Remove ZeroTtlDevicePushNotificationExperiment 2025-01-27 16:24:50 -06:00
Ravi Khadiwala 5a2e297991 Add ZeroTtlDevicePushNotificationExperiment 2025-01-27 12:58:28 -06:00
adel-signal ae1e7fbaa0
Return empty lists instead of null in GetCallingRelaysV2 2025-01-24 17:33:45 -05:00
adel-signal 7e616a4056
Update calling routing to return urls only, no instance IPs 2025-01-24 13:46:32 -05:00
Chris Eager 47550d48e7 Add collation key to registration service session creation rpc call 2025-01-22 17:43:53 -06:00
Chris Eager 5cc76f48aa Add CoinGecko to CurrencyConversionManager 2025-01-19 09:37:38 -06:00
Katherine 3ceaa8bd20
Remove authentication via query parameters for websocket upgrade requests 2025-01-15 14:06:46 -05:00
Katherine Yen d3d68c2a60 Enforce one entry position per identifier in monitor request 2025-01-10 10:06:31 -05:00
Ravi Khadiwala 1cae841ed6 Remove deprecated /v1/accounts/turn 2025-01-10 10:04:25 -05:00
Ravi Khadiwala a88560e557 Add gRPC backup services 2025-01-08 16:13:51 -06:00
Ravi Khadiwala 3ca9a66323 Stripe HTTP2 clients in CloudflareTurnCredentialsManager 2025-01-08 16:02:22 -06:00
Chris Eager 3a4a55c245 Reject old-format Benin numbers, which are now undeliverable 2025-01-07 12:16:44 -06:00
Jon Chambers 68209f270e Correct message topology in test JSON 2025-01-03 10:18:24 -05:00
Jon Chambers 8af939d320 Validate message timestamps 2025-01-03 10:18:24 -05:00
Jon Chambers 16a50935ea Add (failing!) tests for message timestamp validation 2025-01-03 10:18:24 -05:00
Chris Eager 95abda4870 Remove Response wrapper from /v2/directory/auth 2025-01-02 17:07:26 -06:00
Chris Eager 9121032114
FaultTolerantRedisClusterClientTest: increase blpop timeouts to make tests more reliable 2024-12-27 12:23:49 -08:00
Jonathan Klabunde Tomer 541bf968e5
remove support for GET /v1/accounts/me 2024-12-27 12:23:14 -08:00
Chris Eager 8c3ebdcbab Remove obsolete ArtController 2024-12-20 12:18:45 -06:00
Ameya Lokare 0593e9e89f Add `@NotBlank` to verificationToken in LinkDeviceRequest 2024-12-20 10:18:11 -08:00
Chris Eager 8280106493 Remove unused SVR3 controller and client 2024-12-20 12:14:50 -06:00
Ravi Khadiwala a3e106fe04 Fix flaky websocketTimeoutNoHeader test 2024-12-18 19:07:50 -06:00
Ameya Lokare 26025e5abd Rename preRegistrationExperiments to e164Experiments 2024-12-18 18:49:34 -06:00
Jon Chambers 4839a5ba70 Enable/disable AWS SDK metrics via dynamic configuration 2024-12-18 18:49:05 -06:00
ravi-signal 68f27be7cd
Add opt-in timeouts to provisioning websocket 2024-12-18 18:45:53 -06:00
Jon Chambers a96c0ec7a3 Enqueue async operations from a dedicated thread 2024-12-17 12:54:41 -05:00
Ravi Khadiwala 33c0a27b85 Add current entitlements to whoami response 2024-12-12 12:56:44 -06:00
Ravi Khadiwala e1e94a33e2 Stop writing non tag-set field 2024-12-12 12:36:37 -06:00
Ravi Khadiwala 18c9b177f3 Relax issuing constraints in IssuedReceiptManager 2024-12-10 11:47:44 -06:00
Ravi Khadiwala 1970741049 Remove IssuedReceiptMigrationCommand 2024-12-10 11:46:17 -06:00
Ravi Khadiwala 14427523ae Add a tag->tag-set migration command 2024-12-06 14:54:45 -06:00
Ravi Khadiwala 236b0496d3 Write a set field in IssuedReceiptsManager 2024-12-06 14:53:10 -06:00
Jon Chambers 20685b6d69 Clear "canceled at" timestamp when setting a new subscrition ID 2024-12-06 15:51:57 -05:00
Jon Chambers 4988b4e0f5
Refresh accounts before returning device lists 2024-12-05 14:35:18 -05:00
Katherine 651e444875
Delete from SVR3 in account deletion flow 2024-12-05 11:36:33 -05:00
Ravi Khadiwala 2c163352c3 Add DeviceCheck API for iOS Testflight backup enablement 2024-12-03 14:05:02 -06:00
Jon Chambers fb6c4eca34 Retire `RemoveE164RecentlyDeletedAccountsCommand` 2024-12-02 11:17:03 -05:00
Jon Chambers c70dd119d3
Remove `AbstractDynamoDbStore` as a base class from `Accounts` 2024-12-02 10:57:45 -05:00
Katherine 9e312cbdfa
Normalize Benin phone numbers to the new format before sending to registration service 2024-12-02 10:57:27 -05:00
Jon Chambers d08bc4c413 Write "recently deleted account" rows exclusively by PNI 2024-11-27 12:29:42 -05:00
Jon Chambers 916314233f Retire `DeleteE164RegistrationRecoveryPasswordsCommand` 2024-11-27 12:12:58 -05:00
Jonathan Klabunde Tomer 557a6ecd4f
Read deleted accounts by PNI rather than e164 2024-11-26 16:35:40 -08:00
Ameya Lokare 0e04cac800 Crawler to backfill PNI records of alternate forms of existing phone numbers 2024-11-26 18:46:08 -05:00
Jon Chambers 1db9258d39 Add a command to remove e164-associated registration recovery passwords 2024-11-26 18:38:27 -05:00
Jon Chambers 2803c2acdb Write registration recovery passwords exclusively by PNI 2024-11-26 18:31:36 -05:00
Ameya Lokare d865cec2a4 Insert alternate forms of phone numbers -> PNI atomically 2024-11-26 17:39:53 -05:00
Jon Chambers 5b9f8177f2 Read registration recovery passwords exclusively by PNI 2024-11-26 17:31:08 -05:00
Jon Chambers 6967e4e54b Retire `MigrateRegistrationRecoveryPasswordsCommand` 2024-11-26 17:23:49 -05:00
Jon Chambers 96fb0ac3ae Add a utility method for testing if a number begins with a decimal prefix 2024-11-26 14:13:06 -06:00
Jon Chambers 7201938793 Add a utility method for getting alternate forms of (Benin) phone numbers 2024-11-26 14:13:06 -06:00
Jon Chambers ff4e2bdfb7 Refresh registration recovery password expirations before retrying an insertion 2024-11-25 16:45:28 -05:00
Jonathan Klabunde Tomer ffed19d198
Create deleted-accounts records keyed by both e164 and PNI 2024-11-25 12:42:16 -08:00
ravi-signal 49d6a5e32d
Add error reporting to `/v1/devices/transfer_archive` 2024-11-25 12:41:51 -08:00
Jon Chambers 3ba7ba4f92 Remove abstract base class from `RegistrationRecoveryPasswords` 2024-11-25 15:27:30 -05:00
Jon Chambers 43ffc996db Use a segmented scan on a separate scheduler for registration recovery passwords 2024-11-25 14:18:56 -05:00
Jon Chambers 717fb57a14 Add a command to migrate registration recovery passwords to PNI-associated records 2024-11-22 18:18:40 -05:00
Jon Chambers af1d21c225 Add methods for migrating E164-mapped registration recovery passwords to PNI-mapped records 2024-11-22 18:18:40 -05:00
Jon Chambers 3c8b2a82a3 Store registration recovery passwords by both E164 and PNI 2024-11-22 18:18:40 -05:00
Chris Eager 739ed56b4c Don’t use an existing record's number in `AccountsManager` re-registration handling 2024-11-22 17:10:08 -06:00
Chris Eager 9a19ef82fd Use pni in DynamoDB account put condition expression 2024-11-22 17:10:08 -06:00
Chris Eager e4a2af67b1 Update AccountsManager#changeNumber validation to check for PNI equality 2024-11-22 17:06:42 -06:00
Chris Eager cba56f3263 Add `@E164` to `ChangeNumberRequest` 2024-11-22 17:05:07 -06:00
Chris Eager 1c3cf39b8a Remove `String e164` from `AccountLockManager` 2024-11-22 17:04:32 -06:00
Jon Chambers 8a63682c16 Drop the unused `PhoneNumberIdentifiers#getPhoneNumber` method 2024-11-22 15:26:44 -05:00
Jon Chambers 13a8c6256d Delete registration recovery passwords by both phone number and PNI 2024-11-22 15:26:44 -05:00
Jon Chambers 8c9cc4cce5 Make `PhoneNumberIdentifiers` operations asynchronous 2024-11-22 15:26:44 -05:00
Jon Chambers 637e424506 Remove an unused "get number prefix" method 2024-11-22 15:10:00 -05:00
Chris Eager eb55b80bdc Add PNI support to AccountLockManager 2024-11-22 14:09:52 -06:00
Chris Eager ea75c39b58 Use MRM shared data views 2024-11-19 15:31:31 -06:00
Jon Chambers 66783c9381 Include new/previous push token types as dimensions on "account created" counter 2024-11-15 15:28:46 -05:00
Chris Eager ecbb2f1399 Updates for org.apache.commons.lang3.RandomStringUtils deprecations 2024-11-15 14:11:41 -06:00
Chris Eager ee5df0e11c Always store and fetch shared MRM data 2024-11-12 10:57:30 -06:00
Jon Chambers 2f890f7bb3 Send push notifications if we receive a "new message" notification, but no listener is present 2024-11-12 09:34:59 -05:00
Jon Chambers 3fefb24d71 Retire the legacy disconnection request system 2024-11-12 09:09:05 -05:00
Chris Eager d6f890c7b9
Use AmazonDynamoDBLocal instead of DynamoDBProxyServer 2024-11-11 16:50:47 -06:00
Chris Eager dd4bc23e4f
Update to Dropwizard 4 2024-11-11 16:32:24 -06:00
Jon Chambers 09fd5e8819 Shift authority for disconnection requests to `DisconnectionRequestManager` 2024-11-11 16:27:38 -05:00
Ravi Khadiwala 81f3ba17c7 Wait for messages in waitForNewLinkedDevice 2024-11-11 14:46:48 -06:00