Commit graph

2403 commits

Author SHA1 Message Date
Mikunj be1def6dfc Merge branch 'dev' into server-deletion 2019-08-29 15:14:37 +10:00
Mikunj 679b2f7742 Added mod polling 2019-08-29 15:08:34 +10:00
Niels Andriesse d1d928ee89 Refactor LokiLongPoller 2019-08-29 15:04:02 +10:00
Mikunj bf09a2014b Hookup api. 2019-08-29 11:34:59 +10:00
Niels Andriesse d4b8dd0875 Clean 2019-08-28 16:49:47 +10:00
Mikunj 7acfa40915 Don't allow input on rss groups. 2019-08-28 16:45:14 +10:00
Niels Andriesse 9bee25f6c6 Clean 2019-08-28 16:38:20 +10:00
Mikunj e68de54a87 Show the delete action in public chats. 2019-08-28 15:47:21 +10:00
Mikunj 64c2e36c8a Handle messages sent by us in the public chat. 2019-08-28 13:27:11 +10:00
Mikunj 2392fed21a Set the server id on public chat messages. 2019-08-28 11:28:42 +10:00
Mikunj 17596d8bd3 Added PublicChatInfo field to DataMessage. 2019-08-28 10:51:37 +10:00
Niels Andriesse 9854c4f05d Clean 2019-08-28 10:29:14 +10:00
Niels Andriesse d8925d7750 Implement LokiGroupChatPoller.pollForDeletedMessages() 2019-08-28 10:04:15 +10:00
Niels Andriesse e21cced9bb Refactor 2019-08-27 16:48:53 +10:00
Niels Andriesse d5e56d9c9f Clean 2019-08-27 15:25:37 +10:00
Niels Andriesse 738d4f05f5 Create LokiRSSFeedParser 2019-08-27 14:27:10 +10:00
Niels Andriesse 915159db7d Disable deletion polling for RSS feeds 2019-08-27 13:50:31 +10:00
Niels Andriesse 6056575cdf Clean 2019-08-27 12:35:31 +10:00
Mikunj 4c21cecc66 Migrate from Dictionary to LokiGroupChat. 2019-08-27 12:26:02 +10:00
Niels Andriesse 88ad68838a Add LokiGroupChat 2019-08-27 11:58:12 +10:00
Niels Andriesse 7d3d0b31d9 Add LokiGroupChatAPI.getDeletedMessageIDs(...) & private server support 2019-08-27 11:05:42 +10:00
Niels Andriesse 7ef47968e3 Handle group chat token expiration 2019-08-23 16:25:12 +10:00
Niels Andriesse d32b45f792 Clean 2019-08-23 16:14:19 +10:00
Niels Andriesse d95df736d5 Merge branch 'dev' into group-chat 2019-08-23 15:44:46 +10:00
Mikunj d7ada75660 Fix date not being parsed properly.
Fix message indicators on groups.
Fix receipts being sent in groups.
2019-08-23 10:27:22 +10:00
Mikunj 6463187c0d Disable read receipts for groups. 2019-08-22 16:00:35 +10:00
Mikunj 39177fe448 Ensure we have a valid token length.
Disable typing indicator messages on group threads.
2019-08-22 15:54:38 +10:00
Mikunj ffd95f94d0 Decode token as utf8 string. 2019-08-22 15:33:19 +10:00
Mikunj e6e1ce7846 Added group chat authentication. 2019-08-22 13:14:35 +10:00
Mikunj 130ed6c371 Added function for submitting tokens. 2019-08-22 12:34:24 +10:00
Mikunj c5b9d8c7e2 Added DiffieHellman class 2019-08-22 11:09:51 +10:00
Niels Andriesse a022a699fb Set display name when sending a group message 2019-08-22 10:12:48 +10:00
Niels Andriesse 48706d233f Implement group message sending & receiving 2019-08-21 16:16:40 +10:00
Niels Andriesse 6c14ce9c97 Improve onboarding UI 2019-08-21 10:31:32 +10:00
Niels Andriesse 0130950050 Add group chat authorization endpoint 2019-08-20 15:54:12 +10:00
Niels Andriesse 9f69d918a8 Merge branch 'dev' into group-chat 2019-08-20 15:36:25 +10:00
Niels Andriesse a234019cb9 Fix conversion to JSON, use ISO8601DateFormatter & clean 2019-08-20 15:34:59 +10:00
Niels Andriesse ca822480b1 Update for seed changes 2019-08-20 13:54:37 +10:00
Mikunj d72e7da7ca Send message to server if the recipient is public channel 2019-08-19 13:46:03 +10:00
Mikunj c8a97f6668 Added group chat api. 2019-08-19 13:18:32 +10:00
Niels Andriesse 99ab556bf8 Don't retry proof of work calculation 2019-08-02 09:28:04 +10:00
Niels Andriesse 353186919e Increase maximum retry count 2019-08-02 09:23:03 +10:00
Niels Andriesse 92fb056688 Clean 2019-08-01 15:19:42 +10:00
Niels Andriesse 8fc02e2759 Use get_n_service_nodes 2019-08-01 15:11:14 +10:00
Niels Andriesse 9088a1f87d Fix HTTPS issue 2019-08-01 15:02:01 +10:00
Niels Andriesse e4abcd9081 Switch mainnet seed nodes 2019-08-01 14:34:10 +10:00
Niels Andriesse a9b7663320 Add clear all data option to settings 2019-08-01 13:59:05 +10:00
Mikunj 03e9307933 Send device id in pre key bundle. 2019-07-26 17:26:16 +10:00
Mikunj 3d55bb2820 Send empty data messages in LKEphemeralMessage. 2019-07-26 11:28:46 +10:00
Mikunj 108452cf56 Disable receipt sending if we're not friends. 2019-07-25 14:49:07 +10:00
gamabuntan bb65c87906
Merge pull request #33 from loki-project/friend-request-changes
Friend request changes
2019-07-25 14:41:46 +10:00
Niels Andriesse 2d4a7551f7 Show empty state message on home screen when needed 2019-07-25 13:41:13 +10:00
Niels Andriesse c0ff4d40b3 Handle 400, 500 & 503 status codes 2019-07-25 13:13:01 +10:00
Niels Andriesse 239d13c33e Make use of all seed nodes 2019-07-25 13:09:22 +10:00
Mikunj 162c9db6fe Added TODO reminder. 2019-07-24 12:21:30 +10:00
Mikunj 9ec9b0e27f Don't set content data in LKEphemeralMessage. 2019-07-24 09:35:35 +10:00
Mikunj d1e02848e6 Update friend request handling. 2019-07-24 09:20:33 +10:00
Mikunj 40edf1992a Verify friend request stuff before decrypting 2019-07-23 16:00:27 +10:00
Mikunj 99cfe7ca24 Handle nil state on session reset. 2019-07-22 11:07:38 +10:00
Niels Andriesse de346cb645 Fix pre key bundle usage 2019-06-27 11:04:56 +10:00
Niels Andriesse 8f78ea0dea Update for changed storage server API 2019-06-26 15:09:03 +10:00
Niels Andriesse 217a94b94f Update privacy policy URL 2019-06-26 10:34:53 +10:00
Niels Andriesse 234a2827b3 Fix release issues 2019-06-25 16:17:05 +10:00
Niels Andriesse 85203bac08 Prepare for alpha release 2019-06-25 15:29:38 +10:00
Niels Andriesse fead92f2e3 Fix failure count maintenance bug 2019-06-19 13:11:55 +10:00
Niels Andriesse 517b1b62e6 Handle rude seed node behavior 2019-06-18 16:01:53 +10:00
Niels Andriesse bb4f66099b Clean 2019-06-18 14:06:06 +10:00
Niels Andriesse a631aa7da2 Fix swarm parsing error handling 2019-06-18 13:33:41 +10:00
Niels Andriesse 2d0dd46f99 Fix typo 2019-06-18 11:27:19 +10:00
Niels Andriesse 58e902429e Tweak connection settings 2019-06-17 11:52:57 +10:00
Niels Andriesse bc112a7c90 Propagate request timeout interval through to request serializer 2019-06-17 10:45:09 +10:00
Niels Andriesse dfc4042987 Clean 2019-06-14 11:43:11 +10:00
Niels Andriesse 804a12d1bd Reduce initial PoW difficulty 2019-06-14 11:41:25 +10:00
Niels Andriesse 16a284ca02 Handle insufficient PoW error 2019-06-14 11:28:04 +10:00
Niels Andriesse 5b26601335 Also update the random snode pool if a snode failed repeatedly 2019-06-14 10:32:01 +10:00
Niels Andriesse f32bb85ddc Remove snodes from a swarm if they failed repeatedly 2019-06-14 10:21:32 +10:00
Niels Andriesse 02dd81516b Fix logging 2019-06-14 10:04:14 +10:00
Niels Andriesse 2cf4385fb6 Use PoW difficulty returned by snodes 2019-06-14 10:04:07 +10:00
Niels Andriesse 2111e73675 Debug clearnet changes 2019-06-13 16:05:06 +10:00
Niels Andriesse 936287683f Override Signal security policy 2019-06-13 14:35:08 +10:00
Niels Andriesse 39c497f13d Clean up logging 2019-06-13 14:34:19 +10:00
Niels Andriesse c040ea1e5e Clean up UI 2019-06-13 11:06:05 +10:00
Niels Andriesse 08812964f1 Update swarm parsing for new JSON layout 2019-06-12 16:44:22 +10:00
Niels Andriesse d23121f5dd Use clearnet seed nodes 2019-06-12 16:01:25 +10:00
Niels Andriesse feb1408836 Clean 2019-06-12 14:54:40 +10:00
Niels Andriesse 820b0829bb Merge LokiP2PManager & LokiP2PMessageHandler 2019-06-12 14:50:36 +10:00
Niels Andriesse 26f0bd23a2 Unnest LokiAPI.Message 2019-06-12 14:44:28 +10:00
Niels Andriesse df7ca74b70 Simplify LokiAPI changes 2019-06-12 14:23:01 +10:00
Mikunj 39b30ab8c9 Merge commit '5a7bba39ab59b575167ee07e28ad70a501576604' into long-polling 2019-06-12 12:46:40 +10:00
Mikunj ce17523b4c Minor refactoring 2019-06-12 12:36:34 +10:00
Niels Andriesse 6cbacdcf52 Keep message sending parameters in one place 2019-06-12 12:36:27 +10:00
Mikunj fe034be749 Merge commit '772abc68aa9d5d1da519dc33455de89d3c1de78c' into long-polling 2019-06-12 12:07:54 +10:00
Mikunj 8c839090e1 Converted getMessage function to more granular functions.
This is because we only want to process messages from long polling if it hasn't been stopped.
2019-06-12 12:00:40 +10:00
Niels Andriesse 772abc68aa Ditch TargetWrapper 2019-06-12 11:55:01 +10:00
Mikunj 04bdaff3c6 Added long polling. 2019-06-12 11:12:39 +10:00
Niels Andriesse d0bed4b129 Clean 2019-05-31 11:08:27 +10:00
Niels Andriesse b5677210d2 Remove unused parameter 2019-05-31 10:46:57 +10:00
Niels Andriesse 42b3dddc6a Clean 2019-05-30 13:14:38 +10:00
Mikunj 4e704f2d68 Skip processing messages to ourself. 2019-05-29 12:40:47 +10:00
Mikunj cda1c51b3c Updated to use LokiProfile proto. 2019-05-29 09:41:41 +10:00
Mikunj ea0134ad61 Updated protobuf. 2019-05-29 09:36:16 +10:00
Niels Andriesse 845c4f700a Fix crash 2019-05-28 15:00:18 +10:00
Niels Andriesse 1462a5cb6b Handle receiving of sender display name 2019-05-28 13:04:32 +10:00
Niels Andriesse c60f4cda0d Include sender display name in messages 2019-05-28 11:47:46 +10:00
Niels Andriesse 34cd07f85b Clean 2019-05-28 10:04:28 +10:00
Niels Andriesse f1bb306438 Add show seed button 2019-05-28 09:57:54 +10:00
Niels Andriesse e81a074efc Show online status 2019-05-27 16:30:28 +10:00
Niels Andriesse 35f2354327 Show when a message was sent using P2P 2019-05-27 15:06:54 +10:00
Niels Andriesse 209996f86d Rename P2PDetails → P2PState 2019-05-27 13:50:22 +10:00
Niels Andriesse a11074ba5a Fix crash 2019-05-27 13:11:25 +10:00
Niels Andriesse 0337695c15 Add comment 2019-05-27 12:57:21 +10:00
Niels Andriesse 97d1c16164 Clean up sendSignalMessage(_:to:with:) signature 2019-05-27 12:54:59 +10:00
Niels Andriesse e7866e7a7a Merge branch 'dev' into p2p 2019-05-27 12:50:58 +10:00
Niels Andriesse 728a148980 Improve performance 2019-05-27 12:50:30 +10:00
Niels Andriesse a4f1a1c3c8 Merge branch 'p2p' of github.com:loki-project/loki-messenger-ios into p2p 2019-05-27 12:26:52 +10:00
Niels Andriesse 5351961af7 Clean 2019-05-27 12:26:37 +10:00
Mikunj 58a1c82bfb Don't fail debug on unknown content type.
The desktop messenger has some messages which will not set anything on the envelope.
2019-05-27 11:26:28 +10:00
Niels Andriesse ca713f6476 Clean up getMessages() signature 2019-05-27 10:27:49 +10:00
Mikunj 482721a2c2 Merge branch 'dev' into p2p 2019-05-27 10:24:35 +10:00
Mikunj 32b5b43c6e Fix fetching incorrect thread.
We also forgot to save incoming details.
2019-05-27 10:18:07 +10:00
Niels Andriesse a440a08a04 Implement retrying 2019-05-27 09:58:34 +10:00
Mikunj 58ead70eb3 Minor fix. 2019-05-27 09:54:20 +10:00
Mikunj 8a1ef268c8 Disable deregister after network error. 2019-05-27 09:52:06 +10:00
Mikunj 88afca30c6 Moved P2P logic to LokiP2PManager. 2019-05-27 09:50:37 +10:00
Mikunj af6a969653 Very iffy ping logic - May not work 2019-05-24 16:26:58 +10:00
Niels Andriesse 22623815bb Enforce naming convention 2019-05-24 16:25:25 +10:00
Niels Andriesse cbac37a95f Fix friend request UI bugs 2019-05-24 16:23:27 +10:00
Mikunj 455c8c520b More pinging logic 2019-05-24 16:07:00 +10:00
Mikunj 7f679ba5ed Added P2P pinging logic. 2019-05-24 15:20:49 +10:00
Mikunj 20f0b23951 Refactoring. 2019-05-24 13:45:38 +10:00
Niels Andriesse 33a5e59415 Clean 2019-05-24 12:15:31 +10:00
Niels Andriesse 96c02864c8 Improve logging 2019-05-24 11:36:26 +10:00
Niels Andriesse 1fafa550f0 Fix message sending error handling 2019-05-24 11:24:27 +10:00
Niels Andriesse f83fdcbf70 Update mock server IP 2019-05-24 09:55:34 +10:00
Niels Andriesse b2f114cd94 Fix typo 2019-05-24 09:49:49 +10:00
Mikunj cead2e3942 More PoW fixes. 2019-05-24 09:44:22 +10:00
Mikunj 05737cde53 Merge commit 'b20ac237b23e9582cead41693428c346f2bc95cb' into p2p 2019-05-24 09:37:07 +10:00
Mikunj b3ef8af476 Fix PoW Calculation. 2019-05-24 09:33:41 +10:00
Niels Andriesse b20ac237b2 Fix PoW calculation 2019-05-24 09:32:55 +10:00
Niels Andriesse fddee1db3d Fix non-millisecond value 2019-05-24 09:11:16 +10:00
Mikunj f084c804c5 Fix ttl not being in milliseconds. 2019-05-23 16:24:58 +10:00
Mikunj ed85a0da3c Merge commit 'fe9a32d1b99253de2e4b0b38653333317aa7e35a' into p2p 2019-05-23 16:16:17 +10:00
Niels Andriesse ab06a1362e Update isCalculatingPoW on send failure 2019-05-23 16:15:04 +10:00
Mikunj b15edf0597 Fix incorrect address format being sent. 2019-05-23 16:13:37 +10:00
Mikunj 80911787e6 Fix incorrect ttl. 2019-05-23 15:50:37 +10:00
Mikunj 0566d94105 Merge commit '07fefc168fcadb5e96aa3a076a27b6756cf91b6c' into p2p 2019-05-23 15:31:27 +10:00
Niels Andriesse fe9a32d1b9 Simplify swarm caching 2019-05-23 15:26:52 +10:00
Mikunj 6337ab076f Updated ip. 2019-05-23 15:23:57 +10:00
Niels Andriesse 07fefc168f Fix crash 2019-05-23 15:09:29 +10:00
Mikunj 4412ec8f15 Made LKAddressMessage a subclass of LKEphemeralMessage.
This is because we can't send a body with a nil message :(
2019-05-23 15:01:01 +10:00
Niels Andriesse 9927fdb620 Fix build 2019-05-23 14:38:59 +10:00
Mikunj bf1c2f4327 Send to p2p server first before falling back to storage server. 2019-05-23 13:39:31 +10:00
Niels Andriesse 5af0ad03b9 Persist swarm cache & make access modifiers explicit 2019-05-23 12:28:35 +10:00
Mikunj 2694699e4e Added LKAddressMessage.
Hooked up p2p api.
2019-05-23 12:17:40 +10:00
Niels Andriesse cef9405473 Distinguish between minimum snode count and target snode count 2019-05-23 11:35:56 +10:00
Niels Andriesse 8a9da51943 Implement swarm specific error handling 2019-05-23 09:44:46 +10:00
Niels Andriesse 1796fd8e60 Prepare for P2P logic integration 2019-05-22 16:04:51 +10:00
Niels Andriesse 24dd8335de
Merge pull request #18 from loki-project/p2p
P2p server
2019-05-22 14:32:09 +10:00
Niels Andriesse 20472c8bed Fix minor code style issues 2019-05-22 14:29:59 +10:00
Mikunj 8c8f6231a5 Fix ttl not being set in friend requests. 2019-05-22 13:24:13 +10:00
Niels Andriesse 08aac18384 Clean more 2019-05-22 13:09:01 +10:00
Mikunj b5cc66262d Added ttl property on TSOutgoingMessage.
Use this ttl value when sending a message.
2019-05-22 13:00:32 +10:00
Niels Andriesse dac9b28162 Clean 2019-05-22 12:43:37 +10:00
Mikunj 5a1272c23b Merge branch 'dev' into p2p 2019-05-22 12:42:00 +10:00
Niels Andriesse 638cb62f5a Fix build 2019-05-22 12:29:14 +10:00
Niels Andriesse d5b176d831 Mock swarms for now 2019-05-22 12:28:19 +10:00
Niels Andriesse e1d2c48c9b Integrate swarm changes into message sending code 2019-05-22 12:24:20 +10:00
Mikunj fc702e2420 Merge commit 'e5463e545ac6be6c13b9d3cf65d9105ad475b4dc' into p2p 2019-05-22 12:06:30 +10:00
Niels Andriesse adcb469b53 Integrate swarm changes into message receiving code 2019-05-22 12:06:02 +10:00
Niels Andriesse e5463e545a Filter duplicate messages & make parsing strategy consistent 2019-05-22 11:32:32 +10:00
Mikunj 865bb1932f Added LokiP2PMessageHandler.
Moved wrapping and unwrapping of proto envelopes to LokiMessageWrapper.
2019-05-22 11:31:07 +10:00
Niels Andriesse f3e2737043 Fix inconsistent function signatures 2019-05-22 09:36:35 +10:00
Mikunj efa303abeb Fix mnemonic languages not being linked. 2019-05-22 09:16:03 +10:00
Niels Andriesse 35bdf69053 Merge branch 'swarms' of github.com:loki-project/loki-messenger-ios into swarms 2019-05-21 16:41:05 +10:00
Niels Andriesse b1e18de5e2 Implement swarm parsing 2019-05-21 16:40:31 +10:00
Mikunj 167c154796 Fix up imports. 2019-05-21 15:47:19 +10:00
Mikunj 16b1622bea Updated imports. 2019-05-21 15:45:16 +10:00
Niels Andriesse dc103c7bd6 Refactor 2019-05-21 15:21:51 +10:00
Mikunj 472113bccb Merge branch 'last-message-hash' into swarms 2019-05-21 14:45:34 +10:00
Mikunj a12d36fb9e Set last hash in params. 2019-05-21 13:48:42 +10:00
Niels Andriesse 59de49641e Implement swarm caching 2019-05-21 13:44:46 +10:00
Mikunj 3dcb859316 Merge commit '9d7cec90e1012a5273f33cd2710f5f5b3169f783' into last-message-hash 2019-05-21 13:31:29 +10:00
Niels Andriesse 9d7cec90e1 WIP 2019-05-21 13:26:51 +10:00
Mikunj 50b41c63af Added storing of last message hash. 2019-05-21 13:26:10 +10:00
Niels Andriesse 1c73cf5114 Re-order files 2019-05-21 11:40:29 +10:00
Niels Andriesse 1a8175472a Refactor friend request view & add documentation 2019-05-21 10:30:06 +10:00
Niels Andriesse 4c33fa257a Fix incorrect logic in OWSMessageManager 2019-05-21 09:53:10 +10:00
Niels Andriesse 20adddbac1 Merge branch 'master' of github.com:loki-project/loki-messenger-ios 2019-05-21 09:10:36 +10:00
Niels Andriesse 5622c08124 Fix crash & clean 2019-05-21 09:09:48 +10:00
Mikunj 74867dc525 Updated expire job to use friendRequestStatus states. 2019-05-21 09:07:33 +10:00
Niels Andriesse 740291cceb Implement message friend request status
Untested
2019-05-20 16:36:22 +10:00
Mikunj 56018fd475 Merge branch 'master' of https://github.com/loki-project/loki-messenger-ios 2019-05-20 16:01:28 +10:00
Mikunj fdf7d99ff3 Fix removing interaction while enumerating.
Fix most recent message not being kept.
2019-05-20 15:59:49 +10:00
Niels Andriesse 539392b357 Merge branch 'master' of github.com:loki-project/loki-messenger-ios 2019-05-20 15:37:07 +10:00
Niels Andriesse 78fbcf28bb Slightly simplify friend request removal 2019-05-20 15:36:42 +10:00
Mikunj 10e5ef3e5c Renamed functions to avoid confusion 2019-05-20 15:18:37 +10:00
Niels Andriesse 4a633fba68 Debug friend request expiration 2019-05-20 14:52:26 +10:00
Mikunj 3d7bd6b895 Fix incorrect function name.
Refactor fixes.
2019-05-20 13:30:08 +10:00
Mikunj fdff5d8487 Add friend request message discarding. 2019-05-20 13:01:04 +10:00
Niels Andriesse e7eea3f104 Fix typo 2019-05-20 12:56:41 +10:00