Jordan Rose
b6e3747f51
OWSChatConnection: groundwork for high-level libsignal request APIs
2025-09-08 18:24:33 -07:00
Max Radermacher
0ee384908e
NO MORE REST
2025-08-27 18:09:16 -05:00
Max Radermacher
b48560b6d0
Use the web socket immediately after registration
2025-08-25 16:32:07 -05:00
Max Radermacher
bd3363ce93
Always use web sockets in the notification service
2025-08-21 13:03:25 -05:00
Max Radermacher
25817d867a
Fail requests quickly after being deregistered
2025-08-20 17:40:42 -05:00
Max Radermacher
50912e4c6b
Remove redundant background tasks
2025-08-18 13:15:18 -05:00
Max Radermacher
58bf33d0de
Remove share extension web socket remote config
2025-08-18 12:33:00 -05:00
Max Radermacher
e6e2d03423
Treat SignalError.chatServiceInactive as expected
2025-08-18 12:32:17 -05:00
Max Radermacher
86e9ba1be6
Always use the web socket to test the proxy
2025-08-13 11:30:27 -05:00
Max Radermacher
f9415b9fec
Simplify connection state concurrency guarantees
2025-08-08 16:01:24 -05:00
Max Radermacher
ba5ff49c10
Clean up some auth/unauth socket distinctions
2025-08-08 15:31:00 -05:00
Max Radermacher
8987991dc9
Relocate message processor enqueueing queue
2025-07-31 11:54:31 -05:00
Max Radermacher
34ecb9a5a3
Throw a specific error when not registered
2025-07-29 16:02:49 -05:00
Max Radermacher
53f4db4f27
Throw a specific error when the app is expired
2025-07-29 09:33:00 -05:00
Max Radermacher
1482ef24f0
Remove shouldReconnectIfConnectedElsewhere
2025-07-25 12:44:10 -05:00
Max Radermacher
7689725c37
Fix shouldConnect/shouldDisconnect checks
2025-07-23 13:24:26 -05:00
Max Radermacher
05eecf1db2
Add kill switch for the connection lock
2025-07-23 13:01:01 -05:00
Max Radermacher
e43a9bd8cc
Add remote configs for extension web sockets
2025-07-22 16:55:06 -05:00
Max Radermacher
06eda4b70b
Retry message sends when opening a socket
2025-07-22 16:48:02 -05:00
Max Radermacher
48af5c8c35
Use the web socket in the share extension
2025-07-22 08:48:14 -05:00
Max Radermacher
94b697d8ae
Don’t connect concurrently in multiple processes
2025-07-21 13:08:48 -05:00
Max Radermacher
22db39b6c3
Use the web socket when deleting your account
2025-07-18 16:23:46 -05:00
kate-signal
33a8457599
Megaphone for inactive primary devices
2025-07-16 13:10:05 -07:00
Jordan Rose
ba4c097065
OWSChatConnection: Set Accept-Language at the connection level
...
(as well as User-Agent, already being set)
...allowing us to omit both headers from the request level.
2025-07-03 12:04:14 -07:00
Max Radermacher
c16fa016bd
Require certain generic parameters to be Sendable
2025-07-02 14:33:49 -05:00
Max Radermacher
c957cf3c01
Show “Sending…” while waiting for socket to open
2025-06-26 12:53:10 -05:00
Max Radermacher
8eff4b74d2
Add DispatchQueue-backed Monitor functions
2025-06-26 12:53:10 -05:00
Max Radermacher
851776fdaf
Check shouldSocketBeOpen when taking over from NSE
2025-06-24 16:38:14 -05:00
Max Radermacher
f2c5d99ee5
Adjust socket reconnect delays
2025-06-20 11:08:48 -05:00
Max Radermacher
34bd529af5
Add Monitor primitive helper methods
2025-06-13 20:09:23 -05:00
Max Radermacher
fcfadc6d10
Add cancellation support for web socket requests
2025-06-13 15:25:20 -05:00
Max Radermacher
6019ef543d
Use web sockets in the notification service
2025-06-05 15:00:41 -05:00
Max Radermacher
a2a49ebd5d
Allow both fetch mechanisms in a single process
2025-06-05 14:59:53 -05:00
Max Radermacher
9fb39dfa8f
Don’t reconnect if elsewhere’d in the background
2025-06-05 14:58:52 -05:00
Max Radermacher
8fddcee17b
Stop processing when the socket closes
2025-06-03 16:50:22 -05:00
Max Radermacher
1be1234460
Wait for disconnect before suspending
2025-06-03 13:48:27 -05:00
Max Radermacher
0b2fe0b8dc
Invert web socket state management paradigm
2025-06-03 00:50:57 -05:00
Max Radermacher
e52b87f3c7
Schedule reconnect if we fail to connect
2025-06-03 00:32:49 -05:00
Max Radermacher
46bbcc4f05
Update connection state after re-warming caches
2025-06-02 15:25:16 -05:00
Max Radermacher
b0c183f9f4
De-protocolize/clean up AppExpiry
2025-06-02 15:24:04 -05:00
Max Radermacher
9952d0c64e
Asyncify AppExpiry (née remove TestScheduler use)
2025-05-30 14:33:15 -05:00
Max Radermacher
9e3f141b31
Rename method to be consistent
2025-05-30 02:34:36 -05:00
Max Radermacher
0a75ea88d5
Asyncify more OWSChatConnection logic
2025-05-30 02:29:16 -05:00
Max Radermacher
4a7c2265c3
Adjust connection keep-alives/reconnects/tokens
2025-05-30 02:25:51 -05:00
Max Radermacher
5c64d1fa0a
Remove OWSChatConnectionUsingSSKWebSocket
2025-05-30 02:13:48 -05:00
Max Radermacher
9ff792ab21
Rip out ACKing optimization that may cause stalls
2025-04-22 18:23:12 -05:00
Max Radermacher
a819bb4dac
Convert TSRequest to a struct
2025-04-10 12:49:35 -05:00
Jordan Rose
abe5f8709e
OWSChatConnection: Don't race connection setup with sending requests
...
The connection isn't ready to use until start(listener:) is called,
but that was happening *after* the connecting Task completed. Now the
Task waits to sync with the serial queue before letting any sends
through.
2025-04-09 13:30:27 -07:00
Max Radermacher
f15537472d
Use clampedNanoseconds where it’s useful
2025-04-08 15:30:36 -05:00
Jordan Rose
cd5881a2bf
OWSChatConnection: Avoid repeatedly cycling the libsignal socket
...
Previously, if three requests timed out at once, the libsignal socket
would be cycled three times. Now that'll only happen once.
2025-04-08 09:42:56 -07:00