Commit Graph

104 Commits (949b043867702c5bf471afeeb7552a25c0e401fb)

Author SHA1 Message Date
Morgan Pretty 1c575e520d Merge remote-tracking branch 'upstream/voice-calls-2' into feature/session-id-blinding-part-2
# Conflicts:
#	Podfile.lock
#	Session.xcodeproj/project.pbxproj
#	Session/Conversations/ConversationVC+Interaction.swift
#	Session/Conversations/Views & Modals/JoinOpenGroupModal.swift
#	Session/Home/HomeVC.swift
#	Session/Open Groups/JoinOpenGroupVC.swift
#	Session/Utilities/BackgroundPoller.swift
#	SessionMessagingKit/Jobs/AttachmentUploadJob.swift
#	SessionMessagingKit/Open Groups/OpenGroupAPIV2.swift
#	SessionMessagingKit/Sending & Receiving/MessageReceiver+Handling.swift
#	SessionNotificationServiceExtension/NotificationServiceExtension.swift
2 years ago
ryanzhao 7d3df3a016 Merge branch 'bug-fixes-1.11.25' into voice-calls-2 2 years ago
Ryan Zhao 43ca54c0a0 refactor to use Atomic wrapper 2 years ago
Ryan Zhao 34355c74ee add some comments 2 years ago
Morgan Pretty 5710fe18fb Reverted a change to the type for the serverId of a TSAttachment (change didn't match the protobuf) 2 years ago
Morgan Pretty 81f563229f Renamed FileServerAPIV2 to FileServerAPI
Updated the direct file upload/download to use the non-base64 approaches as well
Updated the attachment 'serverId' value to be a string instead of a UInt64 (future-proofing)
Updated the OnionRequest V4 response handling to avoid converting the "response body" part to a string and processing that, instead just slice the byte array (ie. stopped it from being broken from multiple conversions)
Removed the base64-based file upload/download endpoints (no use including them when they are inefficient and we don't want to use them)
2 years ago
Morgan Pretty 1c474955de File upload working, further code cleanup
Got the updated file upload working
Removed the legacy 'room' header
Consolidated a number of types between SOGS, FileServer and general requests
Updated the OnionRequestAPI to deal with a Data payload (rather than encoding it to a string and then back to data)
2 years ago
Morgan Pretty dbead5e3c8 Got the '/inbox' APIs and encryption/decryption/validation working
Added a few types to make the code more readable
Added the inbox request to the polling
Added a couple of properties to the TSContactThread to indicate the originating open group to support SOGS DMs
Added code to store the latest message id for an open group inbox
Added a bunch of documentation from the API docs into the OpenGroupAPI (and associated models)
Updated the OpenGroupAPI to match the latest docs
Fixed the incorrect structure of the SendDirectMessageRequest
Fixed an incorrect inbox endpoint path
Tweaked the batch response handling so it wouldn't fail to parse all responses if a single one failed
Renamed IdPrefix to SessionId.Prefix and cleaned up the type to be more readable & self-documenting
2 years ago
Morgan Pretty ef09d4d5aa Additional encryption work on id blinding
Got the updated blinding logic working (at least when authenticating a request - still need to deal with message signing and verification)
Storing the server capabilities in the database now so we can correctly blind requests based on them
Renamed the remaining 'v2' functions and classes to just be 'OpenGroup' since there isn't a 'V2' anymore
Cleaned up a few TODOs and functions
2 years ago
Morgan Pretty 63e6cdd9ec Renamed OpenGroupAPIV2 to OpenGroupAPI
Added the inbox endpoints
2 years ago
Morgan Pretty eb927c36a9 Started cleaning up some of the SOGS and Onion Requests structure
Cleaned up the OnionRequestAPI so we don't need the LegacyOnionRequestAPI
Added requests for the user endpoints
Added deprecated flags to the legacy endpoints and functions
Added some logic to start handling the new poll (batch) response
Started adding unit tests for the OpenGroupAPI functions
2 years ago
Morgan Pretty c90f346d6a Further SOGS V4 integration work
Added in the v4 onion requests logic
Added in the new pin/unpin APIs
Split up additional legacy methods to try and simplify the refactoring
Added a number of TODOs around usage of legacy request methods
2 years ago
Morgan Pretty 4f3900771e More work on getting SOGS V4 integrated
Updated the MessageSendJob to support V4 messages (V2 messages will be upgraded to V4 if they get re-encoded)
Renamed the Message+Destination from 'openGroup' & 'openGroupV2' to 'legacyOpenGroup' and 'openGroup'
Started plugging in more of the V4 APIs
Renamed a number of the V2 APIs to start with 'legacy'
2 years ago
Morgan Pretty 2284375fc0 Started work on updated SOGS support
Split the OpenGroupAPIV2 into separate files
Started working on the new auth and blinded-id approaches (new auth working with un-blinded id suggesting blinded-id code is incorrect)
Updated the SOGS request/response types to use Codable
Updated the SOGS Request type to use enums instead of strings for keys (to reduce likelihood of typos breaking things)
Updated SessionMessagingKit to use Codable and JSONEncoder/JSONDecoder instead of the legacy JSONSerialization
Cleaned up some naming conventions in the SessionMessagingKit (calling a URLRequest body 'parameters' is very confusing...)
Removed the custom TSRequest class (just using standard URLRequest everywhere instead)
Added a number of extension functions to enable some more functional-coding styles
Added extensions to Sodium methods to allow scalar multiplication and the ability to hash providing a salt and a personalisation value (both needed for new SOGS auth)
Fixed an issue where the legacy auth for SOGS could crash due to threading issues (multiple threads accessing the same variable)
Fixed an issue where if you were in two rooms in a single SOGS and deleted one of them, the other room would stop getting updates as the server public key was getting removed
2 years ago
ryanzhao cebda588e8 fix remove job id concurrent issue 3 years ago
ryanzhao e045808070 Revert "WIP: download attachments in NSE"
This reverts commit 6fd5bbeab1.
3 years ago
ryanzhao 6fd5bbeab1 WIP: download attachments in NSE 3 years ago
ryanzhao 70e38e11d8 clean attachment download job 3 years ago
ryanzhao b7289e72a3 add accessibility to attachment buttons 3 years ago
Ryan Zhao 6e45aed71b Merge branch 'dev' of https://github.com/oxen-io/session-ios into unsend-message 3 years ago
Niels Andriesse 7f0b87a2b2 Avoid unnecessary conversation screen updates 3 years ago
Ryan Zhao 050a2ec534 store server hash value for visible messages 3 years ago
ryanzhao 69dea75486 potentially fix the conversation stuck at unread 3 years ago
Niels Andriesse e84fc1aa04 Include destination info in error messages 3 years ago
Niels Andriesse e796f6bacd Don't retry message send jobs when rate limited 3 years ago
Niels Andriesse 2928a8f66c Don't unnecessarily retry downloads for expired attachments 3 years ago
Niels Andriesse f0295fb469 Fix crash 3 years ago
nielsandriesse 86c2c39425 Fix background polling crash 3 years ago
nielsandriesse e24fca7b37 Fix job duplication bug
This could cause attachments not to download on the receiving side, and potentially also cause duplicate push notifications to be sent
3 years ago
Niels Andriesse 3fda8daec9 Merge branch 'dev' into cleanup 3 years ago
Niels Andriesse 5e1a33c32e Switch to dedicated server 3 years ago
Niels Andriesse bd04775cbf Implement open group invitations UI 3 years ago
Niels Andriesse e3671291c5 Merge branch 'dev' into cleanup 3 years ago
Niels Andriesse f893acfe3b Make attachment padding consistent cross-platform 3 years ago
Niels Andriesse d742fc1548 Delete V1 OGS & file server 3 years ago
nielsandriesse 95d3311fac Debug 3 years ago
Niels Andriesse e9df213bfe Put feature flags in one place 3 years ago
Niels Andriesse f7613e09bf Convert remaining file server usages 3 years ago
Niels Andriesse 0ceb434215 Update AttachmentUploadJob for the V2 file server 3 years ago
Niels Andriesse 6b97f86c32 Update AttachmentDownloadJob for the V2 file server 3 years ago
Niels Andriesse 49b989f529 Fix job ID uniqueness 3 years ago
Niels Andriesse e71eb45642 Fix success handler not being called 3 years ago
Niels Andriesse 209882fb3e Correctly handle multiple untrusted attachments 3 years ago
Niels Andriesse aa68e91a4d Fix attachment download resumption 3 years ago
nielsandriesse a360fa7721 Merge branch 'dev' into deferred-attachment-downloads 3 years ago
Niels Andriesse 46fb792c96 Fix file downloading 3 years ago
Niels Andriesse e50f4da63e Update AttachmentDownloadJob & AttachmentUploadJob for V2 open groups 3 years ago
nielsandriesse 09b4b7d388 Update MessageSender for V2 open groups 3 years ago
Niels Andriesse 960e500acd Don't auto-download attachments from untrusted contacts 3 years ago
Niels Andriesse 73bbaf9ce7 Potentially fix attachment issue 3 years ago