Commit Graph

59 Commits

Author SHA1 Message Date
Roman Volosovskyi b6e515618b
[#6956] upgradable `message-id`
Implementation:
1. `transport.utils/message-id` function is called only in three places now
   and accepts `from` and  `raw_payload` as parameters.
   ID is calculated as `sha3(from + raw_payload)`.
2. This means that for wrapped private group chat message
   the raw payload of `GroupMembershipUpdate` is used.
2018-12-05 11:22:43 +02:00
Roman Volosovskyi e7d0312d25
[#6903] fix replies compatibility
Issue was caused by https://github.com/status-im/status-react/pull/6722

Implementation:
1. `old-message-id` field (indexed) was introduced in `message` entity
   and is calculated as `message-id` was calculated in `0.9.31`
```clojure
(defn old-message-id
  [message]
  (sha3 (pr-str message)))
```
2. When a reply message is sent from the PR version of app both `response-to`
   and `response-to-v2` fields are sent as a part of `message`'s `content`
   field, so that it can be recognized by `0.9.31`.
3. When PR version of app receives reply from `0.9.31` we check whether
   message's `content` contains `response-to` but doesn't contain
   `response-to-v2`, and if so we check whether DB contains message with
   `old-message-id=response-to`. If such message has been found we assoc
   `response-to-v2` to content.
4. If message from DB contains only `response-to` but not `response-to-v2`
   attempt to fetch the message by `old-message-id` is done.
2018-12-05 07:22:40 +02:00
Andrea Maria Piana dfbc27c5d7
Allow admin to leave chat
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-12-04 10:17:50 +01:00
Andrey Shovkoplyas 582c2960ec
[#6644] Chat command recipients should be able to install an extension
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-11-29 16:43:15 +01:00
Vitaliy Vlasov 92d00f4250
Use multiple app instances simultaneously
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2018-11-28 19:10:12 +02:00
Roman Volosovskyi c506521778
[slow sign in] Better handling of migration failures and db encryption problems.
Migration failures are handled separately from other errors which might appear
during opening account's realm DB. In case if user chooses to erase
the account's database, only this database will be removed and other accounts
will not be touched.
2018-11-28 14:13:30 +02:00
Andrey Shovkoplyas 028ab522b9
[#6867] Add on-send-sync to chat.command extension
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-11-27 21:23:20 +01:00
Roman Volosovskyi 5d5847e4b9
[slow sign in] Add unviewed messages counter to chat entity.
Before we fetched ALL user-statuses with `status=received` (which means that
a message hasn't been seen), iterated them, grouped by chat and then stored
`message-ids` of these `user-statuses` in chat's `:unviewed-messages` key.

This commit introduces :unviewed-messages-count field in chat entity.
That means that there is no need to iterate `user-statuses` in order to count
a total number of unviewed messages, it is always stored along with chat.
In the rest of it, the difference is only that chat's db record should be
updated each time when unviewed messages are seen.
2018-11-23 17:08:48 +02:00
Andrey Shovkoplyas 5dd345fe49
[#6643] Allow chat command suggestions to select parameter
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-11-22 15:57:39 +01:00
Roman Volosovskyi d66198a420
[slow sign in]
fix iterating over all messages from realm db (was done for deduplication)
async loading of chats (:init-chats event)
2018-11-21 18:21:52 +02:00
Igor Mandrigin 83ef7746d4
Show debug information when LES is selected (in the titlebar).
To simplify testing and debugging, there is a very simple sync indicator
(debug) for LES. This UI is not even close to being production and will
be reworked in the future.

Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-11-15 10:34:31 +01:00
Andrea Maria Piana 1104becfba
Enable syncing of contacts & style pairing section
Everytime a contact request is sent/confirmed a sync message is also
sent to other devices so the contact is kept in sync.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-14 13:21:14 +01:00
Aleksandr Pantiukhov 17f74ff2f6
[#6455]: Updated extension management
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-11-12 10:28:48 +01:00
Eric Dvorsak f8f499d9b0
[refactor] rename whisper-id and whisper-identity to public-key 2018-11-09 11:16:27 +01:00
Eric Dvorsak 38ec77b97b
[refactor] remove default contacts
transactor and demo-bot are not used anymore and related code can therefore
be deleted
2018-11-09 11:16:26 +01:00
Andrey Shovkoplyas e9bf1d7864
[#6169] Display .eth or other domain rather than IPFS redirect
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-11-08 15:53:38 +01:00
Dmitry Novotochinov ae3029c2d9
[#6294] add desktop alpha release warning
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-11-07 22:10:39 +03:00
yenda a3b2bc1b87
[fix #3913] do not logout when changing mailserver
- do not logout and remove previous mailserver
from peers when changing mailserver
- rename wnode mailserver
- move transport.inbox to mailserver.core
- fix all subs and db keys

Signed-off-by: yenda <eric@status.im>
2018-11-07 17:10:18 +01:00
Andrea Maria Piana 693eae9cf9
Send your own messages
Adds a `chat-id` field in `content` map.

The reason it has been added to the map instead of augmenting transit is
that it would simplify the calculation of `message-id`, which in this
case is consistent for both old & new clients.

`chat-id` also represents the `chat-id` with respect of the sender, as
in 1-to-1 chats that is asymmetric.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-06 21:19:50 +01:00
janherich ff97345f07
Plug-in new text parsing engine 2018-11-06 19:59:24 +01:00
Andrea Maria Piana 073dddcee0
Add pairing
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-10-27 20:43:53 +02:00
janherich 76165cc7cb
[#6460] [#6438] Deduplication-ids 2018-10-24 09:43:52 +02:00
yenda 82c3997f07
[desktop] Add search feature for chat list
Signed-off-by: yenda <eric@status.im>
2018-10-23 17:27:27 +02:00
Aleksandr Pantiukhov 5f06ebc27d
Temporary that makes it possible to install only one extension at a time (required for the hackathon)
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-10-22 15:01:39 +02:00
Max Risuhin 5986761210
Push notifications support #4432; Rename app to Status globally.
Signed-off-by: Max Risuhin <risuhin.max@gmail.com>
2018-10-19 18:52:04 +03:00
Aleksandr Pantiukhov 2c65077270
[#6382]: Makes extensions dev-mode aware
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-10-19 16:37:46 +02:00
Andrea Maria Piana 9629983f7f
Remove instabug 2018-10-19 09:18:22 +03:00
Aleksandr Pantiukhov 76a724a2e7
[#6228]: API: requesting to connect to a node that is not available crashes the application
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-10-18 16:43:42 +02:00
yenda f98e013cff
fix login after logout when opening app from a notification
moves most of the fx that are suppose to happen only at app startup
to an init/start-app fn so that init/initialize-app which is also
called after logout doesn't repeat unecessary fxs
2018-10-17 17:24:34 +03:00
Aleksandr Pantiukhov 23503dc996
[#6094]: Persist extensions
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-10-17 14:08:45 +02:00
yenda 660bd2d1bd
request 7 days of history
- fetch 7 days of history when joining a chat
- make 7 24h requests to request 7 days because mailservers
ignores requests for a timespan > 24h
- make requests sequentially to avoid timeouts
- change mailserver after 3 timeouts on a request

Signed-off-by: yenda <eric@status.im>
2018-10-15 17:18:59 +02:00
Igor Mandrigin 1c4cca1004
Don't start a node while the node is already being started.
Restart it instead, so that we are sure which config is there.

Signed-off-by: yenda <eric@status.im>
2018-10-15 16:43:30 +02:00
Aleksandr Pantiukhov 4c7339f978
[#6198]: Add QR code scanner support in extensions panel
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-10-15 12:03:03 +02:00
yenda 1a2fcdfe3a
refactor contact models
- move models.contact and models.contacts to contact.core
- add tags field to contact and chat

Signed-off-by: yenda <eric@status.im>
2018-10-15 11:57:48 +02:00
yenda efdd76b364
refactor inbox
Signed-off-by: yenda <eric@status.im>
2018-10-11 14:47:04 +02:00
janherich 99d33ebbc9
Always load messages referenced in responses 2018-10-11 11:21:34 +02:00
Aleksandr Pantiukhov 1b6fa1d980
[#5979]: Add ENS names to profile screen
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-10-11 08:53:08 +02:00
Andrea Maria Piana 78b6d67d79
Allow to edit group membership
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-10-09 10:40:13 +02:00
Andrey Shovkoplyas 1b6d51ff11
implemented functionality to request user action from dapps
fixed qr code js api

Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-10-04 15:25:18 +02:00
Dmitry Novotochinov 5dec44340d
Add wizard and 'card is ready' screen
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-10-03 16:50:41 +03:00
Andrey Shovkoplyas a1d0dcc0ec
introduced new status js api according latest web3 opt-in api 2018-10-02 22:12:46 +02:00
Dmitry Novotochinov 7a06a415c2
[#5964] hardwallet screens flow 2
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-10-02 21:15:28 +03:00
Andrea Maria Piana 165f1a46c7
Propagate signed membership information
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-10-02 12:06:28 +02:00
Igor Mandrigin 851a3db9ee
Add an option to run LES on Ropsten as an experimental feature.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-10-01 13:10:29 +02:00
janherich 44fbe62773
Chat replies + refactoring 2018-09-28 16:15:47 +02:00
yenda 4bd5d986b0
remove merge-fx macro
Signed-off-by: yenda <eric@status.im>
2018-09-25 15:18:44 +02:00
Andrea Maria Piana df51731fca
Add pfs flag, installation id and nobackup data directory
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-09-24 17:47:02 +02:00
Andrey Shovkoplyas 18b9ba0aac
[#5365] Open chat from browser
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-09-24 16:50:25 +02:00
Dmitry Novotochinov 41347ae5e0
[#5898] add HW setup screens
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-09-24 16:43:01 +03:00
Julien Eluard 10373ae6fd
[fix 5870] Added QR code API
Signed-off-by: yenda <eric@status.im>
2018-09-24 12:08:50 +02:00