You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When an user creates a community, a CommunityDescription message is broadcasted in the default waku topic. Users that want to join a community have several ways to do so:
The community owner invites a contact. The invitee's status app will then ask the store node for the CommunityDescription so they can be able to spectate the community and join.
A special link is published in a chat. This is a link that contains the Community ID that follows this format: https://join.status.im/c/<community-id->. Clients that receive a message with this link will automatically attempt to retrieve the CommunityDescription from the store node.
The Community ID is published into the curated communities smart contract. Just like in previous scenarios, the clients will retrieve the community description from store node
In #3528 and https://rfc.vac.dev/spec/57/ Communities are expected to have their messages sent into a specific shard index, i.e. /waku/2/rs/16/<some-index>. This means that a client will not be able to retrieve the CommunityDescription without knowing on which index it was published.
The following changes are proposed:
Community links will contain the shard index: https://join.status.im/c/<community-id->/<index>. This will unfortunately mean that existing links will stop working. (Requires modifying the website join.status.im to expect an index as part of the community link, and the clients to include the index in the link.
Modify CommunityInvitation protobuffer to include uint16 relay_shard_index, so clients receiving this message will be able to know in which pubsub topic the CommunityDescription are being published
The curated communities smart contract will require storing the shard index. Also the DApp that uses this contract and the Curated Communities section within status-desktop will need to be modified to handle this shard index
This means we have to include also the shard cluster as part of the community link, invitations and curated communities smart contract, otherwise this requirement of unique shards per community is not possible
@kaiserd@jm-clius In https://rfc.vac.dev/spec/51/#index-list it is described that the rs or rsv key of the ENR is only capable of handling a single cluster. If i understood correctly this part of the RFC, this is not compatible with @John-44 requirement of having each community belong to its own shard as just having a single cluster means we're limited to a max of 1024 communities
When an user creates a community, a
CommunityDescription
message is broadcasted in the default waku topic. Users that want to join a community have several ways to do so:CommunityDescription
so they can be able to spectate the community and join.https://join.status.im/c/<community-id->
. Clients that receive a message with this link will automatically attempt to retrieve theCommunityDescription
from the store node.In #3528 and https://rfc.vac.dev/spec/57/ Communities are expected to have their messages sent into a specific shard index, i.e.
/waku/2/rs/16/<some-index>
. This means that a client will not be able to retrieve theCommunityDescription
without knowing on whichindex
it was published.The following changes are proposed:
https://join.status.im/c/<community-id->/<index>
. This will unfortunately mean that existing links will stop working. (Requires modifying the websitejoin.status.im
to expect anindex
as part of the community link, and the clients to include the index in the link.CommunityInvitation
protobuffer to includeuint16 relay_shard_index
, so clients receiving this message will be able to know in which pubsub topic theCommunityDescription
are being publishedindex
. Also the DApp that uses this contract and the Curated Communities section within status-desktop will need to be modified to handle this shardindex
cc: @jm-clius @kaiserd @John-44 @cammellos @iurimatias
The text was updated successfully, but these errors were encountered: