288 Commits

Author SHA1 Message Date
Michal Iskierko
53ac61bb8b fix: a few adjustments for matterbridge
- exposig Online info
- adding ability to disable backup loop and auto message loop

Issue #12710
2024-01-08 14:21:26 +01:00
Igor Sirotin
195982c950
fix_(StoreNodeRequestManager): various fixes and improvements (#4509) 2023-12-27 13:53:19 +00:00
Patryk Osmaczko
1d3c618fb4 feat: encrypt CommunityDescription fields
Extended `CommunityDescription` with a `privateData` map. This map
associates each hash ratchet `key_id` and `seq_no` with an encrypted
`CommunityDescription`. Each encrypted instance includes only data
requiring encryption.

closes: status-im/status-desktop#12851
closes: status-im/status-desktop#12852
closes: status-im/status-desktop#12853
2023-12-22 18:17:06 +01:00
Mykhailo Prakhov
134137f9c5
feat: implemented a mechanism to retrieve shard information for a given community ID (#4499)
* feat: a mechanism to retrieve shard information for a given community ID
2023-12-22 13:37:37 +01:00
Mykhailo Prakhov
a5f6a6c2f6
fix: privileged member accepted/rejected request to join action is not approved by the control node after the member leaved and tries to join the community again (#4487) 2023-12-19 14:45:34 +01:00
Igor Sirotin
e3ef8c649a
chore: store node requests manager (#4446) 2023-12-15 19:50:12 +00:00
Ibrahem Khalil
90c31afe7c
New way of sharing communities (#4341) 2023-12-15 13:55:32 +02:00
Ibrahem Khalil
be8568e174
Community member joins the community if he sends a request to join an… (#4321) 2023-12-09 14:46:30 +02:00
Mykhailo Prakhov
fe604b2806
fix: tokenMaster does not have members revealed addresses (#4425) 2023-12-07 17:27:14 +01:00
Mykhailo Prakhov
04c533b8d5
chore: API for getting all non-approved requests to join for all communities (#4422) 2023-12-05 15:50:45 +01:00
Mykhailo Prakhov
058120fad9
chore: parse all non confirmed requests to join of the community during getting all communities (#4409) 2023-12-04 19:20:09 +01:00
Andrea Maria Piana
b4b9db8578 Fix panic syncing community token gated 2023-11-30 12:57:38 +00:00
Mykhailo Prakhov
19464eb345
feat: show activity center notification if user must reveal addressed to join/rejoin the community (#4373)
- show activity center notification if user must reveal addressed to join/rejoin the community
- fixed unit test, added validation that ex-owner receive AC notification
2023-11-27 10:54:46 +01:00
Igor Sirotin
e32c5546e1
test: request community from storenode (#4364)
* feat: request community info from storenode test

* shutdownWaitGroup

* fix requestCommunityInfoFromMailserver timestamp roundin
2023-11-25 23:24:20 +00:00
Mykhailo Prakhov
5cd20ded4e
chore: fix sending request to join msg's to the new owner (#4371) 2023-11-23 16:58:43 +01:00
Richard Ramos
c012f94681 fix: send request on non protected topics, and add missing shard information on invite 2023-11-18 12:12:06 -04:00
Vitaly Vlasov
1794b93c16 Always set PubsubTopic in filters 2023-11-18 02:26:34 +02:00
Patryk Osmaczko
5b51c32a4a refactor: extract messenger_curated_communities.go 2023-11-16 17:21:28 +01:00
Boris Melnik
44625a2904
chore(discord): Move import from discord functionality to separatefile (#4278) 2023-11-13 13:29:31 +03:00
richΛrd
2c954d42cf
feat: replace DefaultPubsubTopic by Shard 32 (#4161) 2023-11-09 20:29:15 -04:00
Patryk Osmaczko
f7042e4b9e refactor: extract layers in StatusMessage
Extracted:
- TransportLayer
- EncryptionLayer
- ApplicationLayer
2023-11-08 21:46:22 +01:00
Volodymyr Kozieiev
b5c82adb70
Increased timeouts when fetching curated communities (#4244)
* Timeouts increased
2023-11-08 13:06:40 +00:00
Michal Iskierko
d909faf504 feat: add AC messages for setting signer operations
Issue #11964
2023-11-08 12:54:29 +01:00
Mykhailo Prakhov
b15fa6d2c8
fix: promote self to community control node event if we are not a community member (#4270) 2023-11-07 14:18:59 +01:00
Boris Melnik
1d08b403e6
feat(discord): Split import channel signals and community import signals (#4232) 2023-11-07 13:44:10 +03:00
Patryk Osmaczko
953ed4c8e4 chore: update directory abi and addresses
closes: status-im/status-desktop#12569
2023-11-03 17:56:21 +01:00
Andrea Maria Piana
071c431606 [Fixes: #4088] Fix pending notification test
There were 2 issues:

1) We hard delete requests, that means that on retransmission they will
be recreated, the test has been changed to accommodate this behavior
2) We always used time.now when updating timestamp in notification,
   sometimes time is the same so the notification is not updated, we
   changed to use what essentially is a clock value
2023-11-03 14:12:35 +00:00
Igor Sirotin
c27384680a
feat: new configurable endpoint RequestCommunityInfoFromMailserverV2 (#4238)
* StatusUnfurler: use shard from url
2023-11-03 10:30:24 +00:00
Patryk Osmaczko
25f25e9853 chore: populate Community with PubsubTopicPrivateKey
part of: status-im/status-desktop#12408
2023-11-03 11:27:43 +01:00
Sale Djenic
11a3612290 feat: support signing of a join/edit community request from within the app or keycard 2023-11-03 07:49:01 +01:00
Andrea Maria Piana
fd76367be7
[Fixes: #4206] Don't remove filters if not needed
Filters were removed and recreated which resulted in a flaky test.
This was not needed as the filters didn't change, and they won't be
recreated if we reinstall the same filter.
2023-11-01 12:47:35 +00:00
Mykhailo Prakhov
eb437e9d8d
feat: kick all members after ownership change and auto-accept after sharing the address (#4187)
feat: kick all members after the ownership change and auto-accept after sharing the address
2023-10-31 15:20:40 +01:00
Patryk Osmaczko
e3a8f5630a chore: add CommunityID to ProtectedTopic 2023-10-31 10:03:31 +01:00
Patryk Osmaczko
627ac9449b refactor: remove always nil shard parameter in HandleCommunityDescriptionMessage 2023-10-31 10:03:31 +01:00
Jonathan Rainville
0cac2af1db
fix(community): getting kicked out of a community should still spectate (#4217)
Fixes https://github.com/status-im/status-desktop/issues/12558

When getting kicked out of  a community, before we used to leave the community completely, but just keep the filters on.
That created a problem when reopening the app, because the community disappeared and could even create a problem in desktop where it tried to open the last opened community but it's no longer there.

The fix now is that when getting kicked out, we instead just remove ourselves from the community and set Joined to false, but we keep the community spectated.
2023-10-27 15:20:08 -04:00
Patryk Osmaczko
e304fe3344 chore: enable community rekey loop 2023-10-27 16:29:26 +02:00
frank
06a9fe4f81
fix: sync decision on join community request (#4190)
* fix: sync community request decision

* make generate

* simplify test

* make generate
2023-10-26 12:17:18 +08:00
Jonathan Rainville
6e0d4e697f
chore(messenger_communities): use new name for community Access (#4210) 2023-10-25 13:33:49 -04:00
Boris Melnik
8ae6e3035b
feat(discord): Import single channel from discord (#4160) 2023-10-25 12:32:21 -04:00
Patryk Osmaczko
b262d7e88c refactor: rename Community.OnRequest() -> AutoAccept() 2023-10-25 17:34:37 +02:00
Patryk Osmaczko
b321f28c9d refactor: update community access enum naming 2023-10-25 17:34:37 +02:00
Igor Sirotin
c6ff315dfc
fix: set pubsubTopic in request community info from mailserver (#4194) 2023-10-25 11:13:35 +01:00
Andrea Maria Piana
23f71c1125 Fix encryption id && rekey with a single message
This commit changes the format of the encryption id to be based off 3
things:

1) The group id
2) The timestamp
3) The actual key

Previously this was solely based on the timestamp and the group id, but
this might lead to conflicts. Moreover the format of the key was an
uint32 and so it would wrap periodically.

The migration is a bit tricky, so first we cleared the cache of keys,
that's easier than migrating, and second we set the new field hash_id to
the concatenation of group_id / key_id.
This might lead on some duplication in case keys are re-received, but it
should not have an impact on the correctness of the code.

I have added 2 tests covering compatibility between old/new clients, as
this should not be a breaking change.

It also adds a new message to rekey in a single go, instead of having to
send multiple messages
2023-10-24 20:48:54 +01:00
Patryk Osmaczko
bd245ab45b refactor: unify Owned() and ControlledCommunities() 2023-10-22 21:50:41 +02:00
Patryk Osmaczko
345851c396 feat: ensure unique control node across devices
closes: status-im/status-desktop#11962
2023-10-22 21:50:41 +02:00
frank
624996a7e9
only sync decisions/state of AC notifications (#3979) 2023-10-22 17:41:20 +08:00
Patryk Osmaczko
eb232d4680 fix: use messengerSignalsHandler instead of global object 2023-10-20 18:09:12 +02:00
Patryk Osmaczko
246b68a8c0 refactor: rename and simplify UpdatePrivateKeyAndControlNode 2023-10-18 22:32:29 +02:00
Patryk Osmaczko
a9cde06e44 refactor: simplify community requests logic
With the recent introduction of pending states, the community requests
logic became more complex. This commit simplifies the flow and
appropriately delegates logic to its corresponding abstraction levels:
messenger, manager and community. Additionally, it eliminates
redundancies in notifications and request-saving mechanism.
2023-10-18 17:11:20 +02:00
Patryk Osmaczko
b932cc97bb fix: ensure owners and token masters receive revealed addresses with
request to join
2023-10-18 17:11:20 +02:00