Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccountsStore ¶
type AccountsStore interface {
All(*[]types.Account) error
GetByDiscordGuild(snowflake string, account *types.Account) error
GetByServerKey(serverKey string, account *types.Account) error
UpsertBase(types.BaseAccount) error
Remove(snowflake string) error
AddServer(snowflake string, server types.Server) error
UpdateServer(snowflake string, server types.Server) error
RemoveServer(snowflake, serverKey string) error
AddClan(serverKey string, clan types.Clan) error
RemoveClan(serverKey, clanTag string) error
SetClans(serverKey string, clans []types.Clan) error
}
AccountsStore is for accounts storage
type ChatsStore ¶
type ChatsStore interface {
Log(types.ChatMessage) error
GetNext(serverKey string, ChatMessage *types.ChatMessage) error
}
ChatsStore is for logging chat
type DiscordAuthsStore ¶
type DiscordAuthsStore interface {
Get(discordName string, da *types.DiscordAuth) error
GetSnowflake(snowflake string, da *types.DiscordAuth) error
Upsert(types.DiscordAuth) error
Remove(types.SteamInfo) error
}
DiscordAuthsStore is for accessing the discord -> user authentications in the store.
Upsert created or updates a discord auth ¶
Remove removes a discord auth
type RaidAlertsStore ¶
type RaidAlertsStore interface {
GetReady(*[]types.RaidAlert) error
AddInfo(alertIn time.Duration, ed types.EntityDeath) error
Remove(types.RaidAlert) error
}
RaidAlertsStore is for accessing raid information. The raid information comes in as types.EntityDeath and comes out as types.RaidAlert
GetReady gets raid alerts that are ready to alert ¶
AddInfo adds or updated raid information to a raid alert ¶
Remove deletes a raid alert
type Storage ¶
type Storage interface {
Copy() Storage
Close()
Init()
Accounts() AccountsStore
Users() UsersStore
Chats() ChatsStore
DiscordAuths() DiscordAuthsStore
RaidAlerts() RaidAlertsStore
}
Storage is a complete implementation of the data store for users, clans, discord auth requests, raid alerts, and chats.
Copy creates a new DB connection. Should always close the connection when you're done with it.
Close closes the session ¶
Init creates indexes, and should always be called when Poundbot first starts
type UsersStore ¶
type UsersStore interface {
Get(steamID uint64, u *types.User) error
UpsertBase(baseUser types.BaseUser) error
}
UsersStore is for accessing the user store.
Get gets a user from store.
UpsertBase updates or creats a user in the store ¶
RemoveClan removes a clan tag from all users e.g. when a clan is removed.
RemoveClansNotIn is used for removing all clan tags not in the provided list from all users in the data store.
SetClanIn sets the clan tag on all users who have the provided steam IDs.