Commit Graph

48 Commits (b860dce7f95bcdb5a0f0671732060a5a079f30e5)

Author SHA1 Message Date
Michael Kirk b860dce7f9 Swift protos for Envelope 7 years ago
Matthew Chen bebb8ecfd1 Cycle the socket after linking a new device. 7 years ago
Michael Kirk d591fb7f2c Fix some compiler warnings 7 years ago
Matthew Chen 16a1dcfb77 Respond to CR. 7 years ago
Matthew Chen ac6f78a5fc Tweak message cells. 7 years ago
Matthew Chen a7d712d1b2 Respond to CR. 7 years ago
Matthew Chen 20b1a2606e Outage detection. 7 years ago
Matthew Chen fc4763673f Improve de-registration checks in socket manager. 7 years ago
Matthew Chen 985f735f1a Track and persist "is de-registered" state. 7 years ago
Matthew Chen d5c738af2f Clean up websocket logging. 7 years ago
Matthew Chen b59140cb3f Revert some of the socket sending logging. 7 years ago
Matthew Chen 3fe63726e0 Improve logging around socket messages. 7 years ago
Matthew Chen e7ca98fcfe Improve logging around socket messages. 7 years ago
Matthew Chen 61ec865b6d Respond to CR. 7 years ago
Matthew Chen 4342b04bd3 Include response data in 'request over websocket' failures. 7 years ago
Matthew Chen 4d498563e7 Unify the socket manager's 'can send requests' logic. 7 years ago
Michael Kirk 966b1ac84b Treat `id` as reserved word, use consistent setter style
// FREEBIE
7 years ago
Matthew Chen d4fe671261 Respond to CR. 7 years ago
Matthew Chen 0a41684374 Respond to CR. 7 years ago
Matthew Chen dc36ae134d Respond to CR. 7 years ago
Matthew Chen 1a441cc40c Respond to CR. 7 years ago
Matthew Chen b50561a5b6 Use websocket for sends. 7 years ago
Matthew Chen 5ff984ab16 Use websocket for sends. 7 years ago
Matthew Chen fa36f2fb10 Use websocket for sends. 7 years ago
Matthew Chen 8a76e778b5 Use websocket for sends. 7 years ago
Matthew Chen 5f1682deab Use websocket for sends. 7 years ago
Matthew Chen c5981b164b Notify users of corrupt messages. 7 years ago
Matthew Chen 5ce39337ed Handle malformed protos. 7 years ago
Matthew Chen 1a0f4bf928 Improve logging around network activity. 7 years ago
Matthew Chen 6f28c75257 Fix glitch in batch processing of incoming messages. 7 years ago
Matthew Chen b21f793756 Register all database views asynchronously. 7 years ago
Matthew Chen 9ac2383a2c Retain changes from session database branch. 7 years ago
Matthew Chen 9a990b58e8 Respond to CR. 8 years ago
Matthew Chen f9ce34f553 Improve background task logic. 8 years ago
Matthew Chen 5adf98788d Use background task during message processing. 8 years ago
Matthew Chen 9da165b846 Continue conversion of app setup. 8 years ago
Matthew Chen e712e8bfc4 Use AppContext to resolve share extension FIXMEs. 8 years ago
Michael Kirk 7894a58769 FIXME: Changes to get share extension compiling
This was a slash and burn approach, and breaks existing functionality.
We need to address all of these before merging.

// FREEBIE
8 years ago
Matthew Chen 6e840ff956 Fix build warnings from XCode 9. 8 years ago
Michael Kirk 295646e5fa Rebase cleanup
// FREEBIE
8 years ago
Michael Kirk 0706edf42a Generate new registrationId on re-register
In order for others to know they should start a new session with us, we
need to change our registration id.

To achieve this, I consolidated all the Account related attributes on
TSAccountManager - luckily they were already in the proper collection, I
just moved the API to hang on the AccountManager instead of a TSStorage
category extension.

Also:

@synchronize access to `registrationId`

// FREEBIE
8 years ago
Matthew Chen e3868df69a Move write of incoming messages off main thread.
// FREEBIE
8 years ago
Michael Kirk df15c904bc Rework push registration
== Account Registration ==

Not complete until push tokens are uploaded

== Remote Notifications Registration ==

Extracted from PushManager

- wait for notification-settings registration to complete before
  requesting push tokens, otherwise it's possible token requests will
  be ignored.

- Less state required for push notification callbacks, specifically, we
  no longer need to ensure we've created a promise before the
  registration delegate methods get called.

- no more TOCFuture in Signal-iOS (still in SSK for now). It's not in
  cases of inexplicable behavior - one a recently, push notification
  premature free, in redphone, and more popular use, and I've seen two
  futures inexplicably being nil.  Instead, let's consolidate around
  PromiseKit for popularly used, maintained, strongly-typed futures.

- separate logic for registering for vanilla push/voip notifications
  (few dependencies) from responding to UILocalNotifications (lots of
  dependencies). Ultimately I'd like to consolidate the remaining
  UILocalNotifications logic with the existing NotificationsManager

== Misc ==

more debug logging
more uniform logging
remove stale logic around newly registered user

// FREEBIE
8 years ago
Matthew Chen 35a2470cb7 Post notifications asynchronously.
// FREEBIE
8 years ago
Matthew Chen b28c4b74b2 Pull out TSMessageDecrypter class.
// FREEBIE
8 years ago
Michael Kirk 8a4712bf4c Only access localNumber on AccountManager and cache it
// FREEBIE
8 years ago
Michael Kirk 4d8429186d Store undecrypted envelopes before doing any processing.
This lets us clear the server side queue immediately, and paves the way
for retry, give up logic.

// FREEBIE
8 years ago
Michael Kirk ccb4a88742 Import SSK (and history) into Signal-iOS
git remote add ssk ../SignalServiceKit
git remote update
git merge -s ours --allow-unrelated-histories --no-commit ssk/master
git read-tree --prefix=SignalServiceKit -u ssk/master
git commit
8 years ago