Documentation ¶
Index ¶
- Constants
- Variables
- func CalculateRequestID(publicKey string, communityID types.HexBytes) types.HexBytes
- func ValidateCommunityDescription(desc *protobuf.CommunityDescription) error
- type Community
- func (o *Community) AcceptRequestToJoinAutomatically() bool
- func (o *Community) AddMember(publicKey *ecdsa.PublicKey, roles []protobuf.CommunityMember_Roles) error
- func (o *Community) AddRequestToJoin(request *RequestToJoin)
- func (o *Community) AddRoleToMember(pk *ecdsa.PublicKey, role protobuf.CommunityMember_Roles) (*protobuf.CommunityDescription, error)
- func (o *Community) AllowsAllMembersToPinMessage() bool
- func (o *Community) BanUserFromCommunity(pk *ecdsa.PublicKey) (*protobuf.CommunityDescription, error)
- func (o *Community) BuildGrant(key *ecdsa.PublicKey, chatID string) ([]byte, error)
- func (o *Community) CanDeleteMessageForEveryone(pk *ecdsa.PublicKey) bool
- func (o *Community) CanManageUsers(pk *ecdsa.PublicKey) bool
- func (o *Community) CanManageUsersPublicKeys() ([]*ecdsa.PublicKey, error)
- func (o *Community) CanMemberIdentityPost(chatID string) (bool, error)
- func (o *Community) CanPost(pk *ecdsa.PublicKey, chatID string, grantBytes []byte) (bool, error)
- func (o *Community) CanRequestAccess(pk *ecdsa.PublicKey) bool
- func (o *Community) Categories() map[string]*protobuf.CommunityCategory
- func (o *Community) ChatIDs() (chatIDs []string)
- func (o *Community) Chats() map[string]*protobuf.CommunityChat
- func (o *Community) ChatsByCategoryID(categoryID string) []string
- func (o *Community) Clock() uint64
- func (o *Community) Color() string
- func (o *Community) CreateCategory(categoryID string, categoryName string, chatIDs []string) (*CommunityChanges, error)
- func (o *Community) CreateChat(chatID string, chat *protobuf.CommunityChat) (*CommunityChanges, error)
- func (o *Community) DefaultFilters() []string
- func (o *Community) DeleteCategory(categoryID string) (*CommunityChanges, error)
- func (o *Community) DeleteChat(chatID string) (*protobuf.CommunityDescription, error)
- func (o *Community) Description() *protobuf.CommunityDescription
- func (o *Community) DescriptionText() string
- func (o *Community) Edit(description *protobuf.CommunityDescription)
- func (o *Community) EditCategory(categoryID string, categoryName string, chatIDs []string) (*CommunityChanges, error)
- func (o *Community) EditChat(chatID string, chat *protobuf.CommunityChat) (*CommunityChanges, error)
- func (o *Community) Encrypt()
- func (o *Community) Encrypted() bool
- func (o *Community) GetMemberPubkeys() []*ecdsa.PublicKey
- func (o *Community) HasMember(pk *ecdsa.PublicKey) bool
- func (o *Community) ID() types.HexBytes
- func (o *Community) IDString() string
- func (o *Community) Images() map[string]*protobuf.IdentityImage
- func (o *Community) IntroMessage() string
- func (o *Community) InvitationOnly() bool
- func (o *Community) InviteUserToChat(pk *ecdsa.PublicKey, chatID string) (*protobuf.CommunityInvitation, error)
- func (o *Community) InviteUserToOrg(pk *ecdsa.PublicKey) (*protobuf.CommunityInvitation, error)
- func (o *Community) IsAdmin() bool
- func (o *Community) IsBanned(pk *ecdsa.PublicKey) bool
- func (o *Community) IsMemberAdmin(publicKey *ecdsa.PublicKey) bool
- func (o *Community) IsMemberInChat(pk *ecdsa.PublicKey, chatID string) bool
- func (o *Community) Join()
- func (o *Community) Joined() bool
- func (o *Community) Leave()
- func (o *Community) MagnetlinkMessageChannelID() string
- func (o *Community) MarshalJSON() ([]byte, error)
- func (o *Community) MarshalPublicAPIJSON() ([]byte, error)
- func (o *Community) MarshaledDescription() ([]byte, error)
- func (o *Community) MemberIdentity() *ecdsa.PublicKey
- func (o *Community) MemberUpdateChannelID() string
- func (o *Community) MembersCount() int
- func (o *Community) Muted() bool
- func (o *Community) Name() string
- func (o *Community) OnRequest() bool
- func (o *Community) OutroMessage() string
- func (o *Community) PrivateKey() *ecdsa.PrivateKey
- func (o *Community) PublicKey() *ecdsa.PublicKey
- func (o *Community) RemoveOurselvesFromOrg(pk *ecdsa.PublicKey)
- func (o *Community) RemoveRoleFromMember(pk *ecdsa.PublicKey, role protobuf.CommunityMember_Roles) (*protobuf.CommunityDescription, error)
- func (o *Community) RemoveUserFromChat(pk *ecdsa.PublicKey, chatID string) (*protobuf.CommunityDescription, error)
- func (o *Community) RemoveUserFromOrg(pk *ecdsa.PublicKey) (*protobuf.CommunityDescription, error)
- func (o *Community) ReorderCategories(categoryID string, newPosition int) (*CommunityChanges, error)
- func (o *Community) ReorderChat(categoryID string, chatID string, newPosition int) (*CommunityChanges, error)
- func (o *Community) RequestedToJoinAt() uint64
- func (o *Community) RequestsToJoin() []*RequestToJoin
- func (o *Community) SortCategoryChats(changes *CommunityChanges, categoryID string)
- func (o *Community) Spectate()
- func (o *Community) Spectated() bool
- func (o *Community) StatusUpdatesChannelID() string
- func (o *Community) Tags() []CommunityTag
- func (o *Community) ToBytes() ([]byte, error)
- func (o *Community) ToSyncCommunityProtobuf(clock uint64, communitySettings *CommunitySettings) (*protobuf.SyncCommunity, error)
- func (o *Community) UnbanUserFromCommunity(pk *ecdsa.PublicKey) (*protobuf.CommunityDescription, error)
- func (o *Community) UpdateChatFirstMessageTimestamp(chatID string, timestamp uint32) (*CommunityChanges, error)
- func (o *Community) UpdateCommunityDescription(signer *ecdsa.PublicKey, description *protobuf.CommunityDescription, ...) (*CommunityChanges, error)
- func (o *Community) ValidateRequestToJoin(signer *ecdsa.PublicKey, request *protobuf.CommunityRequestToJoin) error
- func (o *Community) Verified() bool
- func (o *Community) VerifyGrantSignature(data []byte) (*protobuf.Grant, error)
- type CommunityAdminSettings
- type CommunityCategory
- type CommunityChanges
- type CommunityChat
- type CommunityChatChanges
- type CommunityResponse
- type CommunitySettings
- type CommunityTag
- type Config
- type EncodedArchiveData
- type HistoryArchiveDownloadTask
- type HistoryArchiveDownloadTaskInfo
- type KnownCommunitiesResponse
- type Manager
- func (m *Manager) AcceptRequestToJoin(request *requests.AcceptRequestToJoinCommunity) (*Community, error)
- func (m *Manager) AddHistoryArchiveDownloadTask(communityID string, task *HistoryArchiveDownloadTask)
- func (m *Manager) AddMemberOwnerToCommunity(communityID types.HexBytes, pk *ecdsa.PublicKey) (*Community, error)
- func (m *Manager) AddRoleToMember(request *requests.AddRoleToMember) (*Community, error)
- func (m *Manager) All() ([]*Community, error)
- func (m *Manager) BanUserFromCommunity(request *requests.BanUserFromCommunity) (*Community, error)
- func (m *Manager) CanPost(pk *ecdsa.PublicKey, communityID string, chatID string, grant []byte) (bool, error)
- func (m *Manager) CancelRequestToJoin(request *requests.CancelRequestToJoinCommunity) (*RequestToJoin, *Community, error)
- func (m *Manager) CanceledRequestsToJoinForCommunity(id types.HexBytes) ([]*RequestToJoin, error)
- func (m *Manager) CanceledRequestsToJoinForUser(pk *ecdsa.PublicKey) ([]*RequestToJoin, error)
- func (m *Manager) CommunitySettingsExist(id types.HexBytes) (bool, error)
- func (m *Manager) CreateAndSeedHistoryArchive(communityID types.HexBytes, topics []types.TopicType, startDate time.Time, ...) error
- func (m *Manager) CreateCategory(request *requests.CreateCommunityCategory, publish bool) (*Community, *CommunityChanges, error)
- func (m *Manager) CreateChat(communityID types.HexBytes, chat *protobuf.CommunityChat, publish bool, ...) (*Community, *CommunityChanges, error)
- func (m *Manager) CreateCommunity(request *requests.CreateCommunity, publish bool) (*Community, error)
- func (m *Manager) CreateHistoryArchiveTorrent(communityID types.HexBytes, msgs []*types.Message, topics []types.TopicType, ...) ([]string, error)
- func (m *Manager) CreateHistoryArchiveTorrentFromDB(communityID types.HexBytes, topics []types.TopicType, startDate time.Time, ...) ([]string, error)
- func (m *Manager) CreateHistoryArchiveTorrentFromMessages(communityID types.HexBytes, messages []*types.Message, ...) ([]string, error)
- func (m *Manager) Created() ([]*Community, error)
- func (m *Manager) DeclineRequestToJoin(request *requests.DeclineRequestToJoinCommunity) error
- func (m *Manager) DeclinedRequestsToJoinForCommunity(id types.HexBytes) ([]*RequestToJoin, error)
- func (m *Manager) DeleteCategory(request *requests.DeleteCommunityCategory) (*Community, *CommunityChanges, error)
- func (m *Manager) DeleteChat(communityID types.HexBytes, chatID string) (*Community, *protobuf.CommunityDescription, error)
- func (m *Manager) DeleteCommunity(id types.HexBytes) error
- func (m *Manager) DeleteCommunitySettings(id types.HexBytes) error
- func (m *Manager) DeleteHistoryArchiveDownloadTask(communityID string)
- func (m *Manager) DeletedCommunities() ([]*Community, error)
- func (m *Manager) DownloadHistoryArchivesByMagnetlink(communityID types.HexBytes, magnetlink string, cancelTask chan struct{}) (*HistoryArchiveDownloadTaskInfo, error)
- func (m *Manager) EditCategory(request *requests.EditCommunityCategory) (*Community, *CommunityChanges, error)
- func (m *Manager) EditChat(communityID types.HexBytes, chatID string, chat *protobuf.CommunityChat) (*Community, *CommunityChanges, error)
- func (m *Manager) EditChatFirstMessageTimestamp(communityID types.HexBytes, chatID string, timestamp uint32) (*Community, *CommunityChanges, error)
- func (m *Manager) EditCommunity(request *requests.EditCommunity) (*Community, error)
- func (m *Manager) ExportCommunity(id types.HexBytes) (*ecdsa.PrivateKey, error)
- func (m *Manager) ExtractMessagesFromHistoryArchive(communityID types.HexBytes, archiveID string) ([]*protobuf.WakuMessage, error)
- func (m *Manager) GetAdminCommunitiesChatIDs() (map[string]bool, error)
- func (m *Manager) GetByID(id []byte) (*Community, error)
- func (m *Manager) GetByIDString(idString string) (*Community, error)
- func (m *Manager) GetCommunitiesSettings() ([]CommunitySettings, error)
- func (m *Manager) GetCommunityChatsFilters(communityID types.HexBytes) ([]*transport.Filter, error)
- func (m *Manager) GetCommunityChatsTopics(communityID types.HexBytes) ([]types.TopicType, error)
- func (m *Manager) GetCommunitySettingsByID(id types.HexBytes) (*CommunitySettings, error)
- func (m *Manager) GetHistoryArchiveDownloadTask(communityID string) *HistoryArchiveDownloadTask
- func (m *Manager) GetHistoryArchiveMagnetlink(communityID types.HexBytes) (string, error)
- func (m *Manager) GetHistoryArchivePartitionStartTimestamp(communityID types.HexBytes) (uint64, error)
- func (m *Manager) GetLastMessageArchiveEndDate(communityID types.HexBytes) (uint64, error)
- func (m *Manager) GetLastSeenMagnetlink(communityID types.HexBytes) (string, error)
- func (m *Manager) GetLatestWakuMessageTimestamp(topics []types.TopicType) (uint64, error)
- func (m *Manager) GetMagnetlinkMessageClock(communityID types.HexBytes) (uint64, error)
- func (m *Manager) GetMessageArchiveIDsToImport(communityID types.HexBytes) ([]string, error)
- func (m *Manager) GetOldestWakuMessageTimestamp(topics []types.TopicType) (uint64, error)
- func (m *Manager) GetRequestToJoin(ID types.HexBytes) (*RequestToJoin, error)
- func (m *Manager) GetRequestToJoinIDByPkAndCommunityID(pk *ecdsa.PublicKey, communityID []byte) ([]byte, error)
- func (m *Manager) GetStoredDescriptionForCommunities(communityIDs []types.HexBytes) (response *KnownCommunitiesResponse, err error)
- func (m *Manager) GetSyncedRawCommunity(id []byte) (*RawCommunityRow, error)
- func (m *Manager) HandleCommunityCancelRequestToJoin(signer *ecdsa.PublicKey, request *protobuf.CommunityCancelRequestToJoin) (*RequestToJoin, error)
- func (m *Manager) HandleCommunityDescriptionMessage(signer *ecdsa.PublicKey, description *protobuf.CommunityDescription, ...) (*CommunityResponse, error)
- func (m *Manager) HandleCommunityInvitation(signer *ecdsa.PublicKey, invitation *protobuf.CommunityInvitation, ...) (*CommunityResponse, error)
- func (m *Manager) HandleCommunityRequestToJoin(signer *ecdsa.PublicKey, request *protobuf.CommunityRequestToJoin) (*RequestToJoin, error)
- func (m *Manager) HandleCommunityRequestToJoinResponse(signer *ecdsa.PublicKey, request *protobuf.CommunityRequestToJoinResponse) (*RequestToJoin, error)
- func (m *Manager) HandleCommunityRequestToLeave(signer *ecdsa.PublicKey, proto *protobuf.CommunityRequestToLeave) error
- func (m *Manager) HandleSyncCommunitySettings(syncCommunitySettings *protobuf.SyncCommunitySettings) (*CommunitySettings, error)
- func (m *Manager) HandleWrappedCommunityDescriptionMessage(payload []byte) (*CommunityResponse, error)
- func (m *Manager) ImportCommunity(key *ecdsa.PrivateKey) (*Community, error)
- func (m *Manager) InviteUsersToCommunity(communityID types.HexBytes, pks []*ecdsa.PublicKey) (*Community, error)
- func (m *Manager) IsAdminCommunity(pubKey *ecdsa.PublicKey) (bool, error)
- func (m *Manager) IsAdminCommunityByID(communityID types.HexBytes) (bool, error)
- func (m *Manager) IsEncrypted(communityID string) (bool, error)
- func (m *Manager) IsJoinedCommunity(pubKey *ecdsa.PublicKey) (bool, error)
- func (m *Manager) IsSeedingHistoryArchiveTorrent(communityID types.HexBytes) bool
- func (m *Manager) JoinCommunity(id types.HexBytes) (*Community, error)
- func (m *Manager) Joined() ([]*Community, error)
- func (m *Manager) JoinedAndPendingCommunitiesWithRequests() ([]*Community, error)
- func (m *Manager) LeaveCommunity(id types.HexBytes) (*Community, error)
- func (m *Manager) LoadHistoryArchiveIndexFromFile(myKey *ecdsa.PrivateKey, communityID types.HexBytes) (*protobuf.WakuMessageArchiveIndex, error)
- func (m *Manager) LogStdout(msg string, fields ...zap.Field)
- func (m *Manager) PendingRequestsToJoinForCommunity(id types.HexBytes) ([]*RequestToJoin, error)
- func (m *Manager) PendingRequestsToJoinForUser(pk *ecdsa.PublicKey) ([]*RequestToJoin, error)
- func (m *Manager) RemoveRoleFromMember(request *requests.RemoveRoleFromMember) (*Community, error)
- func (m *Manager) RemoveUserFromCommunity(id types.HexBytes, pk *ecdsa.PublicKey) (*Community, error)
- func (m *Manager) ReorderCategories(request *requests.ReorderCommunityCategories) (*Community, *CommunityChanges, error)
- func (m *Manager) ReorderChat(request *requests.ReorderCommunityChat) (*Community, *CommunityChanges, error)
- func (m *Manager) RequestToJoin(requester *ecdsa.PublicKey, request *requests.RequestToJoinCommunity) (*Community, *RequestToJoin, error)
- func (m *Manager) SaveCommunitySettings(settings CommunitySettings) error
- func (m *Manager) SaveRequestToJoin(request *RequestToJoin) error
- func (m *Manager) SeedHistoryArchiveTorrent(communityID types.HexBytes) error
- func (m *Manager) SetMessageArchiveIDImported(communityID types.HexBytes, hash string, imported bool) error
- func (m *Manager) SetMuted(id types.HexBytes, muted bool) error
- func (m *Manager) SetPrivateKey(id []byte, privKey *ecdsa.PrivateKey) error
- func (m *Manager) SetSyncClock(id []byte, clock uint64) error
- func (m *Manager) SetTorrentConfig(config *params.TorrentConfig)
- func (m *Manager) ShouldHandleSyncCommunity(community *protobuf.SyncCommunity) (bool, error)
- func (m *Manager) ShouldHandleSyncCommunitySettings(communitySettings *protobuf.SyncCommunitySettings) (bool, error)
- func (m *Manager) SpectateCommunity(id types.HexBytes) (*Community, error)
- func (m *Manager) Spectated() ([]*Community, error)
- func (m *Manager) Start() error
- func (m *Manager) StartHistoryArchiveTasksInterval(community *Community, interval time.Duration)
- func (m *Manager) StartTorrentClient() error
- func (m *Manager) Stop() error
- func (m *Manager) StopHistoryArchiveTasksInterval(communityID types.HexBytes)
- func (m *Manager) StopHistoryArchiveTasksIntervals()
- func (m *Manager) StopTorrentClient() []error
- func (m *Manager) StoreWakuMessage(message *types.Message) error
- func (m *Manager) StoreWakuMessages(messages []*types.Message) error
- func (m *Manager) Subscribe() chan *Subscription
- func (m *Manager) TorrentClientStarted() bool
- func (m *Manager) TorrentFileExists(communityID string) bool
- func (m *Manager) UnbanUserFromCommunity(request *requests.UnbanUserFromCommunity) (*Community, error)
- func (m *Manager) UnseedHistoryArchiveTorrent(communityID types.HexBytes)
- func (m *Manager) UpdateCommunityDescriptionMagnetlinkMessageClock(communityID types.HexBytes, clock uint64) error
- func (m *Manager) UpdateCommunitySettings(settings CommunitySettings) error
- func (m *Manager) UpdateLastSeenMagnetlink(communityID types.HexBytes, magnetlinkURI string) error
- func (m *Manager) UpdateMagnetlinkMessageClock(communityID types.HexBytes, clock uint64) error
- type Persistence
- func (p *Persistence) AllCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
- func (p *Persistence) CanceledRequestsToJoinForCommunity(id []byte) ([]*RequestToJoin, error)
- func (p *Persistence) CanceledRequestsToJoinForUser(pk string) ([]*RequestToJoin, error)
- func (p *Persistence) CommunitySettingsExist(communityID types.HexBytes) (bool, error)
- func (p *Persistence) CreatedCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
- func (p *Persistence) DeclinedRequestsToJoinForCommunity(id []byte) ([]*RequestToJoin, error)
- func (p *Persistence) DeleteCommunity(id types.HexBytes) error
- func (p *Persistence) DeleteCommunitySettings(communityID types.HexBytes) error
- func (p *Persistence) DeletedCommunities(memberIdentity *ecdsa.PublicKey) (comms []*Community, err error)
- func (p *Persistence) GetByID(memberIdentity *ecdsa.PublicKey, id []byte) (*Community, error)
- func (p *Persistence) GetCommunitiesSettings() ([]CommunitySettings, error)
- func (p *Persistence) GetCommunityChatIDs(communityID types.HexBytes) ([]string, error)
- func (p *Persistence) GetCommunitySettingsByID(communityID types.HexBytes) (*CommunitySettings, error)
- func (p *Persistence) GetDownloadedMessageArchiveIDs(communityID types.HexBytes) ([]string, error)
- func (p *Persistence) GetLastMessageArchiveEndDate(communityID types.HexBytes) (uint64, error)
- func (p *Persistence) GetLastSeenMagnetlink(communityID types.HexBytes) (string, error)
- func (p *Persistence) GetLatestWakuMessageTimestamp(topics []types.TopicType) (uint64, error)
- func (p *Persistence) GetMagnetlinkMessageClock(communityID types.HexBytes) (uint64, error)
- func (p *Persistence) GetMessageArchiveIDsToImport(communityID types.HexBytes) ([]string, error)
- func (p *Persistence) GetOldestWakuMessageTimestamp(topics []types.TopicType) (uint64, error)
- func (p *Persistence) GetRequestToJoin(id []byte) (*RequestToJoin, error)
- func (p *Persistence) GetRequestToJoinByPk(pk string, communityID []byte, state RequestToJoinState) (*RequestToJoin, error)
- func (p *Persistence) GetRequestToJoinByPkAndCommunityID(pk string, communityID []byte) (*RequestToJoin, error)
- func (p *Persistence) GetRequestToJoinIDByPkAndCommunityID(pk string, communityID []byte) ([]byte, error)
- func (p *Persistence) GetWakuMessagesByFilterTopic(topics []types.TopicType, from uint64, to uint64) ([]types.Message, error)
- func (p *Persistence) HasCommunityArchiveInfo(communityID types.HexBytes) (exists bool, err error)
- func (p *Persistence) HasMessageArchiveID(communityID types.HexBytes, hash string) (exists bool, err error)
- func (p *Persistence) HasPendingRequestsToJoinForUserAndCommunity(userPk string, communityID []byte) (bool, error)
- func (p *Persistence) JoinedAndPendingCommunitiesWithRequests(memberIdentity *ecdsa.PublicKey) (comms []*Community, err error)
- func (p *Persistence) JoinedCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
- func (p *Persistence) PendingRequestsToJoinForCommunity(id []byte) ([]*RequestToJoin, error)
- func (p *Persistence) PendingRequestsToJoinForUser(pk string) ([]*RequestToJoin, error)
- func (p *Persistence) RequestsToJoinForCommunityWithState(id []byte, state RequestToJoinState) ([]*RequestToJoin, error)
- func (p *Persistence) SaveCommunity(community *Community) error
- func (p *Persistence) SaveCommunityArchiveInfo(communityID types.HexBytes, clock uint64, lastArchiveEndDate uint64) error
- func (p *Persistence) SaveCommunitySettings(communitySettings CommunitySettings) error
- func (p *Persistence) SaveLastMessageArchiveEndDate(communityID types.HexBytes, endDate uint64) error
- func (p *Persistence) SaveMessageArchiveID(communityID types.HexBytes, hash string) error
- func (p *Persistence) SaveRequestToJoin(request *RequestToJoin) (err error)
- func (p *Persistence) SaveRequestToLeave(request *RequestToLeave) error
- func (p *Persistence) SaveWakuMessage(message *types.Message) error
- func (p *Persistence) SaveWakuMessages(messages []*types.Message) (err error)
- func (p *Persistence) SetMessageArchiveIDImported(communityID types.HexBytes, hash string, imported bool) error
- func (p *Persistence) SetMuted(communityID []byte, muted bool) error
- func (p *Persistence) SetPrivateKey(id []byte, privKey *ecdsa.PrivateKey) error
- func (p *Persistence) SetRequestToJoinState(pk string, communityID []byte, state RequestToJoinState) error
- func (p *Persistence) SetSyncClock(id []byte, clock uint64) error
- func (p *Persistence) ShouldHandleSyncCommunity(community *protobuf.SyncCommunity) (bool, error)
- func (p *Persistence) ShouldHandleSyncCommunitySettings(settings *protobuf.SyncCommunitySettings) (bool, error)
- func (p *Persistence) SpectatedCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
- func (p *Persistence) UpdateCommunitySettings(communitySettings CommunitySettings) error
- func (p *Persistence) UpdateLastMessageArchiveEndDate(communityID types.HexBytes, endDate uint64) error
- func (p *Persistence) UpdateLastSeenMagnetlink(communityID types.HexBytes, magnetlinkURI string) error
- func (p *Persistence) UpdateMagnetlinkMessageClock(communityID types.HexBytes, clock uint64) error
- type RawCommunityRow
- type RequestToJoin
- type RequestToJoinState
- type RequestToLeave
- type Subscription
Constants ¶
View Source
const OR = " OR "
Variables ¶
View Source
var ErrAlreadyJoined = errors.New("already joined")
View Source
var ErrAlreadyMember = errors.New("already a member")
View Source
var ErrCantRequestAccess = errors.New("can't request access")
View Source
var ErrCategoryAlreadyExists = errors.New("category already exists")
View Source
var ErrCategoryNotFound = errors.New("category not found")
View Source
var ErrChatAlreadyAssigned = errors.New("chat already assigned to a category")
View Source
var ErrChatAlreadyExists = errors.New("chat already exists")
View Source
var ErrChatNotFound = errors.New("chat not found")
View Source
var ErrInvalidCommunityDescription = errors.New("invalid community description")
View Source
var ErrInvalidCommunityDescriptionCategoryNoID = errors.New("invalid community category id")
View Source
var ErrInvalidCommunityDescriptionCategoryNoName = errors.New("invalid community category name")
View Source
var ErrInvalidCommunityDescriptionChatIdentity = errors.New("invalid community chat name, missing")
View Source
var ErrInvalidCommunityDescriptionDuplicatedName = errors.New("invalid community chat name, duplicated")
View Source
var ErrInvalidCommunityDescriptionMemberInChatButNotInOrg = errors.New("invalid community description member in chat but not in org")
View Source
var ErrInvalidCommunityDescriptionNoChatPermissions = errors.New("invalid community description no chat permissions")
View Source
var ErrInvalidCommunityDescriptionNoOrgPermissions = errors.New("invalid community description no org permissions")
View Source
var ErrInvalidCommunityDescriptionUnknownChatAccess = errors.New("invalid community description unknown chat access")
View Source
var ErrInvalidCommunityDescriptionUnknownChatCategory = errors.New("invalid community category in chat")
View Source
var ErrInvalidCommunityDescriptionUnknownOrgAccess = errors.New("invalid community description unknown org access")
View Source
var ErrInvalidCommunityTags = errors.New("invalid community tags")
View Source
var ErrInvalidGrant = errors.New("invalid grant")
View Source
var ErrInvalidMessage = errors.New("invalid community description message")
View Source
var ErrMemberNotFound = errors.New("member not found")
View Source
var ErrNoChangeInPosition = errors.New("no change in category position")
View Source
var ErrNotAdmin = errors.New("no admin privileges for this community")
View Source
var ErrNotAuthorized = errors.New("not authorized")
View Source
var ErrOldRequestToJoin = errors.New("old request to join")
View Source
var ErrOldRequestToLeave = errors.New("old request to leave")
View Source
var ErrOrgNotFound = errors.New("community not found")
View Source
var ErrTorrentTimedout = errors.New("torrent has timed out")
Functions ¶
func CalculateRequestID ¶ added in v0.106.3
func ValidateCommunityDescription ¶
func ValidateCommunityDescription(desc *protobuf.CommunityDescription) error
Types ¶
type Community ¶
type Community struct {
// contains filtered or unexported fields
}
func (*Community) AcceptRequestToJoinAutomatically ¶ added in v0.103.2
func (*Community) AddRequestToJoin ¶ added in v0.83.8
func (o *Community) AddRequestToJoin(request *RequestToJoin)
func (*Community) AddRoleToMember ¶ added in v0.115.5
func (o *Community) AddRoleToMember(pk *ecdsa.PublicKey, role protobuf.CommunityMember_Roles) (*protobuf.CommunityDescription, error)
func (*Community) AllowsAllMembersToPinMessage ¶ added in v0.100.0
func (*Community) BanUserFromCommunity ¶ added in v0.73.9
func (*Community) BuildGrant ¶ added in v0.103.2
func (*Community) CanDeleteMessageForEveryone ¶ added in v0.115.5
func (*Community) CanManageUsers ¶ added in v0.72.0
func (*Community) CanManageUsersPublicKeys ¶ added in v0.74.2
func (*Community) CanMemberIdentityPost ¶ added in v0.94.12
func (*Community) CanRequestAccess ¶ added in v0.72.0
func (*Community) Categories ¶ added in v0.79.3
func (o *Community) Categories() map[string]*protobuf.CommunityCategory
func (*Community) ChatsByCategoryID ¶ added in v0.102.6
func (*Community) CreateCategory ¶ added in v0.79.3
func (*Community) CreateChat ¶
func (o *Community) CreateChat(chatID string, chat *protobuf.CommunityChat) (*CommunityChanges, error)
func (*Community) DefaultFilters ¶ added in v0.83.2
func (*Community) DeleteCategory ¶ added in v0.79.3
func (o *Community) DeleteCategory(categoryID string) (*CommunityChanges, error)
func (*Community) DeleteChat ¶
func (o *Community) DeleteChat(chatID string) (*protobuf.CommunityDescription, error)
func (*Community) Description ¶ added in v0.76.3
func (o *Community) Description() *protobuf.CommunityDescription
func (*Community) DescriptionText ¶ added in v0.83.8
func (*Community) Edit ¶ added in v0.79.0
func (o *Community) Edit(description *protobuf.CommunityDescription)
func (*Community) EditCategory ¶ added in v0.79.3
func (*Community) EditChat ¶ added in v0.79.8
func (o *Community) EditChat(chatID string, chat *protobuf.CommunityChat) (*CommunityChanges, error)
func (*Community) GetMemberPubkeys ¶ added in v0.102.2
func (*Community) Images ¶ added in v0.101.1
func (o *Community) Images() map[string]*protobuf.IdentityImage
func (*Community) IntroMessage ¶ added in v0.100.1
func (*Community) InvitationOnly ¶ added in v0.72.0
func (*Community) InviteUserToChat ¶
func (*Community) InviteUserToOrg ¶
func (*Community) IsMemberAdmin ¶ added in v0.74.2
func (*Community) IsMemberInChat ¶
func (*Community) MagnetlinkMessageChannelID ¶ added in v0.96.2
func (*Community) MarshalJSON ¶
func (*Community) MarshalPublicAPIJSON ¶ added in v0.86.2
func (*Community) MarshaledDescription ¶
func (*Community) MemberIdentity ¶ added in v0.94.12
func (*Community) MemberUpdateChannelID ¶ added in v0.103.3
func (*Community) MembersCount ¶ added in v0.76.3
func (*Community) OutroMessage ¶ added in v0.100.1
func (*Community) PrivateKey ¶
func (o *Community) PrivateKey() *ecdsa.PrivateKey
func (*Community) RemoveOurselvesFromOrg ¶ added in v0.110.2
func (*Community) RemoveRoleFromMember ¶ added in v0.115.5
func (o *Community) RemoveRoleFromMember(pk *ecdsa.PublicKey, role protobuf.CommunityMember_Roles) (*protobuf.CommunityDescription, error)
func (*Community) RemoveUserFromChat ¶
func (*Community) RemoveUserFromOrg ¶
func (*Community) ReorderCategories ¶ added in v0.79.3
func (o *Community) ReorderCategories(categoryID string, newPosition int) (*CommunityChanges, error)
func (*Community) ReorderChat ¶ added in v0.79.3
func (*Community) RequestedToJoinAt ¶ added in v0.72.0
func (*Community) RequestsToJoin ¶ added in v0.83.8
func (o *Community) RequestsToJoin() []*RequestToJoin
func (*Community) SortCategoryChats ¶ added in v0.79.3
func (o *Community) SortCategoryChats(changes *CommunityChanges, categoryID string)
func (*Community) StatusUpdatesChannelID ¶ added in v0.83.2
func (*Community) Tags ¶ added in v0.102.5
func (o *Community) Tags() []CommunityTag
func (*Community) ToSyncCommunityProtobuf ¶ added in v0.83.8
func (o *Community) ToSyncCommunityProtobuf(clock uint64, communitySettings *CommunitySettings) (*protobuf.SyncCommunity, error)
func (*Community) UnbanUserFromCommunity ¶ added in v0.102.6
func (*Community) UpdateChatFirstMessageTimestamp ¶ added in v0.109.1
func (o *Community) UpdateChatFirstMessageTimestamp(chatID string, timestamp uint32) (*CommunityChanges, error)
func (*Community) UpdateCommunityDescription ¶ added in v0.72.0
func (o *Community) UpdateCommunityDescription(signer *ecdsa.PublicKey, description *protobuf.CommunityDescription, rawMessage []byte) (*CommunityChanges, error)
UpdateCommunityDescription will update the community to the new community description and return a list of changes
func (*Community) ValidateRequestToJoin ¶ added in v0.72.0
func (o *Community) ValidateRequestToJoin(signer *ecdsa.PublicKey, request *protobuf.CommunityRequestToJoin) error
ValidateRequestToJoin validates a request, checks that the right permissions are applied
type CommunityAdminSettings ¶ added in v0.100.0
type CommunityAdminSettings struct {
PinMessageAllMembersEnabled bool `json:"pinMessageAllMembersEnabled"`
}
type CommunityCategory ¶ added in v0.79.3
type CommunityChanges ¶
type CommunityChanges struct { Community *Community `json:"community"` MembersAdded map[string]*protobuf.CommunityMember `json:"membersAdded"` MembersRemoved map[string]*protobuf.CommunityMember `json:"membersRemoved"` ChatsRemoved map[string]*protobuf.CommunityChat `json:"chatsRemoved"` ChatsAdded map[string]*protobuf.CommunityChat `json:"chatsAdded"` ChatsModified map[string]*CommunityChatChanges `json:"chatsModified"` CategoriesRemoved []string `json:"categoriesRemoved"` CategoriesAdded map[string]*protobuf.CommunityCategory `json:"categoriesAdded"` CategoriesModified map[string]*protobuf.CommunityCategory `json:"categoriesModified"` // ShouldMemberJoin indicates whether the user should join this community // automatically ShouldMemberJoin bool `json:"memberAdded"` // ShouldMemberJoin indicates whether the user should leave this community // automatically ShouldMemberLeave bool `json:"memberRemoved"` }
func (*CommunityChanges) HasMemberLeft ¶ added in v0.72.0
func (c *CommunityChanges) HasMemberLeft(identity string) bool
func (*CommunityChanges) HasNewMember ¶ added in v0.72.0
func (c *CommunityChanges) HasNewMember(identity string) bool
type CommunityChat ¶ added in v0.72.0
type CommunityChat struct { ID string `json:"id"` Name string `json:"name"` Color string `json:"color"` Emoji string `json:"emoji"` Description string `json:"description"` Members map[string]*protobuf.CommunityMember `json:"members"` Permissions *protobuf.CommunityPermissions `json:"permissions"` CanPost bool `json:"canPost"` Position int `json:"position"` CategoryID string `json:"categoryID"` }
type CommunityChatChanges ¶
type CommunityChatChanges struct { ChatModified *protobuf.CommunityChat MembersAdded map[string]*protobuf.CommunityMember MembersRemoved map[string]*protobuf.CommunityMember CategoryModified string PositionModified int FirstMessageTimestampModified uint32 }
type CommunityResponse ¶ added in v0.72.0
type CommunityResponse struct { Community *Community `json:"community"` Changes *CommunityChanges `json:"changes"` }
type CommunitySettings ¶ added in v0.96.4
type CommunityTag ¶ added in v0.102.5
type Config ¶
type Config struct { PrivateKey *ecdsa.PrivateKey CommunityDescription *protobuf.CommunityDescription MarshaledCommunityDescription []byte ID *ecdsa.PublicKey Joined bool Requested bool Verified bool Spectated bool Muted bool Logger *zap.Logger RequestedToJoinAt uint64 RequestsToJoin []*RequestToJoin MemberIdentity *ecdsa.PublicKey SyncedAt uint64 }
type EncodedArchiveData ¶ added in v0.98.1
type EncodedArchiveData struct {
// contains filtered or unexported fields
}
type HistoryArchiveDownloadTask ¶ added in v0.117.1
type HistoryArchiveDownloadTask struct { CancelChan chan struct{} Waiter sync.WaitGroup Cancelled bool // contains filtered or unexported fields }
func (*HistoryArchiveDownloadTask) Cancel ¶ added in v0.117.1
func (t *HistoryArchiveDownloadTask) Cancel()
func (*HistoryArchiveDownloadTask) IsCancelled ¶ added in v0.125.1
func (t *HistoryArchiveDownloadTask) IsCancelled() bool
type HistoryArchiveDownloadTaskInfo ¶ added in v0.117.1
type KnownCommunitiesResponse ¶ added in v0.100.1
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
func NewManager ¶
func (*Manager) AcceptRequestToJoin ¶ added in v0.72.0
func (m *Manager) AcceptRequestToJoin(request *requests.AcceptRequestToJoinCommunity) (*Community, error)
func (*Manager) AddHistoryArchiveDownloadTask ¶ added in v0.117.1
func (m *Manager) AddHistoryArchiveDownloadTask(communityID string, task *HistoryArchiveDownloadTask)
func (*Manager) AddMemberOwnerToCommunity ¶ added in v0.115.6
func (*Manager) AddRoleToMember ¶ added in v0.115.5
func (m *Manager) AddRoleToMember(request *requests.AddRoleToMember) (*Community, error)
func (*Manager) BanUserFromCommunity ¶ added in v0.73.9
func (m *Manager) BanUserFromCommunity(request *requests.BanUserFromCommunity) (*Community, error)
func (*Manager) CancelRequestToJoin ¶ added in v0.114.1
func (m *Manager) CancelRequestToJoin(request *requests.CancelRequestToJoinCommunity) (*RequestToJoin, *Community, error)
func (*Manager) CanceledRequestsToJoinForCommunity ¶ added in v0.114.1
func (m *Manager) CanceledRequestsToJoinForCommunity(id types.HexBytes) ([]*RequestToJoin, error)
func (*Manager) CanceledRequestsToJoinForUser ¶ added in v0.114.1
func (m *Manager) CanceledRequestsToJoinForUser(pk *ecdsa.PublicKey) ([]*RequestToJoin, error)
func (*Manager) CommunitySettingsExist ¶ added in v0.96.4
func (*Manager) CreateAndSeedHistoryArchive ¶ added in v0.98.1
func (*Manager) CreateCategory ¶ added in v0.79.3
func (m *Manager) CreateCategory(request *requests.CreateCommunityCategory, publish bool) (*Community, *CommunityChanges, error)
func (*Manager) CreateChat ¶
func (m *Manager) CreateChat(communityID types.HexBytes, chat *protobuf.CommunityChat, publish bool, thirdPartyID string) (*Community, *CommunityChanges, error)
func (*Manager) CreateCommunity ¶
func (m *Manager) CreateCommunity(request *requests.CreateCommunity, publish bool) (*Community, error)
CreateCommunity takes a description, generates an ID for it, saves it and return it
func (*Manager) CreateHistoryArchiveTorrent ¶ added in v0.98.1
func (*Manager) CreateHistoryArchiveTorrentFromDB ¶ added in v0.113.0
func (*Manager) CreateHistoryArchiveTorrentFromMessages ¶ added in v0.113.0
func (*Manager) DeclineRequestToJoin ¶ added in v0.72.0
func (m *Manager) DeclineRequestToJoin(request *requests.DeclineRequestToJoinCommunity) error
func (*Manager) DeclinedRequestsToJoinForCommunity ¶ added in v0.106.1
func (m *Manager) DeclinedRequestsToJoinForCommunity(id types.HexBytes) ([]*RequestToJoin, error)
func (*Manager) DeleteCategory ¶ added in v0.79.3
func (m *Manager) DeleteCategory(request *requests.DeleteCommunityCategory) (*Community, *CommunityChanges, error)
func (*Manager) DeleteChat ¶ added in v0.83.8
func (*Manager) DeleteCommunity ¶ added in v0.114.1
func (*Manager) DeleteCommunitySettings ¶ added in v0.96.4
func (*Manager) DeleteHistoryArchiveDownloadTask ¶ added in v0.117.3
func (*Manager) DeletedCommunities ¶ added in v0.98.3
func (*Manager) DownloadHistoryArchivesByMagnetlink ¶ added in v0.100.0
func (*Manager) EditCategory ¶ added in v0.79.3
func (m *Manager) EditCategory(request *requests.EditCommunityCategory) (*Community, *CommunityChanges, error)
func (*Manager) EditChat ¶ added in v0.79.8
func (m *Manager) EditChat(communityID types.HexBytes, chatID string, chat *protobuf.CommunityChat) (*Community, *CommunityChanges, error)
func (*Manager) EditChatFirstMessageTimestamp ¶ added in v0.109.1
func (*Manager) EditCommunity ¶ added in v0.79.0
func (m *Manager) EditCommunity(request *requests.EditCommunity) (*Community, error)
EditCommunity takes a description, updates the community with the description, saves it and returns it
func (*Manager) ExportCommunity ¶
func (*Manager) ExtractMessagesFromHistoryArchive ¶ added in v0.125.0
func (*Manager) GetAdminCommunitiesChatIDs ¶ added in v0.97.4
func (*Manager) GetByIDString ¶
func (*Manager) GetCommunitiesSettings ¶ added in v0.96.4
func (m *Manager) GetCommunitiesSettings() ([]CommunitySettings, error)
func (*Manager) GetCommunityChatsFilters ¶ added in v0.98.1
func (*Manager) GetCommunityChatsTopics ¶ added in v0.98.1
func (*Manager) GetCommunitySettingsByID ¶ added in v0.96.4
func (m *Manager) GetCommunitySettingsByID(id types.HexBytes) (*CommunitySettings, error)
func (*Manager) GetHistoryArchiveDownloadTask ¶ added in v0.117.1
func (m *Manager) GetHistoryArchiveDownloadTask(communityID string) *HistoryArchiveDownloadTask
func (*Manager) GetHistoryArchiveMagnetlink ¶ added in v0.98.1
func (*Manager) GetHistoryArchivePartitionStartTimestamp ¶ added in v0.98.1
func (*Manager) GetLastMessageArchiveEndDate ¶ added in v0.98.1
func (*Manager) GetLastSeenMagnetlink ¶ added in v0.117.3
func (*Manager) GetLatestWakuMessageTimestamp ¶ added in v0.98.1
func (*Manager) GetMagnetlinkMessageClock ¶ added in v0.98.1
func (*Manager) GetMessageArchiveIDsToImport ¶ added in v0.117.1
func (*Manager) GetOldestWakuMessageTimestamp ¶ added in v0.98.1
func (*Manager) GetRequestToJoin ¶ added in v0.103.2
func (m *Manager) GetRequestToJoin(ID types.HexBytes) (*RequestToJoin, error)
func (*Manager) GetRequestToJoinIDByPkAndCommunityID ¶ added in v0.113.0
func (*Manager) GetStoredDescriptionForCommunities ¶ added in v0.100.1
func (m *Manager) GetStoredDescriptionForCommunities(communityIDs []types.HexBytes) (response *KnownCommunitiesResponse, err error)
func (*Manager) GetSyncedRawCommunity ¶ added in v0.83.8
func (m *Manager) GetSyncedRawCommunity(id []byte) (*RawCommunityRow, error)
func (*Manager) HandleCommunityCancelRequestToJoin ¶ added in v0.114.1
func (m *Manager) HandleCommunityCancelRequestToJoin(signer *ecdsa.PublicKey, request *protobuf.CommunityCancelRequestToJoin) (*RequestToJoin, error)
func (*Manager) HandleCommunityDescriptionMessage ¶
func (m *Manager) HandleCommunityDescriptionMessage(signer *ecdsa.PublicKey, description *protobuf.CommunityDescription, payload []byte) (*CommunityResponse, error)
func (*Manager) HandleCommunityInvitation ¶
func (m *Manager) HandleCommunityInvitation(signer *ecdsa.PublicKey, invitation *protobuf.CommunityInvitation, payload []byte) (*CommunityResponse, error)
TODO: This is not fully implemented, we want to save the grant passed at this stage and make sure it's used when publishing.
func (*Manager) HandleCommunityRequestToJoin ¶ added in v0.72.0
func (m *Manager) HandleCommunityRequestToJoin(signer *ecdsa.PublicKey, request *protobuf.CommunityRequestToJoin) (*RequestToJoin, error)
func (*Manager) HandleCommunityRequestToJoinResponse ¶ added in v0.103.2
func (m *Manager) HandleCommunityRequestToJoinResponse(signer *ecdsa.PublicKey, request *protobuf.CommunityRequestToJoinResponse) (*RequestToJoin, error)
func (*Manager) HandleCommunityRequestToLeave ¶ added in v0.106.3
func (*Manager) HandleSyncCommunitySettings ¶ added in v0.102.2
func (m *Manager) HandleSyncCommunitySettings(syncCommunitySettings *protobuf.SyncCommunitySettings) (*CommunitySettings, error)
func (*Manager) HandleWrappedCommunityDescriptionMessage ¶
func (m *Manager) HandleWrappedCommunityDescriptionMessage(payload []byte) (*CommunityResponse, error)
func (*Manager) ImportCommunity ¶
func (m *Manager) ImportCommunity(key *ecdsa.PrivateKey) (*Community, error)
func (*Manager) InviteUsersToCommunity ¶ added in v0.72.0
func (*Manager) IsAdminCommunity ¶ added in v0.100.0
func (*Manager) IsAdminCommunityByID ¶ added in v0.106.3
func (*Manager) IsEncrypted ¶ added in v0.102.2
func (*Manager) IsJoinedCommunity ¶ added in v0.100.0
func (*Manager) IsSeedingHistoryArchiveTorrent ¶ added in v0.98.1
func (*Manager) JoinCommunity ¶
func (*Manager) JoinedAndPendingCommunitiesWithRequests ¶ added in v0.83.8
func (*Manager) LeaveCommunity ¶
func (*Manager) LoadHistoryArchiveIndexFromFile ¶ added in v0.100.0
func (m *Manager) LoadHistoryArchiveIndexFromFile(myKey *ecdsa.PrivateKey, communityID types.HexBytes) (*protobuf.WakuMessageArchiveIndex, error)
func (*Manager) PendingRequestsToJoinForCommunity ¶ added in v0.72.0
func (m *Manager) PendingRequestsToJoinForCommunity(id types.HexBytes) ([]*RequestToJoin, error)
func (*Manager) PendingRequestsToJoinForUser ¶ added in v0.72.0
func (m *Manager) PendingRequestsToJoinForUser(pk *ecdsa.PublicKey) ([]*RequestToJoin, error)
func (*Manager) RemoveRoleFromMember ¶ added in v0.115.5
func (m *Manager) RemoveRoleFromMember(request *requests.RemoveRoleFromMember) (*Community, error)
func (*Manager) RemoveUserFromCommunity ¶
func (*Manager) ReorderCategories ¶ added in v0.79.3
func (m *Manager) ReorderCategories(request *requests.ReorderCommunityCategories) (*Community, *CommunityChanges, error)
func (*Manager) ReorderChat ¶ added in v0.79.3
func (m *Manager) ReorderChat(request *requests.ReorderCommunityChat) (*Community, *CommunityChanges, error)
func (*Manager) RequestToJoin ¶ added in v0.72.0
func (m *Manager) RequestToJoin(requester *ecdsa.PublicKey, request *requests.RequestToJoinCommunity) (*Community, *RequestToJoin, error)
func (*Manager) SaveCommunitySettings ¶ added in v0.96.4
func (m *Manager) SaveCommunitySettings(settings CommunitySettings) error
func (*Manager) SaveRequestToJoin ¶ added in v0.83.8
func (m *Manager) SaveRequestToJoin(request *RequestToJoin) error
func (*Manager) SeedHistoryArchiveTorrent ¶ added in v0.98.1
func (*Manager) SetMessageArchiveIDImported ¶ added in v0.117.1
func (*Manager) SetPrivateKey ¶ added in v0.83.8
func (m *Manager) SetPrivateKey(id []byte, privKey *ecdsa.PrivateKey) error
func (*Manager) SetSyncClock ¶ added in v0.83.8
func (*Manager) SetTorrentConfig ¶ added in v0.98.1
func (m *Manager) SetTorrentConfig(config *params.TorrentConfig)
func (*Manager) ShouldHandleSyncCommunity ¶ added in v0.83.8
func (m *Manager) ShouldHandleSyncCommunity(community *protobuf.SyncCommunity) (bool, error)
func (*Manager) ShouldHandleSyncCommunitySettings ¶ added in v0.102.2
func (m *Manager) ShouldHandleSyncCommunitySettings(communitySettings *protobuf.SyncCommunitySettings) (bool, error)
func (*Manager) SpectateCommunity ¶ added in v0.111.5
func (*Manager) StartHistoryArchiveTasksInterval ¶ added in v0.98.1
func (*Manager) StartTorrentClient ¶ added in v0.98.1
func (*Manager) StopHistoryArchiveTasksInterval ¶ added in v0.98.1
func (*Manager) StopHistoryArchiveTasksIntervals ¶ added in v0.98.1
func (m *Manager) StopHistoryArchiveTasksIntervals()
func (*Manager) StopTorrentClient ¶ added in v0.98.1
func (*Manager) StoreWakuMessage ¶ added in v0.97.4
func (*Manager) StoreWakuMessages ¶ added in v0.114.1
func (*Manager) Subscribe ¶
func (m *Manager) Subscribe() chan *Subscription
func (*Manager) TorrentClientStarted ¶ added in v0.98.1
func (*Manager) TorrentFileExists ¶ added in v0.110.2
func (*Manager) UnbanUserFromCommunity ¶ added in v0.102.6
func (m *Manager) UnbanUserFromCommunity(request *requests.UnbanUserFromCommunity) (*Community, error)
func (*Manager) UnseedHistoryArchiveTorrent ¶ added in v0.98.1
func (*Manager) UpdateCommunityDescriptionMagnetlinkMessageClock ¶ added in v0.98.1
func (*Manager) UpdateCommunitySettings ¶ added in v0.96.4
func (m *Manager) UpdateCommunitySettings(settings CommunitySettings) error
func (*Manager) UpdateLastSeenMagnetlink ¶ added in v0.117.3
type Persistence ¶
type Persistence struct {
// contains filtered or unexported fields
}
func (*Persistence) AllCommunities ¶
func (p *Persistence) AllCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
func (*Persistence) CanceledRequestsToJoinForCommunity ¶ added in v0.114.1
func (p *Persistence) CanceledRequestsToJoinForCommunity(id []byte) ([]*RequestToJoin, error)
func (*Persistence) CanceledRequestsToJoinForUser ¶ added in v0.114.1
func (p *Persistence) CanceledRequestsToJoinForUser(pk string) ([]*RequestToJoin, error)
func (*Persistence) CommunitySettingsExist ¶ added in v0.96.4
func (p *Persistence) CommunitySettingsExist(communityID types.HexBytes) (bool, error)
func (*Persistence) CreatedCommunities ¶
func (p *Persistence) CreatedCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
func (*Persistence) DeclinedRequestsToJoinForCommunity ¶ added in v0.106.1
func (p *Persistence) DeclinedRequestsToJoinForCommunity(id []byte) ([]*RequestToJoin, error)
func (*Persistence) DeleteCommunity ¶ added in v0.114.1
func (p *Persistence) DeleteCommunity(id types.HexBytes) error
func (*Persistence) DeleteCommunitySettings ¶ added in v0.96.4
func (p *Persistence) DeleteCommunitySettings(communityID types.HexBytes) error
func (*Persistence) DeletedCommunities ¶ added in v0.98.3
func (p *Persistence) DeletedCommunities(memberIdentity *ecdsa.PublicKey) (comms []*Community, err error)
func (*Persistence) GetCommunitiesSettings ¶ added in v0.96.4
func (p *Persistence) GetCommunitiesSettings() ([]CommunitySettings, error)
func (*Persistence) GetCommunityChatIDs ¶ added in v0.98.1
func (p *Persistence) GetCommunityChatIDs(communityID types.HexBytes) ([]string, error)
func (*Persistence) GetCommunitySettingsByID ¶ added in v0.96.4
func (p *Persistence) GetCommunitySettingsByID(communityID types.HexBytes) (*CommunitySettings, error)
func (*Persistence) GetDownloadedMessageArchiveIDs ¶ added in v0.117.1
func (p *Persistence) GetDownloadedMessageArchiveIDs(communityID types.HexBytes) ([]string, error)
func (*Persistence) GetLastMessageArchiveEndDate ¶ added in v0.98.1
func (p *Persistence) GetLastMessageArchiveEndDate(communityID types.HexBytes) (uint64, error)
func (*Persistence) GetLastSeenMagnetlink ¶ added in v0.117.3
func (p *Persistence) GetLastSeenMagnetlink(communityID types.HexBytes) (string, error)
func (*Persistence) GetLatestWakuMessageTimestamp ¶ added in v0.98.1
func (p *Persistence) GetLatestWakuMessageTimestamp(topics []types.TopicType) (uint64, error)
func (*Persistence) GetMagnetlinkMessageClock ¶ added in v0.98.1
func (p *Persistence) GetMagnetlinkMessageClock(communityID types.HexBytes) (uint64, error)
func (*Persistence) GetMessageArchiveIDsToImport ¶ added in v0.117.1
func (p *Persistence) GetMessageArchiveIDsToImport(communityID types.HexBytes) ([]string, error)
func (*Persistence) GetOldestWakuMessageTimestamp ¶ added in v0.98.1
func (p *Persistence) GetOldestWakuMessageTimestamp(topics []types.TopicType) (uint64, error)
func (*Persistence) GetRequestToJoin ¶ added in v0.72.0
func (p *Persistence) GetRequestToJoin(id []byte) (*RequestToJoin, error)
func (*Persistence) GetRequestToJoinByPk ¶ added in v0.114.1
func (p *Persistence) GetRequestToJoinByPk(pk string, communityID []byte, state RequestToJoinState) (*RequestToJoin, error)
func (*Persistence) GetRequestToJoinByPkAndCommunityID ¶ added in v0.129.3
func (p *Persistence) GetRequestToJoinByPkAndCommunityID(pk string, communityID []byte) (*RequestToJoin, error)
func (*Persistence) GetRequestToJoinIDByPkAndCommunityID ¶ added in v0.113.0
func (p *Persistence) GetRequestToJoinIDByPkAndCommunityID(pk string, communityID []byte) ([]byte, error)
func (*Persistence) GetWakuMessagesByFilterTopic ¶ added in v0.98.1
func (*Persistence) HasCommunityArchiveInfo ¶ added in v0.100.0
func (p *Persistence) HasCommunityArchiveInfo(communityID types.HexBytes) (exists bool, err error)
func (*Persistence) HasMessageArchiveID ¶ added in v0.100.0
func (*Persistence) HasPendingRequestsToJoinForUserAndCommunity ¶ added in v0.72.0
func (p *Persistence) HasPendingRequestsToJoinForUserAndCommunity(userPk string, communityID []byte) (bool, error)
func (*Persistence) JoinedAndPendingCommunitiesWithRequests ¶ added in v0.83.8
func (p *Persistence) JoinedAndPendingCommunitiesWithRequests(memberIdentity *ecdsa.PublicKey) (comms []*Community, err error)
func (*Persistence) JoinedCommunities ¶
func (p *Persistence) JoinedCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
func (*Persistence) PendingRequestsToJoinForCommunity ¶ added in v0.72.0
func (p *Persistence) PendingRequestsToJoinForCommunity(id []byte) ([]*RequestToJoin, error)
func (*Persistence) PendingRequestsToJoinForUser ¶ added in v0.72.0
func (p *Persistence) PendingRequestsToJoinForUser(pk string) ([]*RequestToJoin, error)
func (*Persistence) RequestsToJoinForCommunityWithState ¶ added in v0.106.1
func (p *Persistence) RequestsToJoinForCommunityWithState(id []byte, state RequestToJoinState) ([]*RequestToJoin, error)
func (*Persistence) SaveCommunity ¶
func (p *Persistence) SaveCommunity(community *Community) error
func (*Persistence) SaveCommunityArchiveInfo ¶ added in v0.100.0
func (*Persistence) SaveCommunitySettings ¶ added in v0.96.4
func (p *Persistence) SaveCommunitySettings(communitySettings CommunitySettings) error
func (*Persistence) SaveLastMessageArchiveEndDate ¶ added in v0.98.1
func (p *Persistence) SaveLastMessageArchiveEndDate(communityID types.HexBytes, endDate uint64) error
func (*Persistence) SaveMessageArchiveID ¶ added in v0.100.0
func (p *Persistence) SaveMessageArchiveID(communityID types.HexBytes, hash string) error
func (*Persistence) SaveRequestToJoin ¶ added in v0.72.0
func (p *Persistence) SaveRequestToJoin(request *RequestToJoin) (err error)
func (*Persistence) SaveRequestToLeave ¶ added in v0.106.3
func (p *Persistence) SaveRequestToLeave(request *RequestToLeave) error
func (*Persistence) SaveWakuMessage ¶ added in v0.97.4
func (p *Persistence) SaveWakuMessage(message *types.Message) error
func (*Persistence) SaveWakuMessages ¶ added in v0.111.5
func (p *Persistence) SaveWakuMessages(messages []*types.Message) (err error)
func (*Persistence) SetMessageArchiveIDImported ¶ added in v0.117.1
func (*Persistence) SetMuted ¶ added in v0.81.0
func (p *Persistence) SetMuted(communityID []byte, muted bool) error
func (*Persistence) SetPrivateKey ¶ added in v0.83.8
func (p *Persistence) SetPrivateKey(id []byte, privKey *ecdsa.PrivateKey) error
func (*Persistence) SetRequestToJoinState ¶ added in v0.72.0
func (p *Persistence) SetRequestToJoinState(pk string, communityID []byte, state RequestToJoinState) error
func (*Persistence) SetSyncClock ¶ added in v0.83.8
func (p *Persistence) SetSyncClock(id []byte, clock uint64) error
func (*Persistence) ShouldHandleSyncCommunity ¶ added in v0.83.8
func (p *Persistence) ShouldHandleSyncCommunity(community *protobuf.SyncCommunity) (bool, error)
func (*Persistence) ShouldHandleSyncCommunitySettings ¶ added in v0.102.2
func (p *Persistence) ShouldHandleSyncCommunitySettings(settings *protobuf.SyncCommunitySettings) (bool, error)
func (*Persistence) SpectatedCommunities ¶ added in v0.111.5
func (p *Persistence) SpectatedCommunities(memberIdentity *ecdsa.PublicKey) ([]*Community, error)
func (*Persistence) UpdateCommunitySettings ¶ added in v0.96.4
func (p *Persistence) UpdateCommunitySettings(communitySettings CommunitySettings) error
func (*Persistence) UpdateLastMessageArchiveEndDate ¶ added in v0.98.1
func (p *Persistence) UpdateLastMessageArchiveEndDate(communityID types.HexBytes, endDate uint64) error
func (*Persistence) UpdateLastSeenMagnetlink ¶ added in v0.117.3
func (p *Persistence) UpdateLastSeenMagnetlink(communityID types.HexBytes, magnetlinkURI string) error
func (*Persistence) UpdateMagnetlinkMessageClock ¶ added in v0.98.1
func (p *Persistence) UpdateMagnetlinkMessageClock(communityID types.HexBytes, clock uint64) error
type RawCommunityRow ¶ added in v0.97.4
type RequestToJoin ¶ added in v0.72.0
type RequestToJoin struct { ID types.HexBytes `json:"id"` PublicKey string `json:"publicKey"` Clock uint64 `json:"clock"` ENSName string `json:"ensName,omitempty"` ChatID string `json:"chatId"` CommunityID types.HexBytes `json:"communityId"` State RequestToJoinState `json:"state"` Our bool `json:"our"` }
func (*RequestToJoin) CalculateID ¶ added in v0.72.0
func (r *RequestToJoin) CalculateID()
func (*RequestToJoin) Empty ¶ added in v0.83.8
func (r *RequestToJoin) Empty() bool
func (*RequestToJoin) InitFromSyncProtobuf ¶ added in v0.83.8
func (r *RequestToJoin) InitFromSyncProtobuf(proto *protobuf.SyncCommunityRequestsToJoin)
func (*RequestToJoin) ToSyncProtobuf ¶ added in v0.83.8
func (r *RequestToJoin) ToSyncProtobuf() *protobuf.SyncCommunityRequestsToJoin
type RequestToJoinState ¶ added in v0.83.8
type RequestToJoinState uint
const ( RequestToJoinStatePending RequestToJoinState = iota + 1 RequestToJoinStateDeclined RequestToJoinStateAccepted RequestToJoinStateCanceled )
type RequestToLeave ¶ added in v0.106.3
type RequestToLeave struct { ID types.HexBytes `json:"id"` PublicKey string `json:"publicKey"` Clock uint64 `json:"clock"` CommunityID types.HexBytes `json:"communityId"` }
func NewRequestToLeave ¶ added in v0.106.3
func NewRequestToLeave(publicKey string, protobuf *protobuf.CommunityRequestToLeave) *RequestToLeave
type Subscription ¶
type Subscription struct { Community *Community Invitations []*protobuf.CommunityInvitation CreatingHistoryArchivesSignal *signal.CreatingHistoryArchivesSignal HistoryArchivesCreatedSignal *signal.HistoryArchivesCreatedSignal NoHistoryArchivesCreatedSignal *signal.NoHistoryArchivesCreatedSignal HistoryArchivesSeedingSignal *signal.HistoryArchivesSeedingSignal HistoryArchivesUnseededSignal *signal.HistoryArchivesUnseededSignal HistoryArchiveDownloadedSignal *signal.HistoryArchiveDownloadedSignal DownloadingHistoryArchivesStartedSignal *signal.DownloadingHistoryArchivesStartedSignal DownloadingHistoryArchivesFinishedSignal *signal.DownloadingHistoryArchivesFinishedSignal ImportingHistoryArchiveMessagesSignal *signal.ImportingHistoryArchiveMessagesSignal }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.