Documentation ¶
Index ¶
- Constants
- Variables
- func AddFriends(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) error
- func AddGroupUsers(ctx context.Context, logger *zap.Logger, db *sql.DB, router MessageRouter, ...) error
- func AuthenticateCustom(ctx context.Context, logger *zap.Logger, db *sql.DB, customID, username string, ...) (string, string, bool, error)
- func AuthenticateDevice(ctx context.Context, logger *zap.Logger, db *sql.DB, deviceID, username string, ...) (string, string, bool, error)
- func AuthenticateEmail(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) (string, string, bool, error)
- func AuthenticateFacebook(ctx context.Context, logger *zap.Logger, db *sql.DB, client *social.Client, ...) (string, string, bool, error)
- func AuthenticateGameCenter(ctx context.Context, logger *zap.Logger, db *sql.DB, client *social.Client, ...) (string, string, bool, error)
- func AuthenticateGoogle(ctx context.Context, logger *zap.Logger, db *sql.DB, client *social.Client, ...) (string, string, bool, error)
- func AuthenticateSteam(ctx context.Context, logger *zap.Logger, db *sql.DB, client *social.Client, ...) (string, string, bool, error)
- func AuthenticateUsername(ctx context.Context, logger *zap.Logger, db *sql.DB, username, password string) (string, error)
- func BanUsers(ctx context.Context, logger *zap.Logger, db *sql.DB, ids []string) error
- func BlockFriends(ctx context.Context, logger *zap.Logger, db *sql.DB, currentUser uuid.UUID, ...) error
- func ChannelMessagesList(ctx context.Context, logger *zap.Logger, db *sql.DB, caller uuid.UUID, ...) (*api.ChannelMessageList, error)
- func CreateGroup(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID, ...) (*api.Group, error)
- func DeleteFriends(ctx context.Context, logger *zap.Logger, db *sql.DB, currentUser uuid.UUID, ...) error
- func DeleteGroup(ctx context.Context, logger *zap.Logger, db *sql.DB, groupID uuid.UUID, ...) error
- func DeleteUser(ctx context.Context, tx *sql.Tx, userID uuid.UUID) (int64, error)
- func ExecuteRetryable(fn func() error) error
- func GetAccount(ctx context.Context, logger *zap.Logger, db *sql.DB, tracker Tracker, ...) (*api.Account, error)
- func GetAccounts(ctx context.Context, logger *zap.Logger, db *sql.DB, tracker Tracker, ...) ([]*api.Account, error)
- func GetChannelMessages(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID) ([]*api.ChannelMessage, error)
- func GetFriendIDs(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID) (*api.Friends, error)
- func GetFriends(ctx context.Context, logger *zap.Logger, db *sql.DB, tracker Tracker, ...) (*api.Friends, error)
- func GetGroups(ctx context.Context, logger *zap.Logger, db *sql.DB, ids []string) ([]*api.Group, error)
- func GetUsers(ctx context.Context, logger *zap.Logger, db *sql.DB, tracker Tracker, ...) (*api.Users, error)
- func GroupDeleteAll(ctx context.Context, logger *zap.Logger, tx *sql.Tx, userID uuid.UUID) error
- func JoinGroup(ctx context.Context, logger *zap.Logger, db *sql.DB, router MessageRouter, ...) error
- func KickGroupUsers(ctx context.Context, logger *zap.Logger, db *sql.DB, caller uuid.UUID, ...) error
- func LeaderboardRecordDelete(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) error
- func LeaderboardRecordReadAll(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID) ([]*api.LeaderboardRecord, error)
- func LeaderboardRecordWrite(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) (*api.LeaderboardRecord, error)
- func LeaderboardRecordsDeleteAll(ctx context.Context, logger *zap.Logger, tx *sql.Tx, userID uuid.UUID) error
- func LeaderboardRecordsHaystack(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) ([]*api.LeaderboardRecord, error)
- func LeaderboardRecordsList(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) (*api.LeaderboardRecordList, error)
- func LeaveGroup(ctx context.Context, logger *zap.Logger, db *sql.DB, groupID uuid.UUID, ...) error
- func ListGroupUsers(ctx context.Context, logger *zap.Logger, db *sql.DB, tracker Tracker, ...) (*api.GroupUserList, error)
- func ListGroups(ctx context.Context, logger *zap.Logger, db *sql.DB, name string, limit int, ...) (*api.GroupList, error)
- func ListUserGroups(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID) (*api.UserGroupList, error)
- func ListWalletLedger(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID) ([]*walletLedger, error)
- func NewConfig(logger *zap.Logger) *config
- func NewJSONFileLogger(consoleLogger *zap.Logger, fileName string, level zapcore.Level) *zap.Logger
- func NewJSONLogger(output *os.File, level zapcore.Level) *zap.Logger
- func NewMultiLogger(loggers ...*zap.Logger) *zap.Logger
- func NewRotatingJSONFileLogger(consoleLogger *zap.Logger, config Config, level zapcore.Level) *zap.Logger
- func NewRuntimeGoContext(ctx context.Context, env map[string]string, mode RuntimeExecutionMode, ...) context.Context
- func NewRuntimeGoLogger(logger *zap.Logger) runtime.Logger
- func NewRuntimeLuaContext(l *lua.LState, env *lua.LTable, mode RuntimeExecutionMode, ...) *lua.LTable
- func NewRuntimeProviderGo(logger, startupLogger *zap.Logger, db *sql.DB, config Config, ...) ([]string, map[string]RuntimeRpcFunction, map[string]RuntimeBeforeRtFunction, ...)
- func NewRuntimeProviderLua(logger, startupLogger *zap.Logger, db *sql.DB, ...) ([]string, map[string]RuntimeRpcFunction, map[string]RuntimeBeforeRtFunction, ...)
- func NewSocketWsAcceptor(logger *zap.Logger, config Config, sessionRegistry *SessionRegistry, ...) func(http.ResponseWriter, *http.Request)
- func NotificationDelete(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID, ...) error
- func NotificationList(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID, ...) (*api.NotificationList, error)
- func NotificationSave(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) error
- func NotificationSend(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) error
- func OpenBit32(l *lua.LState) int
- func OpenOs(L *lua.LState) int
- func OpenPackage(moduleCache *RuntimeLuaModuleCache) func(L *lua.LState) int
- func PromoteGroupUsers(ctx context.Context, logger *zap.Logger, db *sql.DB, caller uuid.UUID, ...) error
- func RuntimeLuaConvertLuaTable(lv *lua.LTable) map[string]interface{}
- func RuntimeLuaConvertLuaValue(lv lua.LValue) interface{}
- func RuntimeLuaConvertMap(l *lua.LState, data map[string]interface{}) *lua.LTable
- func RuntimeLuaConvertMapString(l *lua.LState, data map[string]string) *lua.LTable
- func RuntimeLuaConvertValue(l *lua.LState, val interface{}) lua.LValue
- func SetupLogging(tmpLogger *zap.Logger, config Config) (*zap.Logger, *zap.Logger)
- func StatusError(code codes.Code, msg string, cause error) error
- func StorageDeleteObjects(ctx context.Context, logger *zap.Logger, db *sql.DB, authoritativeDelete bool, ...) (codes.Code, error)
- func StorageListObjects(ctx context.Context, logger *zap.Logger, db *sql.DB, caller uuid.UUID, ...) (*api.StorageObjectList, codes.Code, error)
- func StorageListObjectsPublicRead(ctx context.Context, logger *zap.Logger, db *sql.DB, collection string, ...) (*api.StorageObjectList, error)
- func StorageListObjectsPublicReadUser(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID, ...) (*api.StorageObjectList, error)
- func StorageListObjectsUser(ctx context.Context, logger *zap.Logger, db *sql.DB, authoritative bool, ...) (*api.StorageObjectList, error)
- func StorageReadAllUserObjects(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID) ([]*api.StorageObject, error)
- func StorageReadObjects(ctx context.Context, logger *zap.Logger, db *sql.DB, caller uuid.UUID, ...) (*api.StorageObjects, error)
- func StorageWriteObjects(ctx context.Context, logger *zap.Logger, db *sql.DB, authoritativeWrite bool, ...) (*api.StorageObjectAcks, codes.Code, error)
- func StreamToChannelId(stream PresenceStream) (string, error)
- func TournamentAddAttempt(ctx context.Context, logger *zap.Logger, db *sql.DB, cache LeaderboardCache, ...) error
- func TournamentCreate(ctx context.Context, logger *zap.Logger, cache LeaderboardCache, ...) error
- func TournamentDelete(ctx context.Context, logger *zap.Logger, cache LeaderboardCache, ...) error
- func TournamentJoin(ctx context.Context, logger *zap.Logger, db *sql.DB, cache LeaderboardCache, ...) error
- func TournamentList(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) (*api.TournamentList, error)
- func TournamentRecordWrite(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) (*api.LeaderboardRecord, error)
- func TournamentRecordsHaystack(ctx context.Context, logger *zap.Logger, db *sql.DB, ...) ([]*api.LeaderboardRecord, error)
- func UnbanUsers(ctx context.Context, logger *zap.Logger, db *sql.DB, ids []string) error
- func UpdateAccount(ctx context.Context, logger *zap.Logger, db *sql.DB, userID uuid.UUID, ...) error
- func UpdateGroup(ctx context.Context, logger *zap.Logger, db *sql.DB, groupID uuid.UUID, ...) error
- func UpdateWalletLedger(ctx context.Context, logger *zap.Logger, db *sql.DB, id uuid.UUID, ...) (*walletLedger, error)
- func UpdateWallets(ctx context.Context, logger *zap.Logger, db *sql.DB, updates []*walletUpdate, ...) error
- func UserExistsAndDoesNotBlock(ctx context.Context, db *sql.DB, checkUserID, blocksUserID uuid.UUID) (bool, error)
- type ApiServer
- func (s *ApiServer) AddFriends(ctx context.Context, in *api.AddFriendsRequest) (*empty.Empty, error)
- func (s *ApiServer) AddGroupUsers(ctx context.Context, in *api.AddGroupUsersRequest) (*empty.Empty, error)
- func (s *ApiServer) AuthenticateCustom(ctx context.Context, in *api.AuthenticateCustomRequest) (*api.Session, error)
- func (s *ApiServer) AuthenticateDevice(ctx context.Context, in *api.AuthenticateDeviceRequest) (*api.Session, error)
- func (s *ApiServer) AuthenticateEmail(ctx context.Context, in *api.AuthenticateEmailRequest) (*api.Session, error)
- func (s *ApiServer) AuthenticateFacebook(ctx context.Context, in *api.AuthenticateFacebookRequest) (*api.Session, error)
- func (s *ApiServer) AuthenticateGameCenter(ctx context.Context, in *api.AuthenticateGameCenterRequest) (*api.Session, error)
- func (s *ApiServer) AuthenticateGoogle(ctx context.Context, in *api.AuthenticateGoogleRequest) (*api.Session, error)
- func (s *ApiServer) AuthenticateSteam(ctx context.Context, in *api.AuthenticateSteamRequest) (*api.Session, error)
- func (s *ApiServer) BlockFriends(ctx context.Context, in *api.BlockFriendsRequest) (*empty.Empty, error)
- func (s *ApiServer) CreateGroup(ctx context.Context, in *api.CreateGroupRequest) (*api.Group, error)
- func (s *ApiServer) DeleteFriends(ctx context.Context, in *api.DeleteFriendsRequest) (*empty.Empty, error)
- func (s *ApiServer) DeleteGroup(ctx context.Context, in *api.DeleteGroupRequest) (*empty.Empty, error)
- func (s *ApiServer) DeleteLeaderboardRecord(ctx context.Context, in *api.DeleteLeaderboardRecordRequest) (*empty.Empty, error)
- func (s *ApiServer) DeleteNotifications(ctx context.Context, in *api.DeleteNotificationsRequest) (*empty.Empty, error)
- func (s *ApiServer) DeleteStorageObjects(ctx context.Context, in *api.DeleteStorageObjectsRequest) (*empty.Empty, error)
- func (s *ApiServer) GetAccount(ctx context.Context, in *empty.Empty) (*api.Account, error)
- func (s *ApiServer) GetUsers(ctx context.Context, in *api.GetUsersRequest) (*api.Users, error)
- func (s *ApiServer) Healthcheck(ctx context.Context, in *empty.Empty) (*empty.Empty, error)
- func (s *ApiServer) ImportFacebookFriends(ctx context.Context, in *api.ImportFacebookFriendsRequest) (*empty.Empty, error)
- func (s *ApiServer) JoinGroup(ctx context.Context, in *api.JoinGroupRequest) (*empty.Empty, error)
- func (s *ApiServer) JoinTournament(ctx context.Context, in *api.JoinTournamentRequest) (*empty.Empty, error)
- func (s *ApiServer) KickGroupUsers(ctx context.Context, in *api.KickGroupUsersRequest) (*empty.Empty, error)
- func (s *ApiServer) LeaveGroup(ctx context.Context, in *api.LeaveGroupRequest) (*empty.Empty, error)
- func (s *ApiServer) LinkCustom(ctx context.Context, in *api.AccountCustom) (*empty.Empty, error)
- func (s *ApiServer) LinkDevice(ctx context.Context, in *api.AccountDevice) (*empty.Empty, error)
- func (s *ApiServer) LinkEmail(ctx context.Context, in *api.AccountEmail) (*empty.Empty, error)
- func (s *ApiServer) LinkFacebook(ctx context.Context, in *api.LinkFacebookRequest) (*empty.Empty, error)
- func (s *ApiServer) LinkGameCenter(ctx context.Context, in *api.AccountGameCenter) (*empty.Empty, error)
- func (s *ApiServer) LinkGoogle(ctx context.Context, in *api.AccountGoogle) (*empty.Empty, error)
- func (s *ApiServer) LinkSteam(ctx context.Context, in *api.AccountSteam) (*empty.Empty, error)
- func (s *ApiServer) ListChannelMessages(ctx context.Context, in *api.ListChannelMessagesRequest) (*api.ChannelMessageList, error)
- func (s *ApiServer) ListFriends(ctx context.Context, in *empty.Empty) (*api.Friends, error)
- func (s *ApiServer) ListGroupUsers(ctx context.Context, in *api.ListGroupUsersRequest) (*api.GroupUserList, error)
- func (s *ApiServer) ListGroups(ctx context.Context, in *api.ListGroupsRequest) (*api.GroupList, error)
- func (s *ApiServer) ListLeaderboardRecords(ctx context.Context, in *api.ListLeaderboardRecordsRequest) (*api.LeaderboardRecordList, error)
- func (s *ApiServer) ListLeaderboardRecordsAroundOwner(ctx context.Context, in *api.ListLeaderboardRecordsAroundOwnerRequest) (*api.LeaderboardRecordList, error)
- func (s *ApiServer) ListMatches(ctx context.Context, in *api.ListMatchesRequest) (*api.MatchList, error)
- func (s *ApiServer) ListNotifications(ctx context.Context, in *api.ListNotificationsRequest) (*api.NotificationList, error)
- func (s *ApiServer) ListStorageObjects(ctx context.Context, in *api.ListStorageObjectsRequest) (*api.StorageObjectList, error)
- func (s *ApiServer) ListTournamentRecords(ctx context.Context, in *api.ListTournamentRecordsRequest) (*api.TournamentRecordList, error)
- func (s *ApiServer) ListTournamentRecordsAroundOwner(ctx context.Context, in *api.ListTournamentRecordsAroundOwnerRequest) (*api.TournamentRecordList, error)
- func (s *ApiServer) ListTournaments(ctx context.Context, in *api.ListTournamentsRequest) (*api.TournamentList, error)
- func (s *ApiServer) ListUserGroups(ctx context.Context, in *api.ListUserGroupsRequest) (*api.UserGroupList, error)
- func (s *ApiServer) PromoteGroupUsers(ctx context.Context, in *api.PromoteGroupUsersRequest) (*empty.Empty, error)
- func (s *ApiServer) ReadStorageObjects(ctx context.Context, in *api.ReadStorageObjectsRequest) (*api.StorageObjects, error)
- func (s *ApiServer) RpcFunc(ctx context.Context, in *api.Rpc) (*api.Rpc, error)
- func (s *ApiServer) Stop()
- func (s *ApiServer) UnlinkCustom(ctx context.Context, in *api.AccountCustom) (*empty.Empty, error)
- func (s *ApiServer) UnlinkDevice(ctx context.Context, in *api.AccountDevice) (*empty.Empty, error)
- func (s *ApiServer) UnlinkEmail(ctx context.Context, in *api.AccountEmail) (*empty.Empty, error)
- func (s *ApiServer) UnlinkFacebook(ctx context.Context, in *api.AccountFacebook) (*empty.Empty, error)
- func (s *ApiServer) UnlinkGameCenter(ctx context.Context, in *api.AccountGameCenter) (*empty.Empty, error)
- func (s *ApiServer) UnlinkGoogle(ctx context.Context, in *api.AccountGoogle) (*empty.Empty, error)
- func (s *ApiServer) UnlinkSteam(ctx context.Context, in *api.AccountSteam) (*empty.Empty, error)
- func (s *ApiServer) UpdateAccount(ctx context.Context, in *api.UpdateAccountRequest) (*empty.Empty, error)
- func (s *ApiServer) UpdateGroup(ctx context.Context, in *api.UpdateGroupRequest) (*empty.Empty, error)
- func (s *ApiServer) WriteLeaderboardRecord(ctx context.Context, in *api.WriteLeaderboardRecordRequest) (*api.LeaderboardRecord, error)
- func (s *ApiServer) WriteStorageObjects(ctx context.Context, in *api.WriteStorageObjectsRequest) (*api.StorageObjectAcks, error)
- func (s *ApiServer) WriteTournamentRecord(ctx context.Context, in *api.WriteTournamentRecordRequest) (*api.LeaderboardRecord, error)
- type ChannelIdToStreamResult
- type Config
- type ConsoleConfig
- type ConsoleServer
- func (s *ConsoleServer) DeleteAccount(ctx context.Context, in *console.AccountDeleteRequest) (*empty.Empty, error)
- func (s *ConsoleServer) DeleteAccounts(ctx context.Context, in *empty.Empty) (*empty.Empty, error)
- func (s *ConsoleServer) DeleteStorageObject(ctx context.Context, in *console.DeleteStorageObjectRequest) (*empty.Empty, error)
- func (s *ConsoleServer) DeleteStorageObjects(context.Context, *empty.Empty) (*empty.Empty, error)
- func (s *ConsoleServer) ExportAccount(ctx context.Context, in *console.AccountIdRequest) (*console.AccountExport, error)
- func (s *ConsoleServer) GetAccount(ctx context.Context, in *console.AccountIdRequest) (*api.Account, error)
- func (s *ConsoleServer) GetStorage(ctx context.Context, in *console.GetStorageObjectRequest) (*console.StorageObject, error)
- func (s *ConsoleServer) ListAccounts(ctx context.Context, in *empty.Empty) (*console.AccountList, error)
- func (s *ConsoleServer) ListStorageCollections(context.Context, *empty.Empty) (*console.StorageCollectionList, error)
- func (s *ConsoleServer) ListStorageObjects(ctx context.Context, in *console.ListStorageObjectRequest) (*console.StorageObjectList, error)
- func (s *ConsoleServer) Login(ctx context.Context, in *console.AuthenticateRequest) (*empty.Empty, error)
- func (s *ConsoleServer) RecordAccountDeletion(ctx context.Context, tx *sql.Tx, userID uuid.UUID) error
- func (s *ConsoleServer) Stop()
- func (s *ConsoleServer) WriteStorageObject(ctx context.Context, in *console.WriteStorageObjectRequest) (*empty.Empty, error)
- type DatabaseConfig
- type DeferredMessage
- type LSentinelType
- type Leaderboard
- func (l *Leaderboard) GetAuthoritative() bool
- func (l *Leaderboard) GetCreateTime() int64
- func (l *Leaderboard) GetId() string
- func (l *Leaderboard) GetMetadata() map[string]interface{}
- func (l *Leaderboard) GetOperator() string
- func (l *Leaderboard) GetReset() string
- func (l *Leaderboard) GetSortOrder() string
- func (l *Leaderboard) IsTournament() bool
- type LeaderboardCache
- type LeaderboardConfig
- type LeaderboardRankCache
- type LeaderboardScheduler
- type LeaderboardWithExpiry
- type LocalLeaderboardCache
- func (l *LocalLeaderboardCache) Create(ctx context.Context, id string, authoritative bool, sortOrder, operator int, ...) (*Leaderboard, error)
- func (l *LocalLeaderboardCache) CreateTournament(ctx context.Context, id string, sortOrder, operator int, ...) (*Leaderboard, error)
- func (l *LocalLeaderboardCache) Delete(ctx context.Context, id string) error
- func (l *LocalLeaderboardCache) Get(id string) *Leaderboard
- func (l *LocalLeaderboardCache) GetAllLeaderboards() []*Leaderboard
- func (l *LocalLeaderboardCache) Insert(id string, authoritative bool, sortOrder, operator int, ...)
- func (l *LocalLeaderboardCache) InsertTournament(id string, sortOrder, operator int, ...)
- func (l *LocalLeaderboardCache) RefreshAllLeaderboards(ctx context.Context) error
- func (l *LocalLeaderboardCache) Remove(id string)
- type LocalLeaderboardRankCache
- func (l *LocalLeaderboardRankCache) Delete(leaderboardId string, expiryUnix int64, ownerId uuid.UUID) bool
- func (l *LocalLeaderboardRankCache) DeleteLeaderboard(leaderboardId string, expiryUnix int64) bool
- func (l *LocalLeaderboardRankCache) Fill(leaderboardId string, expiryUnix int64, records []*api.LeaderboardRecord)
- func (l *LocalLeaderboardRankCache) Get(leaderboardId string, expiryUnix int64, ownerId uuid.UUID) int64
- func (l *LocalLeaderboardRankCache) Insert(leaderboardId string, expiryUnix int64, sortOrder int, ownerId uuid.UUID, ...) int64
- func (l *LocalLeaderboardRankCache) TrimExpired(nowUnix int64) bool
- type LocalLeaderboardScheduler
- type LocalMatchRegistry
- func (r *LocalMatchRegistry) AwaitJoinMarker(ctx context.Context, id uuid.UUID, node string, sessionID uuid.UUID, ...) error
- func (r *LocalMatchRegistry) CreateMatch(ctx context.Context, logger *zap.Logger, createFn RuntimeMatchCreateFunction, ...) (string, error)
- func (r *LocalMatchRegistry) GetMatch(id uuid.UUID) *MatchHandler
- func (r *LocalMatchRegistry) GetMatchLabel(ctx context.Context, id uuid.UUID, node string) (string, error)
- func (r *LocalMatchRegistry) Join(id uuid.UUID, presences []*MatchPresence)
- func (r *LocalMatchRegistry) JoinAttempt(ctx context.Context, id uuid.UUID, node string, userID, sessionID uuid.UUID, ...) (bool, bool, string, string)
- func (r *LocalMatchRegistry) Kick(stream PresenceStream, presences []*MatchPresence)
- func (r *LocalMatchRegistry) Leave(id uuid.UUID, presences []*MatchPresence)
- func (r *LocalMatchRegistry) ListMatches(ctx context.Context, limit int, authoritative *wrappers.BoolValue, ...) ([]*api.Match, error)
- func (r *LocalMatchRegistry) NewMatch(logger *zap.Logger, id uuid.UUID, core RuntimeMatchCore, ...) (*MatchHandler, error)
- func (r *LocalMatchRegistry) RemoveMatch(id uuid.UUID, stream PresenceStream)
- func (r *LocalMatchRegistry) SendData(id uuid.UUID, node string, userID, sessionID uuid.UUID, ...)
- func (r *LocalMatchRegistry) Stop(graceSeconds int) chan struct{}
- func (r *LocalMatchRegistry) UpdateMatchLabel(id uuid.UUID, label string) error
- type LocalMatchmaker
- type LocalMessageRouter
- func (r *LocalMessageRouter) SendDeferred(logger *zap.Logger, isStream bool, mode uint8, messages []*DeferredMessage)
- func (r *LocalMessageRouter) SendToPresenceIDs(logger *zap.Logger, presenceIDs []*PresenceID, isStream bool, mode uint8, ...)
- func (r *LocalMessageRouter) SendToStream(logger *zap.Logger, stream PresenceStream, envelope *rtapi.Envelope)
- type LocalTracker
- func (t *LocalTracker) Count() int
- func (t *LocalTracker) CountByStream(stream PresenceStream) int
- func (t *LocalTracker) CountByStreamModeFilter(modes map[uint8]*uint8) map[*PresenceStream]int32
- func (t *LocalTracker) GetBySessionIDStreamUserID(node string, sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID) *PresenceMeta
- func (t *LocalTracker) GetLocalBySessionIDStreamUserID(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID) *PresenceMeta
- func (t *LocalTracker) ListByStream(stream PresenceStream, includeHidden bool, includeNotHidden bool) []*Presence
- func (t *LocalTracker) ListLocalSessionIDByStream(stream PresenceStream) []uuid.UUID
- func (t *LocalTracker) ListNodesForStream(stream PresenceStream) map[string]struct{}
- func (t *LocalTracker) ListPresenceIDByStream(stream PresenceStream) []*PresenceID
- func (t *LocalTracker) SetMatchJoinListener(f func(id uuid.UUID, joins []*MatchPresence))
- func (t *LocalTracker) SetMatchLeaveListener(f func(id uuid.UUID, leaves []*MatchPresence))
- func (t *LocalTracker) Stop()
- func (t *LocalTracker) StreamExists(stream PresenceStream) bool
- func (t *LocalTracker) Track(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID, ...) (bool, bool)
- func (t *LocalTracker) Untrack(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID)
- func (t *LocalTracker) UntrackAll(sessionID uuid.UUID)
- func (t *LocalTracker) UntrackByStream(stream PresenceStream)
- func (t *LocalTracker) UntrackLocalByStream(stream PresenceStream)
- func (t *LocalTracker) Update(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID, ...) bool
- type LoggerConfig
- type MatchConfig
- type MatchDataMessage
- func (m *MatchDataMessage) GetData() []byte
- func (m *MatchDataMessage) GetHidden() bool
- func (m *MatchDataMessage) GetNodeId() string
- func (m *MatchDataMessage) GetOpCode() int64
- func (m *MatchDataMessage) GetPersistence() bool
- func (m *MatchDataMessage) GetReceiveTime() int64
- func (m *MatchDataMessage) GetSessionId() string
- func (m *MatchDataMessage) GetStatus() string
- func (m *MatchDataMessage) GetUserId() string
- func (m *MatchDataMessage) GetUsername() string
- type MatchHandler
- func (mh *MatchHandler) Close()
- func (mh *MatchHandler) Label() string
- func (mh *MatchHandler) QueueData(m *MatchDataMessage)
- func (mh *MatchHandler) QueueJoin(joins []*MatchPresence) bool
- func (mh *MatchHandler) QueueJoinAttempt(ctx context.Context, resultCh chan<- *MatchJoinResult, ...) bool
- func (mh *MatchHandler) QueueLeave(leaves []*MatchPresence) bool
- func (mh *MatchHandler) QueueTerminate(graceSeconds int) bool
- func (mh *MatchHandler) Stop()
- type MatchIndexEntry
- type MatchJoinMarker
- type MatchJoinMarkerList
- type MatchJoinResult
- type MatchPresence
- func (p *MatchPresence) GetHidden() bool
- func (p *MatchPresence) GetNodeId() string
- func (p *MatchPresence) GetPersistence() bool
- func (p *MatchPresence) GetSessionId() string
- func (p *MatchPresence) GetStatus() string
- func (p *MatchPresence) GetUserId() string
- func (p *MatchPresence) GetUsername() string
- type MatchPresenceList
- type MatchRegistry
- type Matchmaker
- type MatchmakerEntry
- type MatchmakerPresence
- func (p *MatchmakerPresence) GetHidden() bool
- func (p *MatchmakerPresence) GetNodeId() string
- func (p *MatchmakerPresence) GetPersistence() bool
- func (p *MatchmakerPresence) GetSessionId() string
- func (p *MatchmakerPresence) GetStatus() string
- func (p *MatchmakerPresence) GetUserId() string
- func (p *MatchmakerPresence) GetUsername() string
- type MessageRouter
- type Metrics
- type MetricsConfig
- type Pipeline
- type Presence
- type PresenceEvent
- type PresenceID
- type PresenceMeta
- type PresenceStream
- type RankData
- type RankMap
- type Runtime
- func (r *Runtime) AfterAddFriends() RuntimeAfterAddFriendsFunction
- func (r *Runtime) AfterAddGroupUsers() RuntimeAfterAddGroupUsersFunction
- func (r *Runtime) AfterAuthenticateCustom() RuntimeAfterAuthenticateCustomFunction
- func (r *Runtime) AfterAuthenticateDevice() RuntimeAfterAuthenticateDeviceFunction
- func (r *Runtime) AfterAuthenticateEmail() RuntimeAfterAuthenticateEmailFunction
- func (r *Runtime) AfterAuthenticateFacebook() RuntimeAfterAuthenticateFacebookFunction
- func (r *Runtime) AfterAuthenticateGameCenter() RuntimeAfterAuthenticateGameCenterFunction
- func (r *Runtime) AfterAuthenticateGoogle() RuntimeAfterAuthenticateGoogleFunction
- func (r *Runtime) AfterAuthenticateSteam() RuntimeAfterAuthenticateSteamFunction
- func (r *Runtime) AfterBlockFriends() RuntimeAfterBlockFriendsFunction
- func (r *Runtime) AfterCreateGroup() RuntimeAfterCreateGroupFunction
- func (r *Runtime) AfterDeleteFriends() RuntimeAfterDeleteFriendsFunction
- func (r *Runtime) AfterDeleteGroup() RuntimeAfterDeleteGroupFunction
- func (r *Runtime) AfterDeleteLeaderboardRecord() RuntimeAfterDeleteLeaderboardRecordFunction
- func (r *Runtime) AfterDeleteNotification() RuntimeAfterDeleteNotificationFunction
- func (r *Runtime) AfterDeleteStorageObjects() RuntimeAfterDeleteStorageObjectsFunction
- func (r *Runtime) AfterGetAccount() RuntimeAfterGetAccountFunction
- func (r *Runtime) AfterGetUsers() RuntimeAfterGetUsersFunction
- func (r *Runtime) AfterImportFacebookFriends() RuntimeAfterImportFacebookFriendsFunction
- func (r *Runtime) AfterJoinGroup() RuntimeAfterJoinGroupFunction
- func (r *Runtime) AfterJoinTournament() RuntimeAfterJoinTournamentFunction
- func (r *Runtime) AfterKickGroupUsers() RuntimeAfterKickGroupUsersFunction
- func (r *Runtime) AfterLeaveGroup() RuntimeAfterLeaveGroupFunction
- func (r *Runtime) AfterLinkCustom() RuntimeAfterLinkCustomFunction
- func (r *Runtime) AfterLinkDevice() RuntimeAfterLinkDeviceFunction
- func (r *Runtime) AfterLinkEmail() RuntimeAfterLinkEmailFunction
- func (r *Runtime) AfterLinkFacebook() RuntimeAfterLinkFacebookFunction
- func (r *Runtime) AfterLinkGameCenter() RuntimeAfterLinkGameCenterFunction
- func (r *Runtime) AfterLinkGoogle() RuntimeAfterLinkGoogleFunction
- func (r *Runtime) AfterLinkSteam() RuntimeAfterLinkSteamFunction
- func (r *Runtime) AfterListChannelMessages() RuntimeAfterListChannelMessagesFunction
- func (r *Runtime) AfterListFriends() RuntimeAfterListFriendsFunction
- func (r *Runtime) AfterListGroupUsers() RuntimeAfterListGroupUsersFunction
- func (r *Runtime) AfterListGroups() RuntimeAfterListGroupsFunction
- func (r *Runtime) AfterListLeaderboardRecords() RuntimeAfterListLeaderboardRecordsFunction
- func (r *Runtime) AfterListLeaderboardRecordsAroundOwner() RuntimeAfterListLeaderboardRecordsAroundOwnerFunction
- func (r *Runtime) AfterListMatches() RuntimeAfterListMatchesFunction
- func (r *Runtime) AfterListNotifications() RuntimeAfterListNotificationsFunction
- func (r *Runtime) AfterListStorageObjects() RuntimeAfterListStorageObjectsFunction
- func (r *Runtime) AfterListTournamentRecords() RuntimeAfterListTournamentRecordsFunction
- func (r *Runtime) AfterListTournamentRecordsAroundOwner() RuntimeAfterListTournamentRecordsAroundOwnerFunction
- func (r *Runtime) AfterListTournaments() RuntimeAfterListTournamentsFunction
- func (r *Runtime) AfterListUserGroups() RuntimeAfterListUserGroupsFunction
- func (r *Runtime) AfterPromoteGroupUsers() RuntimeAfterPromoteGroupUsersFunction
- func (r *Runtime) AfterReadStorageObjects() RuntimeAfterReadStorageObjectsFunction
- func (r *Runtime) AfterRt(id string) RuntimeAfterRtFunction
- func (r *Runtime) AfterUnlinkCustom() RuntimeAfterUnlinkCustomFunction
- func (r *Runtime) AfterUnlinkDevice() RuntimeAfterUnlinkDeviceFunction
- func (r *Runtime) AfterUnlinkEmail() RuntimeAfterUnlinkEmailFunction
- func (r *Runtime) AfterUnlinkFacebook() RuntimeAfterUnlinkFacebookFunction
- func (r *Runtime) AfterUnlinkGameCenter() RuntimeAfterUnlinkGameCenterFunction
- func (r *Runtime) AfterUnlinkGoogle() RuntimeAfterUnlinkGoogleFunction
- func (r *Runtime) AfterUnlinkSteam() RuntimeAfterUnlinkSteamFunction
- func (r *Runtime) AfterUpdateAccount() RuntimeAfterUpdateAccountFunction
- func (r *Runtime) AfterUpdateGroup() RuntimeAfterUpdateGroupFunction
- func (r *Runtime) AfterWriteLeaderboardRecord() RuntimeAfterWriteLeaderboardRecordFunction
- func (r *Runtime) AfterWriteStorageObjects() RuntimeAfterWriteStorageObjectsFunction
- func (r *Runtime) AfterWriteTournamentRecord() RuntimeAfterWriteTournamentRecordFunction
- func (r *Runtime) BeforeAddFriends() RuntimeBeforeAddFriendsFunction
- func (r *Runtime) BeforeAddGroupUsers() RuntimeBeforeAddGroupUsersFunction
- func (r *Runtime) BeforeAuthenticateCustom() RuntimeBeforeAuthenticateCustomFunction
- func (r *Runtime) BeforeAuthenticateDevice() RuntimeBeforeAuthenticateDeviceFunction
- func (r *Runtime) BeforeAuthenticateEmail() RuntimeBeforeAuthenticateEmailFunction
- func (r *Runtime) BeforeAuthenticateFacebook() RuntimeBeforeAuthenticateFacebookFunction
- func (r *Runtime) BeforeAuthenticateGameCenter() RuntimeBeforeAuthenticateGameCenterFunction
- func (r *Runtime) BeforeAuthenticateGoogle() RuntimeBeforeAuthenticateGoogleFunction
- func (r *Runtime) BeforeAuthenticateSteam() RuntimeBeforeAuthenticateSteamFunction
- func (r *Runtime) BeforeBlockFriends() RuntimeBeforeBlockFriendsFunction
- func (r *Runtime) BeforeCreateGroup() RuntimeBeforeCreateGroupFunction
- func (r *Runtime) BeforeDeleteFriends() RuntimeBeforeDeleteFriendsFunction
- func (r *Runtime) BeforeDeleteGroup() RuntimeBeforeDeleteGroupFunction
- func (r *Runtime) BeforeDeleteLeaderboardRecord() RuntimeBeforeDeleteLeaderboardRecordFunction
- func (r *Runtime) BeforeDeleteNotification() RuntimeBeforeDeleteNotificationFunction
- func (r *Runtime) BeforeDeleteStorageObjects() RuntimeBeforeDeleteStorageObjectsFunction
- func (r *Runtime) BeforeGetAccount() RuntimeBeforeGetAccountFunction
- func (r *Runtime) BeforeGetUsers() RuntimeBeforeGetUsersFunction
- func (r *Runtime) BeforeImportFacebookFriends() RuntimeBeforeImportFacebookFriendsFunction
- func (r *Runtime) BeforeJoinGroup() RuntimeBeforeJoinGroupFunction
- func (r *Runtime) BeforeJoinTournament() RuntimeBeforeJoinTournamentFunction
- func (r *Runtime) BeforeKickGroupUsers() RuntimeBeforeKickGroupUsersFunction
- func (r *Runtime) BeforeLeaveGroup() RuntimeBeforeLeaveGroupFunction
- func (r *Runtime) BeforeLinkCustom() RuntimeBeforeLinkCustomFunction
- func (r *Runtime) BeforeLinkDevice() RuntimeBeforeLinkDeviceFunction
- func (r *Runtime) BeforeLinkEmail() RuntimeBeforeLinkEmailFunction
- func (r *Runtime) BeforeLinkFacebook() RuntimeBeforeLinkFacebookFunction
- func (r *Runtime) BeforeLinkGameCenter() RuntimeBeforeLinkGameCenterFunction
- func (r *Runtime) BeforeLinkGoogle() RuntimeBeforeLinkGoogleFunction
- func (r *Runtime) BeforeLinkSteam() RuntimeBeforeLinkSteamFunction
- func (r *Runtime) BeforeListChannelMessages() RuntimeBeforeListChannelMessagesFunction
- func (r *Runtime) BeforeListFriends() RuntimeBeforeListFriendsFunction
- func (r *Runtime) BeforeListGroupUsers() RuntimeBeforeListGroupUsersFunction
- func (r *Runtime) BeforeListGroups() RuntimeBeforeListGroupsFunction
- func (r *Runtime) BeforeListLeaderboardRecords() RuntimeBeforeListLeaderboardRecordsFunction
- func (r *Runtime) BeforeListLeaderboardRecordsAroundOwner() RuntimeBeforeListLeaderboardRecordsAroundOwnerFunction
- func (r *Runtime) BeforeListMatches() RuntimeBeforeListMatchesFunction
- func (r *Runtime) BeforeListNotifications() RuntimeBeforeListNotificationsFunction
- func (r *Runtime) BeforeListStorageObjects() RuntimeBeforeListStorageObjectsFunction
- func (r *Runtime) BeforeListTournamentRecords() RuntimeBeforeListTournamentRecordsFunction
- func (r *Runtime) BeforeListTournamentRecordsAroundOwner() RuntimeBeforeListTournamentRecordsAroundOwnerFunction
- func (r *Runtime) BeforeListTournaments() RuntimeBeforeListTournamentsFunction
- func (r *Runtime) BeforeListUserGroups() RuntimeBeforeListUserGroupsFunction
- func (r *Runtime) BeforePromoteGroupUsers() RuntimeBeforePromoteGroupUsersFunction
- func (r *Runtime) BeforeReadStorageObjects() RuntimeBeforeReadStorageObjectsFunction
- func (r *Runtime) BeforeRt(id string) RuntimeBeforeRtFunction
- func (r *Runtime) BeforeUnlinkCustom() RuntimeBeforeUnlinkCustomFunction
- func (r *Runtime) BeforeUnlinkDevice() RuntimeBeforeUnlinkDeviceFunction
- func (r *Runtime) BeforeUnlinkEmail() RuntimeBeforeUnlinkEmailFunction
- func (r *Runtime) BeforeUnlinkFacebook() RuntimeBeforeUnlinkFacebookFunction
- func (r *Runtime) BeforeUnlinkGameCenter() RuntimeBeforeUnlinkGameCenterFunction
- func (r *Runtime) BeforeUnlinkGoogle() RuntimeBeforeUnlinkGoogleFunction
- func (r *Runtime) BeforeUnlinkSteam() RuntimeBeforeUnlinkSteamFunction
- func (r *Runtime) BeforeUpdateAccount() RuntimeBeforeUpdateAccountFunction
- func (r *Runtime) BeforeUpdateGroup() RuntimeBeforeUpdateGroupFunction
- func (r *Runtime) BeforeWriteLeaderboardRecord() RuntimeBeforeWriteLeaderboardRecordFunction
- func (r *Runtime) BeforeWriteStorageObjects() RuntimeBeforeWriteStorageObjectsFunction
- func (r *Runtime) BeforeWriteTournamentRecord() RuntimeBeforeWriteTournamentRecordFunction
- func (r *Runtime) LeaderboardReset() RuntimeLeaderboardResetFunction
- func (r *Runtime) MatchCreateFunction() RuntimeMatchCreateFunction
- func (r *Runtime) MatchmakerMatched() RuntimeMatchmakerMatchedFunction
- func (r *Runtime) Rpc(id string) RuntimeRpcFunction
- func (r *Runtime) TournamentEnd() RuntimeTournamentEndFunction
- func (r *Runtime) TournamentReset() RuntimeTournamentResetFunction
- type RuntimeAfterAddFriendsFunction
- type RuntimeAfterAddGroupUsersFunction
- type RuntimeAfterAuthenticateCustomFunction
- type RuntimeAfterAuthenticateDeviceFunction
- type RuntimeAfterAuthenticateEmailFunction
- type RuntimeAfterAuthenticateFacebookFunction
- type RuntimeAfterAuthenticateGameCenterFunction
- type RuntimeAfterAuthenticateGoogleFunction
- type RuntimeAfterAuthenticateSteamFunction
- type RuntimeAfterBlockFriendsFunction
- type RuntimeAfterCreateGroupFunction
- type RuntimeAfterDeleteFriendsFunction
- type RuntimeAfterDeleteGroupFunction
- type RuntimeAfterDeleteLeaderboardRecordFunction
- type RuntimeAfterDeleteNotificationFunction
- type RuntimeAfterDeleteStorageObjectsFunction
- type RuntimeAfterGetAccountFunction
- type RuntimeAfterGetUsersFunction
- type RuntimeAfterImportFacebookFriendsFunction
- type RuntimeAfterJoinGroupFunction
- type RuntimeAfterJoinTournamentFunction
- type RuntimeAfterKickGroupUsersFunction
- type RuntimeAfterLeaveGroupFunction
- type RuntimeAfterLinkCustomFunction
- type RuntimeAfterLinkDeviceFunction
- type RuntimeAfterLinkEmailFunction
- type RuntimeAfterLinkFacebookFunction
- type RuntimeAfterLinkGameCenterFunction
- type RuntimeAfterLinkGoogleFunction
- type RuntimeAfterLinkSteamFunction
- type RuntimeAfterListChannelMessagesFunction
- type RuntimeAfterListFriendsFunction
- type RuntimeAfterListGroupUsersFunction
- type RuntimeAfterListGroupsFunction
- type RuntimeAfterListLeaderboardRecordsAroundOwnerFunction
- type RuntimeAfterListLeaderboardRecordsFunction
- type RuntimeAfterListMatchesFunction
- type RuntimeAfterListNotificationsFunction
- type RuntimeAfterListStorageObjectsFunction
- type RuntimeAfterListTournamentRecordsAroundOwnerFunction
- type RuntimeAfterListTournamentRecordsFunction
- type RuntimeAfterListTournamentsFunction
- type RuntimeAfterListUserGroupsFunction
- type RuntimeAfterPromoteGroupUsersFunction
- type RuntimeAfterReadStorageObjectsFunction
- type RuntimeAfterReqFunctions
- type RuntimeAfterRtFunction
- type RuntimeAfterUnlinkCustomFunction
- type RuntimeAfterUnlinkDeviceFunction
- type RuntimeAfterUnlinkEmailFunction
- type RuntimeAfterUnlinkFacebookFunction
- type RuntimeAfterUnlinkGameCenterFunction
- type RuntimeAfterUnlinkGoogleFunction
- type RuntimeAfterUnlinkSteamFunction
- type RuntimeAfterUpdateAccountFunction
- type RuntimeAfterUpdateGroupFunction
- type RuntimeAfterWriteLeaderboardRecordFunction
- type RuntimeAfterWriteStorageObjectsFunction
- type RuntimeAfterWriteTournamentRecordFunction
- type RuntimeBeforeAddFriendsFunction
- type RuntimeBeforeAddGroupUsersFunction
- type RuntimeBeforeAuthenticateCustomFunction
- type RuntimeBeforeAuthenticateDeviceFunction
- type RuntimeBeforeAuthenticateEmailFunction
- type RuntimeBeforeAuthenticateFacebookFunction
- type RuntimeBeforeAuthenticateGameCenterFunction
- type RuntimeBeforeAuthenticateGoogleFunction
- type RuntimeBeforeAuthenticateSteamFunction
- type RuntimeBeforeBlockFriendsFunction
- type RuntimeBeforeCreateGroupFunction
- type RuntimeBeforeDeleteFriendsFunction
- type RuntimeBeforeDeleteGroupFunction
- type RuntimeBeforeDeleteLeaderboardRecordFunction
- type RuntimeBeforeDeleteNotificationFunction
- type RuntimeBeforeDeleteStorageObjectsFunction
- type RuntimeBeforeGetAccountFunction
- type RuntimeBeforeGetUsersFunction
- type RuntimeBeforeImportFacebookFriendsFunction
- type RuntimeBeforeJoinGroupFunction
- type RuntimeBeforeJoinTournamentFunction
- type RuntimeBeforeKickGroupUsersFunction
- type RuntimeBeforeLeaveGroupFunction
- type RuntimeBeforeLinkCustomFunction
- type RuntimeBeforeLinkDeviceFunction
- type RuntimeBeforeLinkEmailFunction
- type RuntimeBeforeLinkFacebookFunction
- type RuntimeBeforeLinkGameCenterFunction
- type RuntimeBeforeLinkGoogleFunction
- type RuntimeBeforeLinkSteamFunction
- type RuntimeBeforeListChannelMessagesFunction
- type RuntimeBeforeListFriendsFunction
- type RuntimeBeforeListGroupUsersFunction
- type RuntimeBeforeListGroupsFunction
- type RuntimeBeforeListLeaderboardRecordsAroundOwnerFunction
- type RuntimeBeforeListLeaderboardRecordsFunction
- type RuntimeBeforeListMatchesFunction
- type RuntimeBeforeListNotificationsFunction
- type RuntimeBeforeListStorageObjectsFunction
- type RuntimeBeforeListTournamentRecordsAroundOwnerFunction
- type RuntimeBeforeListTournamentRecordsFunction
- type RuntimeBeforeListTournamentsFunction
- type RuntimeBeforeListUserGroupsFunction
- type RuntimeBeforePromoteGroupUsersFunction
- type RuntimeBeforeReadStorageObjectsFunction
- type RuntimeBeforeReqFunctions
- type RuntimeBeforeRtFunction
- type RuntimeBeforeUnlinkCustomFunction
- type RuntimeBeforeUnlinkDeviceFunction
- type RuntimeBeforeUnlinkEmailFunction
- type RuntimeBeforeUnlinkFacebookFunction
- type RuntimeBeforeUnlinkGameCenterFunction
- type RuntimeBeforeUnlinkGoogleFunction
- type RuntimeBeforeUnlinkSteamFunction
- type RuntimeBeforeUpdateAccountFunction
- type RuntimeBeforeUpdateGroupFunction
- type RuntimeBeforeWriteLeaderboardRecordFunction
- type RuntimeBeforeWriteStorageObjectsFunction
- type RuntimeBeforeWriteTournamentRecordFunction
- type RuntimeConfig
- type RuntimeExecutionMode
- type RuntimeGoInitializer
- func (ri *RuntimeGoInitializer) RegisterAfterAddFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAddGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterBlockFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterCreateGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterDeleteFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterDeleteGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterDeleteLeaderboardRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterDeleteNotification(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterDeleteStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterGetAccount(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterGetUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterImportFacebookFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterJoinGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterJoinTournament(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterKickGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLeaveGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLinkCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLinkDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLinkEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLinkFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLinkGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLinkGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterLinkSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListChannelMessages(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListGroups(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListLeaderboardRecords(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListLeaderboardRecordsAroundOwner(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListMatches(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListNotifications(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListTournamentRecords(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListTournamentRecordsAroundOwner(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListTournaments(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterListUserGroups(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterPromoteGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterReadStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterRt(id string, ...) error
- func (ri *RuntimeGoInitializer) RegisterAfterUnlinkCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUnlinkDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUnlinkEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUnlinkFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUnlinkGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUnlinkGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUnlinkSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUpdateAccount(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterUpdateGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterWriteLeaderboardRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterWriteStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterAfterWriteTournamentRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAddFriends(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAddGroupUsers(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateCustom(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateDevice(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateEmail(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateFacebook(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateGameCenter(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateGoogle(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateSteam(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeBlockFriends(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeCreateGroup(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeDeleteFriends(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeDeleteGroup(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeDeleteLeaderboardRecord(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeDeleteNotification(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeDeleteStorageObjects(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeGetAccount(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterBeforeGetUsers(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeImportFacebookFriends(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeJoinGroup(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeJoinTournament(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeKickGroupUsers(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLeaveGroup(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLinkCustom(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLinkDevice(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLinkEmail(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLinkFacebook(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLinkGameCenter(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLinkGoogle(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeLinkSteam(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListChannelMessages(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListGroupUsers(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListGroups(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListLeaderboardRecords(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListLeaderboardRecordsAroundOwner(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListMatches(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListNotifications(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListStorageObjects(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListTournamentRecords(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListTournamentRecordsAroundOwner(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListTournaments(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeListUserGroups(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforePromoteGroupUsers(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeReadStorageObjects(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeRt(id string, ...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkCustom(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkDevice(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkEmail(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkFacebook(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkGameCenter(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkGoogle(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkSteam(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUpdateAccount(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeUpdateGroup(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeWriteLeaderboardRecord(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeWriteStorageObjects(...) error
- func (ri *RuntimeGoInitializer) RegisterBeforeWriteTournamentRecord(...) error
- func (ri *RuntimeGoInitializer) RegisterLeaderboardReset(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterMatch(name string, ...) error
- func (ri *RuntimeGoInitializer) RegisterMatchmakerMatched(...) error
- func (ri *RuntimeGoInitializer) RegisterRpc(id string, ...) error
- func (ri *RuntimeGoInitializer) RegisterTournamentEnd(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- func (ri *RuntimeGoInitializer) RegisterTournamentReset(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, ...) error) error
- type RuntimeGoLogger
- func (l *RuntimeGoLogger) Debug(format string, v ...interface{})
- func (l *RuntimeGoLogger) Error(format string, v ...interface{})
- func (l *RuntimeGoLogger) Fatal(v ...interface{})
- func (l *RuntimeGoLogger) Fatalf(format string, v ...interface{})
- func (l *RuntimeGoLogger) Fatalln(v ...interface{})
- func (l *RuntimeGoLogger) Info(format string, v ...interface{})
- func (l *RuntimeGoLogger) Panic(v ...interface{})
- func (l *RuntimeGoLogger) Panicf(format string, v ...interface{})
- func (l *RuntimeGoLogger) Panicln(v ...interface{})
- func (l *RuntimeGoLogger) Print(v ...interface{})
- func (l *RuntimeGoLogger) Printf(format string, v ...interface{})
- func (l *RuntimeGoLogger) Println(v ...interface{})
- func (l *RuntimeGoLogger) Warn(format string, v ...interface{})
- type RuntimeGoMatchCore
- func (r *RuntimeGoMatchCore) BroadcastMessage(opCode int64, data []byte, presences []runtime.Presence, ...) error
- func (r *RuntimeGoMatchCore) BroadcastMessageDeferred(opCode int64, data []byte, presences []runtime.Presence, ...) error
- func (r *RuntimeGoMatchCore) Cancel()
- func (r *RuntimeGoMatchCore) Label() string
- func (r *RuntimeGoMatchCore) MatchInit(presenceList *MatchPresenceList, ...) (interface{}, int, error)
- func (r *RuntimeGoMatchCore) MatchJoin(tick int64, state interface{}, joins []*MatchPresence) (interface{}, error)
- func (r *RuntimeGoMatchCore) MatchJoinAttempt(tick int64, state interface{}, userID, sessionID uuid.UUID, ...) (interface{}, bool, string, error)
- func (r *RuntimeGoMatchCore) MatchKick(presences []runtime.Presence) error
- func (r *RuntimeGoMatchCore) MatchLabelUpdate(label string) error
- func (r *RuntimeGoMatchCore) MatchLeave(tick int64, state interface{}, leaves []*MatchPresence) (interface{}, error)
- func (r *RuntimeGoMatchCore) MatchLoop(tick int64, state interface{}, inputCh <-chan *MatchDataMessage) (interface{}, error)
- func (r *RuntimeGoMatchCore) MatchTerminate(tick int64, state interface{}, graceSeconds int) (interface{}, error)
- type RuntimeGoNakamaModule
- func (n *RuntimeGoNakamaModule) AccountGetId(ctx context.Context, userID string) (*api.Account, error)
- func (n *RuntimeGoNakamaModule) AccountUpdateId(ctx context.Context, userID, username string, metadata map[string]interface{}, ...) error
- func (n *RuntimeGoNakamaModule) AccountsGetId(ctx context.Context, userIDs []string) ([]*api.Account, error)
- func (n *RuntimeGoNakamaModule) AuthenticateCustom(ctx context.Context, id, username string, create bool) (string, string, bool, error)
- func (n *RuntimeGoNakamaModule) AuthenticateDevice(ctx context.Context, id, username string, create bool) (string, string, bool, error)
- func (n *RuntimeGoNakamaModule) AuthenticateEmail(ctx context.Context, email, password, username string, create bool) (string, string, bool, error)
- func (n *RuntimeGoNakamaModule) AuthenticateFacebook(ctx context.Context, token string, importFriends bool, username string, ...) (string, string, bool, error)
- func (n *RuntimeGoNakamaModule) AuthenticateGameCenter(ctx context.Context, playerID, bundleID string, timestamp int64, ...) (string, string, bool, error)
- func (n *RuntimeGoNakamaModule) AuthenticateGoogle(ctx context.Context, token, username string, create bool) (string, string, bool, error)
- func (n *RuntimeGoNakamaModule) AuthenticateSteam(ctx context.Context, token, username string, create bool) (string, string, bool, error)
- func (n *RuntimeGoNakamaModule) AuthenticateTokenGenerate(userID, username string, exp int64) (string, int64, error)
- func (n *RuntimeGoNakamaModule) GroupCreate(ctx context.Context, ...) (*api.Group, error)
- func (n *RuntimeGoNakamaModule) GroupDelete(ctx context.Context, id string) error
- func (n *RuntimeGoNakamaModule) GroupUpdate(ctx context.Context, ...) error
- func (n *RuntimeGoNakamaModule) GroupUsersKick(ctx context.Context, groupID string, userIDs []string) error
- func (n *RuntimeGoNakamaModule) GroupUsersList(ctx context.Context, id string) ([]*api.GroupUserList_GroupUser, error)
- func (n *RuntimeGoNakamaModule) GroupsGetId(ctx context.Context, groupIDs []string) ([]*api.Group, error)
- func (n *RuntimeGoNakamaModule) LeaderboardCreate(ctx context.Context, id string, authoritative bool, ...) error
- func (n *RuntimeGoNakamaModule) LeaderboardDelete(ctx context.Context, id string) error
- func (n *RuntimeGoNakamaModule) LeaderboardRecordDelete(ctx context.Context, id, ownerID string) error
- func (n *RuntimeGoNakamaModule) LeaderboardRecordWrite(ctx context.Context, id, ownerID, username string, score, subscore int64, ...) (*api.LeaderboardRecord, error)
- func (n *RuntimeGoNakamaModule) LeaderboardRecordsList(ctx context.Context, id string, ownerIDs []string, limit int, cursor string, ...) ([]*api.LeaderboardRecord, []*api.LeaderboardRecord, string, string, error)
- func (n *RuntimeGoNakamaModule) MatchCreate(ctx context.Context, module string, params map[string]interface{}) (string, error)
- func (n *RuntimeGoNakamaModule) MatchList(ctx context.Context, limit int, authoritative bool, label string, ...) ([]*api.Match, error)
- func (n *RuntimeGoNakamaModule) NotificationSend(ctx context.Context, userID, subject string, content map[string]interface{}, ...) error
- func (n *RuntimeGoNakamaModule) NotificationsSend(ctx context.Context, notifications []*runtime.NotificationSend) error
- func (n *RuntimeGoNakamaModule) SetMatchCreateFn(fn RuntimeMatchCreateFunction)
- func (n *RuntimeGoNakamaModule) StorageDelete(ctx context.Context, deletes []*runtime.StorageDelete) error
- func (n *RuntimeGoNakamaModule) StorageList(ctx context.Context, userID, collection string, limit int, cursor string) ([]*api.StorageObject, string, error)
- func (n *RuntimeGoNakamaModule) StorageRead(ctx context.Context, reads []*runtime.StorageRead) ([]*api.StorageObject, error)
- func (n *RuntimeGoNakamaModule) StorageWrite(ctx context.Context, writes []*runtime.StorageWrite) ([]*api.StorageObjectAck, error)
- func (n *RuntimeGoNakamaModule) StreamClose(mode uint8, subject, subcontext, label string) error
- func (n *RuntimeGoNakamaModule) StreamCount(mode uint8, subject, subcontext, label string) (int, error)
- func (n *RuntimeGoNakamaModule) StreamSend(mode uint8, subject, subcontext, label, data string) error
- func (n *RuntimeGoNakamaModule) StreamSendRaw(mode uint8, subject, subcontext, label string, msg *rtapi.Envelope) error
- func (n *RuntimeGoNakamaModule) StreamUserGet(mode uint8, subject, subcontext, label, userID, sessionID string) (runtime.PresenceMeta, error)
- func (n *RuntimeGoNakamaModule) StreamUserJoin(mode uint8, subject, subcontext, label, userID, sessionID string, ...) (bool, error)
- func (n *RuntimeGoNakamaModule) StreamUserLeave(mode uint8, subject, subcontext, label, userID, sessionID string) error
- func (n *RuntimeGoNakamaModule) StreamUserList(mode uint8, subject, subcontext, label string, ...) ([]runtime.Presence, error)
- func (n *RuntimeGoNakamaModule) StreamUserUpdate(mode uint8, subject, subcontext, label, userID, sessionID string, ...) error
- func (n *RuntimeGoNakamaModule) TournamentAddAttempt(ctx context.Context, id, ownerID string, count int) error
- func (n *RuntimeGoNakamaModule) TournamentCreate(ctx context.Context, id string, sortOrder, operator, resetSchedule string, ...) error
- func (n *RuntimeGoNakamaModule) TournamentDelete(ctx context.Context, id string) error
- func (n *RuntimeGoNakamaModule) TournamentJoin(ctx context.Context, id, ownerID, username string) error
- func (n *RuntimeGoNakamaModule) TournamentList(ctx context.Context, categoryStart, categoryEnd, startTime, endTime, limit int, ...) (*api.TournamentList, error)
- func (n *RuntimeGoNakamaModule) TournamentRecordWrite(ctx context.Context, id, ownerID, username string, score, subscore int64, ...) (*api.LeaderboardRecord, error)
- func (n *RuntimeGoNakamaModule) TournamentRecordsHaystack(ctx context.Context, id, ownerID string, limit int) ([]*api.LeaderboardRecord, error)
- func (n *RuntimeGoNakamaModule) UserGroupsList(ctx context.Context, userID string) ([]*api.UserGroupList_UserGroup, error)
- func (n *RuntimeGoNakamaModule) UsersBanId(ctx context.Context, userIDs []string) error
- func (n *RuntimeGoNakamaModule) UsersGetId(ctx context.Context, userIDs []string) ([]*api.User, error)
- func (n *RuntimeGoNakamaModule) UsersGetUsername(ctx context.Context, usernames []string) ([]*api.User, error)
- func (n *RuntimeGoNakamaModule) UsersUnbanId(ctx context.Context, userIDs []string) error
- func (n *RuntimeGoNakamaModule) WalletLedgerList(ctx context.Context, userID string) ([]runtime.WalletLedgerItem, error)
- func (n *RuntimeGoNakamaModule) WalletLedgerUpdate(ctx context.Context, itemID string, metadata map[string]interface{}) (runtime.WalletLedgerItem, error)
- func (n *RuntimeGoNakamaModule) WalletUpdate(ctx context.Context, userID string, changeset, metadata map[string]interface{}, ...) error
- func (n *RuntimeGoNakamaModule) WalletsUpdate(ctx context.Context, updates []*runtime.WalletUpdate, updateLedger bool) error
- type RuntimeLeaderboardResetFunction
- type RuntimeLua
- type RuntimeLuaCallbacks
- type RuntimeLuaLocalCache
- type RuntimeLuaMatchCore
- func (r *RuntimeLuaMatchCore) Cancel()
- func (r *RuntimeLuaMatchCore) Label() string
- func (r *RuntimeLuaMatchCore) MatchInit(presenceList *MatchPresenceList, ...) (interface{}, int, error)
- func (r *RuntimeLuaMatchCore) MatchJoin(tick int64, state interface{}, joins []*MatchPresence) (interface{}, error)
- func (r *RuntimeLuaMatchCore) MatchJoinAttempt(tick int64, state interface{}, userID, sessionID uuid.UUID, ...) (interface{}, bool, string, error)
- func (r *RuntimeLuaMatchCore) MatchLeave(tick int64, state interface{}, leaves []*MatchPresence) (interface{}, error)
- func (r *RuntimeLuaMatchCore) MatchLoop(tick int64, state interface{}, inputCh <-chan *MatchDataMessage) (interface{}, error)
- func (r *RuntimeLuaMatchCore) MatchTerminate(tick int64, state interface{}, graceSeconds int) (interface{}, error)
- type RuntimeLuaModule
- type RuntimeLuaModuleCache
- type RuntimeLuaNakamaModule
- type RuntimeMatchCore
- type RuntimeMatchCreateFunction
- type RuntimeMatchDeferMessageFunction
- type RuntimeMatchmakerMatchedFunction
- type RuntimeProviderLua
- func (rp *RuntimeProviderLua) AfterReq(ctx context.Context, id string, logger *zap.Logger, userID, username string, ...) error
- func (rp *RuntimeProviderLua) AfterRt(ctx context.Context, id string, logger *zap.Logger, userID, username string, ...) error
- func (rp *RuntimeProviderLua) BeforeReq(ctx context.Context, id string, logger *zap.Logger, userID, username string, ...) (interface{}, error, codes.Code)
- func (rp *RuntimeProviderLua) BeforeRt(ctx context.Context, id string, logger *zap.Logger, userID, username string, ...) (*rtapi.Envelope, error)
- func (rp *RuntimeProviderLua) Get(ctx context.Context) (*RuntimeLua, error)
- func (rp *RuntimeProviderLua) LeaderboardReset(ctx context.Context, leaderboard runtime.Leaderboard, reset int64) error
- func (rp *RuntimeProviderLua) MatchmakerMatched(ctx context.Context, entries []*MatchmakerEntry) (string, bool, error)
- func (rp *RuntimeProviderLua) Put(r *RuntimeLua)
- func (rp *RuntimeProviderLua) Rpc(ctx context.Context, id string, queryParams map[string][]string, ...) (string, error, codes.Code)
- func (rp *RuntimeProviderLua) TournamentEnd(ctx context.Context, tournament *api.Tournament, end, reset int64) error
- func (rp *RuntimeProviderLua) TournamentReset(ctx context.Context, tournament *api.Tournament, end, reset int64) error
- type RuntimeRpcFunction
- type RuntimeTournamentEndFunction
- type RuntimeTournamentResetFunction
- type Scannable
- type Session
- type SessionConfig
- type SessionFormat
- type SessionRegistry
- type SocialConfig
- type SocialConfigSteam
- type SocketConfig
- type Tracker
- type TrackerConfig
Constants ¶
const ( NotificationCodeDmRequest int32 = -1 NotificationCodeFriendRequest int32 = -2 NotificationCodeFriendAccept int32 = -3 NotificationCodeGroupAdd int32 = -4 NotificationCodeGroupJoinRequest int32 = -5 NotificationCodeFriendJoinGame int32 = -6 )
const ( LeaderboardSortOrderAscending = iota LeaderboardSortOrderDescending )
const ( LeaderboardOperatorBest = iota LeaderboardOperatorSet LeaderboardOperatorIncrement )
const ( ChannelMessageTypeChat int32 = iota ChannelMessageTypeChatUpdate ChannelMessageTypeChatRemove ChannelMessageTypeGroupJoin ChannelMessageTypeGroupAdd ChannelMessageTypeGroupKick ChannelMessageTypeGroupPromoted )
const ( StreamModeNotifications uint8 = iota StreamModeStatus StreamModeChannel StreamModeGroup StreamModeDM StreamModeMatchRelayed StreamModeMatchAuthoritative )
const API_PREFIX = "/nakama.api.Nakama/"
const LTSentinel = lua.LValueType(-1)
const RTAPI_PREFIX = "*rtapi.Envelope_"
Variables ¶
var ( ErrChannelIdInvalid = errors.New("invalid channel id") ErrChannelCursorInvalid = errors.New("invalid channel cursor") ErrChannelGroupNotFound = errors.New("group not found") )
var ( ErrGroupNameInUse = errors.New("group name in use") ErrGroupPermissionDenied = errors.New("group permission denied") ErrGroupNoUpdateOps = errors.New("no group updates") ErrGroupNotUpdated = errors.New("group not updated") ErrGroupNotFound = errors.New("group not found") ErrGroupFull = errors.New("group is full") ErrGroupLastSuperadmin = errors.New("user is last group superadmin") )
var ( ErrLeaderboardNotFound = errors.New("leaderboard not found") ErrLeaderboardAuthoritative = errors.New("leaderboard only allows authoritative submissions") ErrLeaderboardInvalidCursor = errors.New("leaderboard cursor invalid") )
var ( ErrTournamentNotFound = errors.New("tournament not found") ErrTournamentMaxSizeReached = errors.New("tournament max size reached") ErrTournamentOutsideDuration = errors.New("tournament outside of duration") ErrTournamentWriteMaxNumScoreReached = errors.New("max number score count reached") ErrTournamentWriteJoinRequired = errors.New("required to join before writing tournament record") )
var ( MatchFilterValue = uint8(0) MatchFilterPtr = &MatchFilterValue MatchFilterAny = map[uint8]*uint8{StreamModeMatchRelayed: MatchFilterPtr, StreamModeMatchAuthoritative: MatchFilterPtr} MatchFilterRelayed = map[uint8]*uint8{StreamModeMatchRelayed: MatchFilterPtr} MatchFilterAuthoritative = map[uint8]*uint8{StreamModeMatchAuthoritative: MatchFilterPtr} MaxLabelSize = 2048 ErrMatchLabelTooLong = errors.New("match label too long, must be 0-2048 bytes") ErrDeferredBroadcastFull = errors.New("too many deferred message broadcasts per tick") ErrNoJoinMarker = errors.New("no join marker received") )
var ( // Metrics stats measurements. MetricsRuntimeCount = stats.Int64("nakama/runtime/count", "Number of pooled runtime instances", stats.UnitNone) MetricsSocketWsTimeSpentMsec = stats.Float64("nakama.socket/ws/server_elapsed_time", "Elapsed time in msecs spent in WebSocket connections", stats.UnitMilliseconds) MetricsSocketWsOpenCount = stats.Int64("nakama.socket/ws/open_count", "Number of opened WebSocket connections", stats.UnitNone) MetricsSocketWsCloseCount = stats.Int64("nakama.socket/ws/close_count", "Number of closed WebSocket connections", stats.UnitNone) MetricsApiTimeSpentMsec = stats.Float64("nakama.api/server/server_elapsed_time", "Elapsed time in msecs spent in API functions", stats.UnitMilliseconds) MetricsApiCount = stats.Int64("nakama.api/server/request_count", "Number of calls to API functions", stats.UnitNone) MetricsRtapiTimeSpentMsec = stats.Float64("nakama.rtapi/server/server_elapsed_time", "Elapsed time in msecs spent in realtime socket functions", stats.UnitMilliseconds) MetricsRtapiCount = stats.Int64("nakama.rtapi/server/request_count", "Number of calls to realtime socket functions", stats.UnitNone) // Metrics stats tag keys. MetricsFunction, _ = tag.NewKey("function") )
var ( Bit32LibName = "bit32" Bit32Default64 = int64(math.Pow(2, 32) - 1) )
var ErrAccountNotFound = errors.New("account not found")
var ErrChannelMessageUpdateNotFound = errors.New("channel message not found")
var ErrMatchmakerTicketNotFound = errors.New("ticket not found")
var ErrRowsAffectedCount = errors.New("rows_affected_count")
var (
ErrRuntimeRPCNotFound = errors.New("RPC function not found")
)
var ErrSessionQueueFull = errors.New("session outgoing queue full")
var LSentinel = lua.LValue(&LSentinelType{})
var SocketWsStatsCtx = context.Background()
Functions ¶
func AddFriends ¶
func AddGroupUsers ¶
func AuthenticateCustom ¶
func AuthenticateDevice ¶
func AuthenticateEmail ¶
func AuthenticateFacebook ¶
func AuthenticateGameCenter ¶
func AuthenticateGoogle ¶
func AuthenticateSteam ¶
func AuthenticateUsername ¶ added in v2.3.0
func BlockFriends ¶
func ChannelMessagesList ¶
func CreateGroup ¶
func DeleteFriends ¶
func DeleteGroup ¶
func ExecuteRetryable ¶ added in v2.1.0
Retry functions that perform non-transactional database operations.
func GetAccount ¶
func GetAccounts ¶ added in v2.3.0
func GetChannelMessages ¶
func GetFriendIDs ¶
func GetFriends ¶
func GroupDeleteAll ¶
func KickGroupUsers ¶
func LeaderboardRecordDelete ¶
func LeaderboardRecordWrite ¶
func LeaderboardRecordsHaystack ¶ added in v2.1.0
func LeaderboardRecordsHaystack(ctx context.Context, logger *zap.Logger, db *sql.DB, leaderboardCache LeaderboardCache, rankCache LeaderboardRankCache, leaderboardId string, ownerId uuid.UUID, limit int) ([]*api.LeaderboardRecord, error)
func LeaderboardRecordsList ¶
func LeaderboardRecordsList(ctx context.Context, logger *zap.Logger, db *sql.DB, leaderboardCache LeaderboardCache, rankCache LeaderboardRankCache, leaderboardId string, limit *wrappers.Int32Value, cursor string, ownerIds []string, overrideExpiry int64) (*api.LeaderboardRecordList, error)
func LeaveGroup ¶
func ListGroupUsers ¶
func ListGroups ¶
func ListUserGroups ¶
func ListWalletLedger ¶
func NewConfig ¶
NewConfig constructs a Config struct which represents server settings, and populates it with default values.
func NewJSONFileLogger ¶
func NewRotatingJSONFileLogger ¶ added in v2.3.0
func NewRuntimeGoContext ¶ added in v2.1.0
func NewRuntimeGoLogger ¶ added in v2.3.0
func NewRuntimeLuaContext ¶ added in v2.1.0
func NewRuntimeLuaContext(l *lua.LState, env *lua.LTable, mode RuntimeExecutionMode, queryParams map[string][]string, sessionExpiry int64, userID, username, sessionID, clientIP, clientPort string) *lua.LTable
func NewRuntimeProviderGo ¶ added in v2.1.0
func NewRuntimeProviderGo(logger, startupLogger *zap.Logger, db *sql.DB, config Config, socialClient *social.Client, leaderboardCache LeaderboardCache, leaderboardRankCache LeaderboardRankCache, leaderboardScheduler LeaderboardScheduler, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, tracker Tracker, router MessageRouter, rootPath string, paths []string) ([]string, map[string]RuntimeRpcFunction, map[string]RuntimeBeforeRtFunction, map[string]RuntimeAfterRtFunction, *RuntimeBeforeReqFunctions, *RuntimeAfterReqFunctions, RuntimeMatchmakerMatchedFunction, RuntimeMatchCreateFunction, RuntimeTournamentEndFunction, RuntimeTournamentResetFunction, RuntimeLeaderboardResetFunction, func(RuntimeMatchCreateFunction), func() []string, error)
func NewRuntimeProviderLua ¶ added in v2.1.0
func NewRuntimeProviderLua(logger, startupLogger *zap.Logger, db *sql.DB, jsonpbMarshaler *jsonpb.Marshaler, jsonpbUnmarshaler *jsonpb.Unmarshaler, config Config, socialClient *social.Client, leaderboardCache LeaderboardCache, leaderboardRankCache LeaderboardRankCache, leaderboardScheduler LeaderboardScheduler, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, tracker Tracker, router MessageRouter, goMatchCreateFn RuntimeMatchCreateFunction, rootPath string, paths []string) ([]string, map[string]RuntimeRpcFunction, map[string]RuntimeBeforeRtFunction, map[string]RuntimeAfterRtFunction, *RuntimeBeforeReqFunctions, *RuntimeAfterReqFunctions, RuntimeMatchmakerMatchedFunction, RuntimeMatchCreateFunction, RuntimeTournamentEndFunction, RuntimeTournamentResetFunction, RuntimeLeaderboardResetFunction, error)
func NewSocketWsAcceptor ¶
func NewSocketWsAcceptor(logger *zap.Logger, config Config, sessionRegistry *SessionRegistry, matchmaker Matchmaker, tracker Tracker, jsonpbMarshaler *jsonpb.Marshaler, jsonpbUnmarshaler *jsonpb.Unmarshaler, pipeline *Pipeline) func(http.ResponseWriter, *http.Request)
func NotificationDelete ¶
func NotificationList ¶
func NotificationSave ¶
func NotificationSend ¶
func OpenPackage ¶
func OpenPackage(moduleCache *RuntimeLuaModuleCache) func(L *lua.LState) int
func PromoteGroupUsers ¶
func RuntimeLuaConvertLuaTable ¶ added in v2.1.0
func RuntimeLuaConvertLuaTable(lv *lua.LTable) map[string]interface{}
func RuntimeLuaConvertLuaValue ¶ added in v2.1.0
func RuntimeLuaConvertLuaValue(lv lua.LValue) interface{}
func RuntimeLuaConvertMap ¶ added in v2.1.0
func RuntimeLuaConvertMap(l *lua.LState, data map[string]interface{}) *lua.LTable
func RuntimeLuaConvertMapString ¶ added in v2.1.0
func RuntimeLuaConvertValue ¶ added in v2.1.0
func RuntimeLuaConvertValue(l *lua.LState, val interface{}) lua.LValue
func SetupLogging ¶
func StatusError ¶
Helper function for creating status errors that wrap underlying causes, usually DB errors.
func StorageDeleteObjects ¶
func StorageListObjects ¶
func StorageListObjectsUser ¶
func StorageReadObjects ¶
func StorageWriteObjects ¶
func StreamToChannelId ¶
func StreamToChannelId(stream PresenceStream) (string, error)
func TournamentAddAttempt ¶ added in v2.1.0
func TournamentCreate ¶ added in v2.1.0
func TournamentCreate(ctx context.Context, logger *zap.Logger, cache LeaderboardCache, scheduler LeaderboardScheduler, leaderboardId string, sortOrder, operator int, resetSchedule, metadata, title, description string, category, startTime, endTime, duration, maxSize, maxNumScore int, joinRequired bool) error
func TournamentDelete ¶ added in v2.1.0
func TournamentDelete(ctx context.Context, logger *zap.Logger, cache LeaderboardCache, rankCache LeaderboardRankCache, scheduler LeaderboardScheduler, leaderboardId string) error
func TournamentJoin ¶ added in v2.1.0
func TournamentList ¶ added in v2.1.0
func TournamentRecordWrite ¶ added in v2.1.0
func TournamentRecordsHaystack ¶ added in v2.1.0
func TournamentRecordsHaystack(ctx context.Context, logger *zap.Logger, db *sql.DB, leaderboardCache LeaderboardCache, rankCache LeaderboardRankCache, leaderboardId string, ownerId uuid.UUID, limit int) ([]*api.LeaderboardRecord, error)
func UnbanUsers ¶ added in v2.0.1
func UpdateAccount ¶
func UpdateGroup ¶
func UpdateWalletLedger ¶
func UpdateWallets ¶
Types ¶
type ApiServer ¶
type ApiServer struct {
// contains filtered or unexported fields
}
func StartApiServer ¶
func StartApiServer(logger *zap.Logger, startupLogger *zap.Logger, db *sql.DB, jsonpbMarshaler *jsonpb.Marshaler, jsonpbUnmarshaler *jsonpb.Unmarshaler, config Config, socialClient *social.Client, leaderboardCache LeaderboardCache, leaderboardRankCache LeaderboardRankCache, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, matchmaker Matchmaker, tracker Tracker, router MessageRouter, pipeline *Pipeline, runtime *Runtime) *ApiServer
func (*ApiServer) AddFriends ¶
func (*ApiServer) AddGroupUsers ¶
func (*ApiServer) AuthenticateCustom ¶
func (*ApiServer) AuthenticateDevice ¶
func (*ApiServer) AuthenticateEmail ¶
func (*ApiServer) AuthenticateFacebook ¶
func (*ApiServer) AuthenticateGameCenter ¶
func (*ApiServer) AuthenticateGoogle ¶
func (*ApiServer) AuthenticateSteam ¶
func (*ApiServer) BlockFriends ¶
func (*ApiServer) CreateGroup ¶
func (*ApiServer) DeleteFriends ¶
func (*ApiServer) DeleteGroup ¶
func (*ApiServer) DeleteLeaderboardRecord ¶
func (*ApiServer) DeleteNotifications ¶
func (*ApiServer) DeleteStorageObjects ¶
func (*ApiServer) GetAccount ¶
func (*ApiServer) Healthcheck ¶
func (*ApiServer) ImportFacebookFriends ¶
func (*ApiServer) JoinTournament ¶ added in v2.1.0
func (*ApiServer) KickGroupUsers ¶
func (*ApiServer) LeaveGroup ¶
func (*ApiServer) LinkCustom ¶
func (*ApiServer) LinkDevice ¶
func (*ApiServer) LinkFacebook ¶
func (*ApiServer) LinkGameCenter ¶
func (*ApiServer) LinkGoogle ¶
func (*ApiServer) ListChannelMessages ¶
func (s *ApiServer) ListChannelMessages(ctx context.Context, in *api.ListChannelMessagesRequest) (*api.ChannelMessageList, error)
func (*ApiServer) ListFriends ¶
func (*ApiServer) ListGroupUsers ¶
func (s *ApiServer) ListGroupUsers(ctx context.Context, in *api.ListGroupUsersRequest) (*api.GroupUserList, error)
func (*ApiServer) ListGroups ¶
func (*ApiServer) ListLeaderboardRecords ¶
func (s *ApiServer) ListLeaderboardRecords(ctx context.Context, in *api.ListLeaderboardRecordsRequest) (*api.LeaderboardRecordList, error)
func (*ApiServer) ListLeaderboardRecordsAroundOwner ¶ added in v2.1.0
func (s *ApiServer) ListLeaderboardRecordsAroundOwner(ctx context.Context, in *api.ListLeaderboardRecordsAroundOwnerRequest) (*api.LeaderboardRecordList, error)
func (*ApiServer) ListMatches ¶
func (*ApiServer) ListNotifications ¶
func (s *ApiServer) ListNotifications(ctx context.Context, in *api.ListNotificationsRequest) (*api.NotificationList, error)
func (*ApiServer) ListStorageObjects ¶
func (s *ApiServer) ListStorageObjects(ctx context.Context, in *api.ListStorageObjectsRequest) (*api.StorageObjectList, error)
func (*ApiServer) ListTournamentRecords ¶ added in v2.1.0
func (s *ApiServer) ListTournamentRecords(ctx context.Context, in *api.ListTournamentRecordsRequest) (*api.TournamentRecordList, error)
func (*ApiServer) ListTournamentRecordsAroundOwner ¶ added in v2.1.0
func (s *ApiServer) ListTournamentRecordsAroundOwner(ctx context.Context, in *api.ListTournamentRecordsAroundOwnerRequest) (*api.TournamentRecordList, error)
func (*ApiServer) ListTournaments ¶ added in v2.1.0
func (s *ApiServer) ListTournaments(ctx context.Context, in *api.ListTournamentsRequest) (*api.TournamentList, error)
func (*ApiServer) ListUserGroups ¶
func (s *ApiServer) ListUserGroups(ctx context.Context, in *api.ListUserGroupsRequest) (*api.UserGroupList, error)
func (*ApiServer) PromoteGroupUsers ¶
func (*ApiServer) ReadStorageObjects ¶
func (s *ApiServer) ReadStorageObjects(ctx context.Context, in *api.ReadStorageObjectsRequest) (*api.StorageObjects, error)
func (*ApiServer) UnlinkCustom ¶
func (*ApiServer) UnlinkDevice ¶
func (*ApiServer) UnlinkEmail ¶
func (*ApiServer) UnlinkFacebook ¶
func (*ApiServer) UnlinkGameCenter ¶
func (*ApiServer) UnlinkGoogle ¶
func (*ApiServer) UnlinkSteam ¶
func (*ApiServer) UpdateAccount ¶
func (*ApiServer) UpdateGroup ¶
func (*ApiServer) WriteLeaderboardRecord ¶
func (s *ApiServer) WriteLeaderboardRecord(ctx context.Context, in *api.WriteLeaderboardRecordRequest) (*api.LeaderboardRecord, error)
func (*ApiServer) WriteStorageObjects ¶
func (s *ApiServer) WriteStorageObjects(ctx context.Context, in *api.WriteStorageObjectsRequest) (*api.StorageObjectAcks, error)
func (*ApiServer) WriteTournamentRecord ¶ added in v2.1.0
func (s *ApiServer) WriteTournamentRecord(ctx context.Context, in *api.WriteTournamentRecordRequest) (*api.LeaderboardRecord, error)
type ChannelIdToStreamResult ¶
type ChannelIdToStreamResult struct {
Stream PresenceStream
}
Wrapper type to avoid allocating a stream struct when the input is invalid.
func ChannelIdToStream ¶
func ChannelIdToStream(channelId string) (*ChannelIdToStreamResult, error)
type Config ¶
type Config interface { GetName() string GetDataDir() string GetShutdownGraceSec() int GetLogger() *LoggerConfig GetMetrics() *MetricsConfig GetSession() *SessionConfig GetSocket() *SocketConfig GetDatabase() *DatabaseConfig GetSocial() *SocialConfig GetRuntime() *RuntimeConfig GetMatch() *MatchConfig GetTracker() *TrackerConfig GetConsole() *ConsoleConfig GetLeaderboard() *LeaderboardConfig }
Config interface is the Nakama core configuration.
type ConsoleConfig ¶
type ConsoleConfig struct { Port int `yaml:"port" json:"port" usage:"The port for accepting connections for the embedded console, listening on all interfaces."` Username string `yaml:"username" json:"username" usage:"Username for the embedded console. Default username is 'admin'."` Password string `yaml:"password" json:"password" usage:"Password for the embedded console. Default password is 'password'."` }
ConsoleConfig is configuration relevant to the embedded console.
func NewConsoleConfig ¶
func NewConsoleConfig() *ConsoleConfig
NewConsoleConfig creates a new ConsoleConfig struct.
type ConsoleServer ¶
type ConsoleServer struct {
// contains filtered or unexported fields
}
func StartConsoleServer ¶
func (*ConsoleServer) DeleteAccount ¶
func (s *ConsoleServer) DeleteAccount(ctx context.Context, in *console.AccountDeleteRequest) (*empty.Empty, error)
func (*ConsoleServer) DeleteAccounts ¶ added in v2.0.3
func (*ConsoleServer) DeleteStorageObject ¶ added in v2.0.3
func (s *ConsoleServer) DeleteStorageObject(ctx context.Context, in *console.DeleteStorageObjectRequest) (*empty.Empty, error)
func (*ConsoleServer) DeleteStorageObjects ¶ added in v2.0.3
func (*ConsoleServer) ExportAccount ¶
func (s *ConsoleServer) ExportAccount(ctx context.Context, in *console.AccountIdRequest) (*console.AccountExport, error)
func (*ConsoleServer) GetAccount ¶ added in v2.0.3
func (s *ConsoleServer) GetAccount(ctx context.Context, in *console.AccountIdRequest) (*api.Account, error)
func (*ConsoleServer) GetStorage ¶ added in v2.0.3
func (s *ConsoleServer) GetStorage(ctx context.Context, in *console.GetStorageObjectRequest) (*console.StorageObject, error)
func (*ConsoleServer) ListAccounts ¶ added in v2.0.3
func (s *ConsoleServer) ListAccounts(ctx context.Context, in *empty.Empty) (*console.AccountList, error)
func (*ConsoleServer) ListStorageCollections ¶ added in v2.0.3
func (s *ConsoleServer) ListStorageCollections(context.Context, *empty.Empty) (*console.StorageCollectionList, error)
func (*ConsoleServer) ListStorageObjects ¶ added in v2.0.3
func (s *ConsoleServer) ListStorageObjects(ctx context.Context, in *console.ListStorageObjectRequest) (*console.StorageObjectList, error)
func (*ConsoleServer) Login ¶
func (s *ConsoleServer) Login(ctx context.Context, in *console.AuthenticateRequest) (*empty.Empty, error)
func (*ConsoleServer) RecordAccountDeletion ¶ added in v2.1.0
func (*ConsoleServer) Stop ¶
func (s *ConsoleServer) Stop()
func (*ConsoleServer) WriteStorageObject ¶ added in v2.0.3
func (s *ConsoleServer) WriteStorageObject(ctx context.Context, in *console.WriteStorageObjectRequest) (*empty.Empty, error)
type DatabaseConfig ¶
type DatabaseConfig struct { Addresses []string `` /* 135-byte string literal not displayed */ ConnMaxLifetimeMs int `` /* 196-byte string literal not displayed */ MaxOpenConns int `yaml:"max_open_conns" json:"max_open_conns" usage:"Maximum number of allowed open connections to the database. Default 100."` MaxIdleConns int `` /* 135-byte string literal not displayed */ }
DatabaseConfig is configuration relevant to the Database storage.
func NewDatabaseConfig ¶
func NewDatabaseConfig() *DatabaseConfig
NewDatabaseConfig creates a new DatabaseConfig struct.
type DeferredMessage ¶ added in v2.3.0
type DeferredMessage struct { PresenceIDs []*PresenceID Envelope *rtapi.Envelope }
Deferred message expected to be batched with other deferred messages. All deferred messages in a batch are expected to be for the same stream/mode and share a logger context.
type LSentinelType ¶
type LSentinelType struct {
lua.LNilType
}
func (*LSentinelType) String ¶
func (s *LSentinelType) String() string
func (*LSentinelType) Type ¶
func (s *LSentinelType) Type() lua.LValueType
type Leaderboard ¶
type Leaderboard struct { Id string Authoritative bool SortOrder int Operator int ResetScheduleStr string ResetSchedule *cronexpr.Expression Metadata string CreateTime int64 Category int Description string Duration int EndTime int64 JoinRequired bool MaxSize int MaxNumScore int Title string StartTime int64 }
func (*Leaderboard) GetAuthoritative ¶ added in v2.1.0
func (l *Leaderboard) GetAuthoritative() bool
func (*Leaderboard) GetCreateTime ¶ added in v2.1.0
func (l *Leaderboard) GetCreateTime() int64
func (*Leaderboard) GetId ¶ added in v2.1.0
func (l *Leaderboard) GetId() string
func (*Leaderboard) GetMetadata ¶ added in v2.1.0
func (l *Leaderboard) GetMetadata() map[string]interface{}
func (*Leaderboard) GetOperator ¶ added in v2.1.0
func (l *Leaderboard) GetOperator() string
func (*Leaderboard) GetReset ¶ added in v2.1.0
func (l *Leaderboard) GetReset() string
func (*Leaderboard) GetSortOrder ¶ added in v2.1.0
func (l *Leaderboard) GetSortOrder() string
func (*Leaderboard) IsTournament ¶ added in v2.1.0
func (l *Leaderboard) IsTournament() bool
type LeaderboardCache ¶
type LeaderboardCache interface { Get(id string) *Leaderboard GetAllLeaderboards() []*Leaderboard RefreshAllLeaderboards(ctx context.Context) error Create(ctx context.Context, id string, authoritative bool, sortOrder, operator int, resetSchedule, metadata string) (*Leaderboard, error) Insert(id string, authoritative bool, sortOrder, operator int, resetSchedule, metadata string, createTime int64) CreateTournament(ctx context.Context, id string, sortOrder, operator int, resetSchedule, metadata, title, description string, category, startTime, endTime, duration, maxSize, maxNumScore int, joinRequired bool) (*Leaderboard, error) InsertTournament(id string, sortOrder, operator int, resetSchedule, metadata, title, description string, category, duration, maxSize, maxNumScore int, joinRequired bool, createTime, startTime, endTime int64) Delete(ctx context.Context, id string) error Remove(id string) }
func NewLocalLeaderboardCache ¶
func NewLocalLeaderboardCache(logger, startupLogger *zap.Logger, db *sql.DB) LeaderboardCache
type LeaderboardConfig ¶ added in v2.1.0
type LeaderboardConfig struct {
BlacklistRankCache []string `` /* 211-byte string literal not displayed */
}
LeaderboardConfig is configuration relevant to the leaderboard system.
func NewLeaderboardConfig ¶ added in v2.1.0
func NewLeaderboardConfig() *LeaderboardConfig
NewLeaderboardConfig creates a new LeaderboardConfig struct.
type LeaderboardRankCache ¶ added in v2.1.0
type LeaderboardRankCache interface { Get(leaderboardId string, expiryUnix int64, ownerId uuid.UUID) int64 Fill(leaderboardId string, expiryUnix int64, records []*api.LeaderboardRecord) Insert(leaderboardId string, expiryUnix int64, sortOrder int, ownerId uuid.UUID, score, subscore int64) int64 Delete(leaderboardId string, expiryUnix int64, ownerId uuid.UUID) bool DeleteLeaderboard(leaderboardId string, expiryUnix int64) bool TrimExpired(nowUnix int64) bool }
func NewLocalLeaderboardRankCache ¶ added in v2.1.0
func NewLocalLeaderboardRankCache(logger, startupLogger *zap.Logger, db *sql.DB, config *LeaderboardConfig, leaderboardCache LeaderboardCache) LeaderboardRankCache
type LeaderboardScheduler ¶ added in v2.1.0
type LeaderboardScheduler interface { Start(runtime *Runtime) Pause() Resume() Stop() Update() }
func NewLocalLeaderboardScheduler ¶ added in v2.1.3
func NewLocalLeaderboardScheduler(logger *zap.Logger, db *sql.DB, cache LeaderboardCache, rankCache LeaderboardRankCache) LeaderboardScheduler
type LeaderboardWithExpiry ¶ added in v2.1.0
type LocalLeaderboardCache ¶
func (*LocalLeaderboardCache) Create ¶
func (l *LocalLeaderboardCache) Create(ctx context.Context, id string, authoritative bool, sortOrder, operator int, resetSchedule, metadata string) (*Leaderboard, error)
func (*LocalLeaderboardCache) CreateTournament ¶ added in v2.1.0
func (l *LocalLeaderboardCache) CreateTournament(ctx context.Context, id string, sortOrder, operator int, resetSchedule, metadata, title, description string, category, startTime, endTime, duration, maxSize, maxNumScore int, joinRequired bool) (*Leaderboard, error)
func (*LocalLeaderboardCache) Delete ¶
func (l *LocalLeaderboardCache) Delete(ctx context.Context, id string) error
func (*LocalLeaderboardCache) Get ¶
func (l *LocalLeaderboardCache) Get(id string) *Leaderboard
func (*LocalLeaderboardCache) GetAllLeaderboards ¶ added in v2.1.0
func (l *LocalLeaderboardCache) GetAllLeaderboards() []*Leaderboard
func (*LocalLeaderboardCache) InsertTournament ¶ added in v2.1.3
func (*LocalLeaderboardCache) RefreshAllLeaderboards ¶ added in v2.1.3
func (l *LocalLeaderboardCache) RefreshAllLeaderboards(ctx context.Context) error
func (*LocalLeaderboardCache) Remove ¶ added in v2.1.3
func (l *LocalLeaderboardCache) Remove(id string)
type LocalLeaderboardRankCache ¶ added in v2.1.0
func (*LocalLeaderboardRankCache) DeleteLeaderboard ¶ added in v2.1.0
func (l *LocalLeaderboardRankCache) DeleteLeaderboard(leaderboardId string, expiryUnix int64) bool
func (*LocalLeaderboardRankCache) Fill ¶ added in v2.1.0
func (l *LocalLeaderboardRankCache) Fill(leaderboardId string, expiryUnix int64, records []*api.LeaderboardRecord)
func (*LocalLeaderboardRankCache) TrimExpired ¶ added in v2.1.0
func (l *LocalLeaderboardRankCache) TrimExpired(nowUnix int64) bool
type LocalLeaderboardScheduler ¶ added in v2.1.3
func (*LocalLeaderboardScheduler) Pause ¶ added in v2.1.3
func (ls *LocalLeaderboardScheduler) Pause()
func (*LocalLeaderboardScheduler) Resume ¶ added in v2.1.3
func (ls *LocalLeaderboardScheduler) Resume()
func (*LocalLeaderboardScheduler) Start ¶ added in v2.1.3
func (ls *LocalLeaderboardScheduler) Start(runtime *Runtime)
func (*LocalLeaderboardScheduler) Stop ¶ added in v2.1.3
func (ls *LocalLeaderboardScheduler) Stop()
func (*LocalLeaderboardScheduler) Update ¶ added in v2.1.3
func (ls *LocalLeaderboardScheduler) Update()
type LocalMatchRegistry ¶
func (*LocalMatchRegistry) AwaitJoinMarker ¶ added in v2.3.0
func (*LocalMatchRegistry) CreateMatch ¶ added in v2.1.3
func (r *LocalMatchRegistry) CreateMatch(ctx context.Context, logger *zap.Logger, createFn RuntimeMatchCreateFunction, module string, params map[string]interface{}) (string, error)
func (*LocalMatchRegistry) GetMatch ¶
func (r *LocalMatchRegistry) GetMatch(id uuid.UUID) *MatchHandler
func (*LocalMatchRegistry) GetMatchLabel ¶ added in v2.3.0
func (*LocalMatchRegistry) Join ¶
func (r *LocalMatchRegistry) Join(id uuid.UUID, presences []*MatchPresence)
func (*LocalMatchRegistry) JoinAttempt ¶ added in v2.0.2
func (*LocalMatchRegistry) Kick ¶
func (r *LocalMatchRegistry) Kick(stream PresenceStream, presences []*MatchPresence)
func (*LocalMatchRegistry) Leave ¶
func (r *LocalMatchRegistry) Leave(id uuid.UUID, presences []*MatchPresence)
func (*LocalMatchRegistry) ListMatches ¶
func (r *LocalMatchRegistry) ListMatches(ctx context.Context, limit int, authoritative *wrappers.BoolValue, label *wrappers.StringValue, minSize *wrappers.Int32Value, maxSize *wrappers.Int32Value, query *wrappers.StringValue) ([]*api.Match, error)
func (*LocalMatchRegistry) NewMatch ¶
func (r *LocalMatchRegistry) NewMatch(logger *zap.Logger, id uuid.UUID, core RuntimeMatchCore, params map[string]interface{}) (*MatchHandler, error)
func (*LocalMatchRegistry) RemoveMatch ¶
func (r *LocalMatchRegistry) RemoveMatch(id uuid.UUID, stream PresenceStream)
func (*LocalMatchRegistry) Stop ¶
func (r *LocalMatchRegistry) Stop(graceSeconds int) chan struct{}
func (*LocalMatchRegistry) UpdateMatchLabel ¶ added in v2.1.1
func (r *LocalMatchRegistry) UpdateMatchLabel(id uuid.UUID, label string) error
type LocalMatchmaker ¶
type LocalMessageRouter ¶
type LocalMessageRouter struct {
// contains filtered or unexported fields
}
func (*LocalMessageRouter) SendDeferred ¶ added in v2.3.0
func (r *LocalMessageRouter) SendDeferred(logger *zap.Logger, isStream bool, mode uint8, messages []*DeferredMessage)
func (*LocalMessageRouter) SendToPresenceIDs ¶
func (r *LocalMessageRouter) SendToPresenceIDs(logger *zap.Logger, presenceIDs []*PresenceID, isStream bool, mode uint8, envelope *rtapi.Envelope)
func (*LocalMessageRouter) SendToStream ¶
func (r *LocalMessageRouter) SendToStream(logger *zap.Logger, stream PresenceStream, envelope *rtapi.Envelope)
type LocalTracker ¶
func (*LocalTracker) Count ¶
func (t *LocalTracker) Count() int
func (*LocalTracker) CountByStream ¶
func (t *LocalTracker) CountByStream(stream PresenceStream) int
func (*LocalTracker) CountByStreamModeFilter ¶
func (t *LocalTracker) CountByStreamModeFilter(modes map[uint8]*uint8) map[*PresenceStream]int32
func (*LocalTracker) GetBySessionIDStreamUserID ¶ added in v2.0.2
func (t *LocalTracker) GetBySessionIDStreamUserID(node string, sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID) *PresenceMeta
func (*LocalTracker) GetLocalBySessionIDStreamUserID ¶
func (t *LocalTracker) GetLocalBySessionIDStreamUserID(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID) *PresenceMeta
func (*LocalTracker) ListByStream ¶
func (t *LocalTracker) ListByStream(stream PresenceStream, includeHidden bool, includeNotHidden bool) []*Presence
func (*LocalTracker) ListLocalSessionIDByStream ¶
func (t *LocalTracker) ListLocalSessionIDByStream(stream PresenceStream) []uuid.UUID
func (*LocalTracker) ListNodesForStream ¶
func (t *LocalTracker) ListNodesForStream(stream PresenceStream) map[string]struct{}
func (*LocalTracker) ListPresenceIDByStream ¶
func (t *LocalTracker) ListPresenceIDByStream(stream PresenceStream) []*PresenceID
func (*LocalTracker) SetMatchJoinListener ¶ added in v2.0.2
func (t *LocalTracker) SetMatchJoinListener(f func(id uuid.UUID, joins []*MatchPresence))
func (*LocalTracker) SetMatchLeaveListener ¶
func (t *LocalTracker) SetMatchLeaveListener(f func(id uuid.UUID, leaves []*MatchPresence))
func (*LocalTracker) Stop ¶
func (t *LocalTracker) Stop()
func (*LocalTracker) StreamExists ¶
func (t *LocalTracker) StreamExists(stream PresenceStream) bool
func (*LocalTracker) Track ¶
func (t *LocalTracker) Track(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID, meta PresenceMeta, allowIfFirstForSession bool) (bool, bool)
func (*LocalTracker) Untrack ¶
func (t *LocalTracker) Untrack(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID)
func (*LocalTracker) UntrackAll ¶
func (t *LocalTracker) UntrackAll(sessionID uuid.UUID)
func (*LocalTracker) UntrackByStream ¶
func (t *LocalTracker) UntrackByStream(stream PresenceStream)
func (*LocalTracker) UntrackLocalByStream ¶
func (t *LocalTracker) UntrackLocalByStream(stream PresenceStream)
func (*LocalTracker) Update ¶
func (t *LocalTracker) Update(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID, meta PresenceMeta, allowIfFirstForSession bool) bool
type LoggerConfig ¶
type LoggerConfig struct { Level string `yaml:"level" json:"level" usage:"Log level to set. Valid values are 'debug', 'info', 'warn', 'error'. Default 'info'."` Stdout bool `yaml:"stdout" json:"stdout" usage:"Log to standard console output (as well as to a file if set). Default true."` File string `` /* 135-byte string literal not displayed */ Rotation bool `yaml:"rotation" json:"rotation" usage:"Rotate log files. Default is false."` // Reference: https://godoc.org/gopkg.in/natefinch/lumberjack.v2 MaxSize int `` /* 139-byte string literal not displayed */ MaxAge int `` /* 195-byte string literal not displayed */ MaxBackups int `` /* 188-byte string literal not displayed */ LocalTime bool `` /* 184-byte string literal not displayed */ Compress bool `yaml:"compress" json:"compress" usage:"This determines if the rotated log files should be compressed using gzip."` }
LoggerConfig is configuration relevant to logging levels and output.
func NewLoggerConfig ¶
func NewLoggerConfig() *LoggerConfig
NewLoggerConfig creates a new LoggerConfig struct.
type MatchConfig ¶ added in v2.0.2
type MatchConfig struct { InputQueueSize int `` /* 181-byte string literal not displayed */ CallQueueSize int `` /* 176-byte string literal not displayed */ JoinAttemptQueueSize int `` /* 174-byte string literal not displayed */ DeferredQueueSize int `` /* 190-byte string literal not displayed */ }
MatchConfig is configuration relevant to authoritative realtime multiplayer matches.
func NewMatchConfig ¶ added in v2.0.2
func NewMatchConfig() *MatchConfig
NewMatchConfig creates a new MatchConfig struct.
type MatchDataMessage ¶
type MatchDataMessage struct { UserID uuid.UUID SessionID uuid.UUID Username string Node string OpCode int64 Data []byte ReceiveTime int64 }
func (*MatchDataMessage) GetData ¶ added in v2.1.0
func (m *MatchDataMessage) GetData() []byte
func (*MatchDataMessage) GetHidden ¶ added in v2.1.0
func (m *MatchDataMessage) GetHidden() bool
func (*MatchDataMessage) GetNodeId ¶ added in v2.1.0
func (m *MatchDataMessage) GetNodeId() string
func (*MatchDataMessage) GetOpCode ¶ added in v2.1.0
func (m *MatchDataMessage) GetOpCode() int64
func (*MatchDataMessage) GetPersistence ¶ added in v2.1.0
func (m *MatchDataMessage) GetPersistence() bool
func (*MatchDataMessage) GetReceiveTime ¶ added in v2.1.0
func (m *MatchDataMessage) GetReceiveTime() int64
func (*MatchDataMessage) GetSessionId ¶ added in v2.1.0
func (m *MatchDataMessage) GetSessionId() string
func (*MatchDataMessage) GetStatus ¶ added in v2.1.0
func (m *MatchDataMessage) GetStatus() string
func (*MatchDataMessage) GetUserId ¶ added in v2.1.0
func (m *MatchDataMessage) GetUserId() string
func (*MatchDataMessage) GetUsername ¶ added in v2.1.0
func (m *MatchDataMessage) GetUsername() string
type MatchHandler ¶
type MatchHandler struct { JoinMarkerList *MatchJoinMarkerList // Identification not (directly) controlled by match init. ID uuid.UUID Node string IDStr string Stream PresenceStream // Configuration set by match init. Rate int64 // contains filtered or unexported fields }
func NewMatchHandler ¶
func NewMatchHandler(logger *zap.Logger, config Config, matchRegistry MatchRegistry, core RuntimeMatchCore, id uuid.UUID, node string, params map[string]interface{}) (*MatchHandler, error)
func (*MatchHandler) Close ¶
func (mh *MatchHandler) Close()
Used when the match is closed externally.
func (*MatchHandler) Label ¶
func (mh *MatchHandler) Label() string
func (*MatchHandler) QueueData ¶
func (mh *MatchHandler) QueueData(m *MatchDataMessage)
func (*MatchHandler) QueueJoin ¶ added in v2.3.0
func (mh *MatchHandler) QueueJoin(joins []*MatchPresence) bool
func (*MatchHandler) QueueJoinAttempt ¶ added in v2.3.0
func (mh *MatchHandler) QueueJoinAttempt(ctx context.Context, resultCh chan<- *MatchJoinResult, userID, sessionID uuid.UUID, username, node string, metadata map[string]string) bool
func (*MatchHandler) QueueLeave ¶ added in v2.3.0
func (mh *MatchHandler) QueueLeave(leaves []*MatchPresence) bool
func (*MatchHandler) QueueTerminate ¶ added in v2.3.0
func (mh *MatchHandler) QueueTerminate(graceSeconds int) bool
func (*MatchHandler) Stop ¶
func (mh *MatchHandler) Stop()
Used when an internal match process (or error) requires it to stop.
type MatchIndexEntry ¶ added in v2.1.1
type MatchJoinMarker ¶ added in v2.3.0
type MatchJoinMarker struct {
// contains filtered or unexported fields
}
Used to monitor when match presences begin and complete their match join process.
type MatchJoinMarkerList ¶ added in v2.3.0
func (*MatchJoinMarkerList) Add ¶ added in v2.3.0
func (m *MatchJoinMarkerList) Add(sessionID uuid.UUID, expiryTick int64)
func (*MatchJoinMarkerList) ClearExpired ¶ added in v2.3.0
func (m *MatchJoinMarkerList) ClearExpired(tick int64)
func (*MatchJoinMarkerList) Get ¶ added in v2.3.0
func (m *MatchJoinMarkerList) Get(sessionID uuid.UUID) <-chan struct{}
func (*MatchJoinMarkerList) Mark ¶ added in v2.3.0
func (m *MatchJoinMarkerList) Mark(sessionID uuid.UUID)
type MatchJoinResult ¶
type MatchPresence ¶
Represents routing and identify information for a single match participant.
func (*MatchPresence) GetHidden ¶ added in v2.1.0
func (p *MatchPresence) GetHidden() bool
func (*MatchPresence) GetNodeId ¶ added in v2.1.0
func (p *MatchPresence) GetNodeId() string
func (*MatchPresence) GetPersistence ¶ added in v2.1.0
func (p *MatchPresence) GetPersistence() bool
func (*MatchPresence) GetSessionId ¶ added in v2.1.0
func (p *MatchPresence) GetSessionId() string
func (*MatchPresence) GetStatus ¶ added in v2.1.0
func (p *MatchPresence) GetStatus() string
func (*MatchPresence) GetUserId ¶ added in v2.1.0
func (p *MatchPresence) GetUserId() string
func (*MatchPresence) GetUsername ¶ added in v2.1.0
func (p *MatchPresence) GetUsername() string
type MatchPresenceList ¶ added in v2.3.0
Maintains the match presences for routing and validation purposes.
func (*MatchPresenceList) Contains ¶ added in v2.3.0
func (m *MatchPresenceList) Contains(presence *PresenceID) bool
func (*MatchPresenceList) Join ¶ added in v2.3.0
func (m *MatchPresenceList) Join(joins []*MatchPresence)
func (*MatchPresenceList) Leave ¶ added in v2.3.0
func (m *MatchPresenceList) Leave(leaves []*MatchPresence)
func (*MatchPresenceList) List ¶ added in v2.3.0
func (m *MatchPresenceList) List() []*PresenceID
type MatchRegistry ¶
type MatchRegistry interface { // Create and start a new match, given a Lua module name or registered Go match function. CreateMatch(ctx context.Context, logger *zap.Logger, createFn RuntimeMatchCreateFunction, module string, params map[string]interface{}) (string, error) // Register and initialise a match that's ready to run. NewMatch(logger *zap.Logger, id uuid.UUID, core RuntimeMatchCore, params map[string]interface{}) (*MatchHandler, error) // Return a match handler by ID, only from the local node. GetMatch(id uuid.UUID) *MatchHandler // Remove a tracked match and ensure all its presences are cleaned up. // Does not ensure the match process itself is no longer running, that must be handled separately. RemoveMatch(id uuid.UUID, stream PresenceStream) // Get the label for a match. GetMatchLabel(ctx context.Context, id uuid.UUID, node string) (string, error) // Update the label entry for a given match. UpdateMatchLabel(id uuid.UUID, label string) error // List (and optionally filter) currently running matches. // This can list across both authoritative and relayed matches. ListMatches(ctx context.Context, limit int, authoritative *wrappers.BoolValue, label *wrappers.StringValue, minSize *wrappers.Int32Value, maxSize *wrappers.Int32Value, query *wrappers.StringValue) ([]*api.Match, error) // Stop the match registry and close all matches it's tracking. Stop(graceSeconds int) chan struct{} // Pass a user join attempt to a match handler. Returns if the match was found, if the join was accepted, a reason for any rejection, and the match label. JoinAttempt(ctx context.Context, id uuid.UUID, node string, userID, sessionID uuid.UUID, username, fromNode string, metadata map[string]string) (bool, bool, string, string) // Notify a match handler that one or more users have successfully joined the match. // Expects that the caller has already determined the match is hosted on the current node. Join(id uuid.UUID, presences []*MatchPresence) // Notify a match handler that one or more users have left or disconnected. // Expects that the caller has already determined the match is hosted on the current node. Leave(id uuid.UUID, presences []*MatchPresence) // Called by match handlers to request the removal fo a match participant. Kick(stream PresenceStream, presences []*MatchPresence) // Pass a data payload (usually from a user) to the appropriate match handler. // Assumes that the data sender has already been validated as a match participant before this call. SendData(id uuid.UUID, node string, userID, sessionID uuid.UUID, username, fromNode string, opCode int64, data []byte, receiveTime int64) // Wait for the match to confirm a user has completed their join process. AwaitJoinMarker(ctx context.Context, id uuid.UUID, node string, sessionID uuid.UUID, fromNode string) error }
func NewLocalMatchRegistry ¶
type Matchmaker ¶
type Matchmaker interface { Add(session Session, query string, minCount int, maxCount int, stringProperties map[string]string, numericProperties map[string]float64) (string, []*MatchmakerEntry, error) Remove(sessionID uuid.UUID, ticket string) error RemoveAll(sessionID uuid.UUID) error }
func NewLocalMatchmaker ¶
func NewLocalMatchmaker(startupLogger *zap.Logger, node string) Matchmaker
type MatchmakerEntry ¶
type MatchmakerEntry struct { Ticket string `json:"ticket"` Presence *MatchmakerPresence `json:"presence"` Properties map[string]interface{} `json:"properties"` // Cached for when we need them returned to clients, but not indexed. StringProperties map[string]string `json:"-"` NumericProperties map[string]float64 `json:"-"` SessionID uuid.UUID `json:"-"` }
func (*MatchmakerEntry) GetPresence ¶ added in v2.1.0
func (m *MatchmakerEntry) GetPresence() runtime.Presence
func (*MatchmakerEntry) GetProperties ¶ added in v2.1.0
func (m *MatchmakerEntry) GetProperties() map[string]interface{}
func (*MatchmakerEntry) GetTicket ¶ added in v2.1.0
func (m *MatchmakerEntry) GetTicket() string
type MatchmakerPresence ¶
type MatchmakerPresence struct { UserId string `json:"user_id"` SessionId string `json:"session_id"` Username string `json:"username"` Node string `json:"node"` }
func (*MatchmakerPresence) GetHidden ¶ added in v2.1.0
func (p *MatchmakerPresence) GetHidden() bool
func (*MatchmakerPresence) GetNodeId ¶ added in v2.1.0
func (p *MatchmakerPresence) GetNodeId() string
func (*MatchmakerPresence) GetPersistence ¶ added in v2.1.0
func (p *MatchmakerPresence) GetPersistence() bool
func (*MatchmakerPresence) GetSessionId ¶ added in v2.1.0
func (p *MatchmakerPresence) GetSessionId() string
func (*MatchmakerPresence) GetStatus ¶ added in v2.1.0
func (p *MatchmakerPresence) GetStatus() string
func (*MatchmakerPresence) GetUserId ¶ added in v2.1.0
func (p *MatchmakerPresence) GetUserId() string
func (*MatchmakerPresence) GetUsername ¶ added in v2.1.0
func (p *MatchmakerPresence) GetUsername() string
type MessageRouter ¶
type MessageRouter interface { SendToPresenceIDs(*zap.Logger, []*PresenceID, bool, uint8, *rtapi.Envelope) SendToStream(*zap.Logger, PresenceStream, *rtapi.Envelope) SendDeferred(*zap.Logger, bool, uint8, []*DeferredMessage) }
MessageRouter is responsible for sending a message to a list of presences or to an entire stream.
func NewLocalMessageRouter ¶
func NewLocalMessageRouter(sessionRegistry *SessionRegistry, tracker Tracker, jsonpbMarshaler *jsonpb.Marshaler) MessageRouter
type MetricsConfig ¶
type MetricsConfig struct { ReportingFreqSec int `yaml:"reporting_freq_sec" json:"reporting_freq_sec" usage:"Frequency of metrics exports. Default is 60 seconds."` StackdriverProjectID string `` /* 218-byte string literal not displayed */ Namespace string `` /* 135-byte string literal not displayed */ PrometheusPort int `yaml:"prometheus_port" json:"prometheus_port" usage:"Port to expose Prometheus. If '0' Prometheus exports are disabled."` }
MetricsConfig is configuration relevant to metrics capturing and output.
func NewMetricsConfig ¶
func NewMetricsConfig() *MetricsConfig
NewMetricsConfig creates a new MatricsConfig struct.
type Pipeline ¶
type Pipeline struct {
// contains filtered or unexported fields
}
func NewPipeline ¶
func NewPipeline(logger *zap.Logger, config Config, db *sql.DB, jsonpbMarshaler *jsonpb.Marshaler, jsonpbUnmarshaler *jsonpb.Unmarshaler, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, matchmaker Matchmaker, tracker Tracker, router MessageRouter, runtime *Runtime) *Pipeline
type Presence ¶
type Presence struct { ID PresenceID Stream PresenceStream UserID uuid.UUID Meta PresenceMeta }
func (*Presence) GetPersistence ¶ added in v2.1.0
func (*Presence) GetSessionId ¶ added in v2.1.0
func (*Presence) GetUsername ¶ added in v2.1.0
type PresenceEvent ¶
type PresenceID ¶
type PresenceMeta ¶
type PresenceMeta struct { Format SessionFormat Hidden bool Persistence bool Username string Status string }
func (*PresenceMeta) GetHidden ¶ added in v2.1.0
func (pm *PresenceMeta) GetHidden() bool
func (*PresenceMeta) GetPersistence ¶ added in v2.1.0
func (pm *PresenceMeta) GetPersistence() bool
func (*PresenceMeta) GetStatus ¶ added in v2.1.0
func (pm *PresenceMeta) GetStatus() string
func (*PresenceMeta) GetUsername ¶ added in v2.1.0
func (pm *PresenceMeta) GetUsername() string
type PresenceStream ¶
type RankMap ¶ added in v2.1.0
type Runtime ¶
type Runtime struct {
// contains filtered or unexported fields
}
func NewRuntime ¶ added in v2.1.0
func NewRuntime(logger, startupLogger *zap.Logger, db *sql.DB, jsonpbMarshaler *jsonpb.Marshaler, jsonpbUnmarshaler *jsonpb.Unmarshaler, config Config, socialClient *social.Client, leaderboardCache LeaderboardCache, leaderboardRankCache LeaderboardRankCache, leaderboardScheduler LeaderboardScheduler, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, tracker Tracker, router MessageRouter) (*Runtime, error)
func (*Runtime) AfterAddFriends ¶ added in v2.1.0
func (r *Runtime) AfterAddFriends() RuntimeAfterAddFriendsFunction
func (*Runtime) AfterAddGroupUsers ¶ added in v2.1.0
func (r *Runtime) AfterAddGroupUsers() RuntimeAfterAddGroupUsersFunction
func (*Runtime) AfterAuthenticateCustom ¶ added in v2.1.0
func (r *Runtime) AfterAuthenticateCustom() RuntimeAfterAuthenticateCustomFunction
func (*Runtime) AfterAuthenticateDevice ¶ added in v2.1.0
func (r *Runtime) AfterAuthenticateDevice() RuntimeAfterAuthenticateDeviceFunction
func (*Runtime) AfterAuthenticateEmail ¶ added in v2.1.0
func (r *Runtime) AfterAuthenticateEmail() RuntimeAfterAuthenticateEmailFunction
func (*Runtime) AfterAuthenticateFacebook ¶ added in v2.1.0
func (r *Runtime) AfterAuthenticateFacebook() RuntimeAfterAuthenticateFacebookFunction
func (*Runtime) AfterAuthenticateGameCenter ¶ added in v2.1.0
func (r *Runtime) AfterAuthenticateGameCenter() RuntimeAfterAuthenticateGameCenterFunction
func (*Runtime) AfterAuthenticateGoogle ¶ added in v2.1.0
func (r *Runtime) AfterAuthenticateGoogle() RuntimeAfterAuthenticateGoogleFunction
func (*Runtime) AfterAuthenticateSteam ¶ added in v2.1.0
func (r *Runtime) AfterAuthenticateSteam() RuntimeAfterAuthenticateSteamFunction
func (*Runtime) AfterBlockFriends ¶ added in v2.1.0
func (r *Runtime) AfterBlockFriends() RuntimeAfterBlockFriendsFunction
func (*Runtime) AfterCreateGroup ¶ added in v2.1.0
func (r *Runtime) AfterCreateGroup() RuntimeAfterCreateGroupFunction
func (*Runtime) AfterDeleteFriends ¶ added in v2.1.0
func (r *Runtime) AfterDeleteFriends() RuntimeAfterDeleteFriendsFunction
func (*Runtime) AfterDeleteGroup ¶ added in v2.1.0
func (r *Runtime) AfterDeleteGroup() RuntimeAfterDeleteGroupFunction
func (*Runtime) AfterDeleteLeaderboardRecord ¶ added in v2.1.0
func (r *Runtime) AfterDeleteLeaderboardRecord() RuntimeAfterDeleteLeaderboardRecordFunction
func (*Runtime) AfterDeleteNotification ¶ added in v2.1.0
func (r *Runtime) AfterDeleteNotification() RuntimeAfterDeleteNotificationFunction
func (*Runtime) AfterDeleteStorageObjects ¶ added in v2.1.0
func (r *Runtime) AfterDeleteStorageObjects() RuntimeAfterDeleteStorageObjectsFunction
func (*Runtime) AfterGetAccount ¶ added in v2.1.0
func (r *Runtime) AfterGetAccount() RuntimeAfterGetAccountFunction
func (*Runtime) AfterGetUsers ¶ added in v2.1.0
func (r *Runtime) AfterGetUsers() RuntimeAfterGetUsersFunction
func (*Runtime) AfterImportFacebookFriends ¶ added in v2.1.0
func (r *Runtime) AfterImportFacebookFriends() RuntimeAfterImportFacebookFriendsFunction
func (*Runtime) AfterJoinGroup ¶ added in v2.1.0
func (r *Runtime) AfterJoinGroup() RuntimeAfterJoinGroupFunction
func (*Runtime) AfterJoinTournament ¶ added in v2.1.0
func (r *Runtime) AfterJoinTournament() RuntimeAfterJoinTournamentFunction
func (*Runtime) AfterKickGroupUsers ¶ added in v2.1.0
func (r *Runtime) AfterKickGroupUsers() RuntimeAfterKickGroupUsersFunction
func (*Runtime) AfterLeaveGroup ¶ added in v2.1.0
func (r *Runtime) AfterLeaveGroup() RuntimeAfterLeaveGroupFunction
func (*Runtime) AfterLinkCustom ¶ added in v2.1.0
func (r *Runtime) AfterLinkCustom() RuntimeAfterLinkCustomFunction
func (*Runtime) AfterLinkDevice ¶ added in v2.1.0
func (r *Runtime) AfterLinkDevice() RuntimeAfterLinkDeviceFunction
func (*Runtime) AfterLinkEmail ¶ added in v2.1.0
func (r *Runtime) AfterLinkEmail() RuntimeAfterLinkEmailFunction
func (*Runtime) AfterLinkFacebook ¶ added in v2.1.0
func (r *Runtime) AfterLinkFacebook() RuntimeAfterLinkFacebookFunction
func (*Runtime) AfterLinkGameCenter ¶ added in v2.1.0
func (r *Runtime) AfterLinkGameCenter() RuntimeAfterLinkGameCenterFunction
func (*Runtime) AfterLinkGoogle ¶ added in v2.1.0
func (r *Runtime) AfterLinkGoogle() RuntimeAfterLinkGoogleFunction
func (*Runtime) AfterLinkSteam ¶ added in v2.1.0
func (r *Runtime) AfterLinkSteam() RuntimeAfterLinkSteamFunction
func (*Runtime) AfterListChannelMessages ¶ added in v2.1.0
func (r *Runtime) AfterListChannelMessages() RuntimeAfterListChannelMessagesFunction
func (*Runtime) AfterListFriends ¶ added in v2.1.0
func (r *Runtime) AfterListFriends() RuntimeAfterListFriendsFunction
func (*Runtime) AfterListGroupUsers ¶ added in v2.1.0
func (r *Runtime) AfterListGroupUsers() RuntimeAfterListGroupUsersFunction
func (*Runtime) AfterListGroups ¶ added in v2.1.0
func (r *Runtime) AfterListGroups() RuntimeAfterListGroupsFunction
func (*Runtime) AfterListLeaderboardRecords ¶ added in v2.1.0
func (r *Runtime) AfterListLeaderboardRecords() RuntimeAfterListLeaderboardRecordsFunction
func (*Runtime) AfterListLeaderboardRecordsAroundOwner ¶ added in v2.1.0
func (r *Runtime) AfterListLeaderboardRecordsAroundOwner() RuntimeAfterListLeaderboardRecordsAroundOwnerFunction
func (*Runtime) AfterListMatches ¶ added in v2.1.0
func (r *Runtime) AfterListMatches() RuntimeAfterListMatchesFunction
func (*Runtime) AfterListNotifications ¶ added in v2.1.0
func (r *Runtime) AfterListNotifications() RuntimeAfterListNotificationsFunction
func (*Runtime) AfterListStorageObjects ¶ added in v2.1.0
func (r *Runtime) AfterListStorageObjects() RuntimeAfterListStorageObjectsFunction
func (*Runtime) AfterListTournamentRecords ¶ added in v2.1.0
func (r *Runtime) AfterListTournamentRecords() RuntimeAfterListTournamentRecordsFunction
func (*Runtime) AfterListTournamentRecordsAroundOwner ¶ added in v2.1.0
func (r *Runtime) AfterListTournamentRecordsAroundOwner() RuntimeAfterListTournamentRecordsAroundOwnerFunction
func (*Runtime) AfterListTournaments ¶ added in v2.1.0
func (r *Runtime) AfterListTournaments() RuntimeAfterListTournamentsFunction
func (*Runtime) AfterListUserGroups ¶ added in v2.1.0
func (r *Runtime) AfterListUserGroups() RuntimeAfterListUserGroupsFunction
func (*Runtime) AfterPromoteGroupUsers ¶ added in v2.1.0
func (r *Runtime) AfterPromoteGroupUsers() RuntimeAfterPromoteGroupUsersFunction
func (*Runtime) AfterReadStorageObjects ¶ added in v2.1.0
func (r *Runtime) AfterReadStorageObjects() RuntimeAfterReadStorageObjectsFunction
func (*Runtime) AfterRt ¶ added in v2.1.0
func (r *Runtime) AfterRt(id string) RuntimeAfterRtFunction
func (*Runtime) AfterUnlinkCustom ¶ added in v2.1.0
func (r *Runtime) AfterUnlinkCustom() RuntimeAfterUnlinkCustomFunction
func (*Runtime) AfterUnlinkDevice ¶ added in v2.1.0
func (r *Runtime) AfterUnlinkDevice() RuntimeAfterUnlinkDeviceFunction
func (*Runtime) AfterUnlinkEmail ¶ added in v2.1.0
func (r *Runtime) AfterUnlinkEmail() RuntimeAfterUnlinkEmailFunction
func (*Runtime) AfterUnlinkFacebook ¶ added in v2.1.0
func (r *Runtime) AfterUnlinkFacebook() RuntimeAfterUnlinkFacebookFunction
func (*Runtime) AfterUnlinkGameCenter ¶ added in v2.1.0
func (r *Runtime) AfterUnlinkGameCenter() RuntimeAfterUnlinkGameCenterFunction
func (*Runtime) AfterUnlinkGoogle ¶ added in v2.1.0
func (r *Runtime) AfterUnlinkGoogle() RuntimeAfterUnlinkGoogleFunction
func (*Runtime) AfterUnlinkSteam ¶ added in v2.1.0
func (r *Runtime) AfterUnlinkSteam() RuntimeAfterUnlinkSteamFunction
func (*Runtime) AfterUpdateAccount ¶ added in v2.1.0
func (r *Runtime) AfterUpdateAccount() RuntimeAfterUpdateAccountFunction
func (*Runtime) AfterUpdateGroup ¶ added in v2.1.0
func (r *Runtime) AfterUpdateGroup() RuntimeAfterUpdateGroupFunction
func (*Runtime) AfterWriteLeaderboardRecord ¶ added in v2.1.0
func (r *Runtime) AfterWriteLeaderboardRecord() RuntimeAfterWriteLeaderboardRecordFunction
func (*Runtime) AfterWriteStorageObjects ¶ added in v2.1.0
func (r *Runtime) AfterWriteStorageObjects() RuntimeAfterWriteStorageObjectsFunction
func (*Runtime) AfterWriteTournamentRecord ¶ added in v2.1.0
func (r *Runtime) AfterWriteTournamentRecord() RuntimeAfterWriteTournamentRecordFunction
func (*Runtime) BeforeAddFriends ¶ added in v2.1.0
func (r *Runtime) BeforeAddFriends() RuntimeBeforeAddFriendsFunction
func (*Runtime) BeforeAddGroupUsers ¶ added in v2.1.0
func (r *Runtime) BeforeAddGroupUsers() RuntimeBeforeAddGroupUsersFunction
func (*Runtime) BeforeAuthenticateCustom ¶ added in v2.1.0
func (r *Runtime) BeforeAuthenticateCustom() RuntimeBeforeAuthenticateCustomFunction
func (*Runtime) BeforeAuthenticateDevice ¶ added in v2.1.0
func (r *Runtime) BeforeAuthenticateDevice() RuntimeBeforeAuthenticateDeviceFunction
func (*Runtime) BeforeAuthenticateEmail ¶ added in v2.1.0
func (r *Runtime) BeforeAuthenticateEmail() RuntimeBeforeAuthenticateEmailFunction
func (*Runtime) BeforeAuthenticateFacebook ¶ added in v2.1.0
func (r *Runtime) BeforeAuthenticateFacebook() RuntimeBeforeAuthenticateFacebookFunction
func (*Runtime) BeforeAuthenticateGameCenter ¶ added in v2.1.0
func (r *Runtime) BeforeAuthenticateGameCenter() RuntimeBeforeAuthenticateGameCenterFunction
func (*Runtime) BeforeAuthenticateGoogle ¶ added in v2.1.0
func (r *Runtime) BeforeAuthenticateGoogle() RuntimeBeforeAuthenticateGoogleFunction
func (*Runtime) BeforeAuthenticateSteam ¶ added in v2.1.0
func (r *Runtime) BeforeAuthenticateSteam() RuntimeBeforeAuthenticateSteamFunction
func (*Runtime) BeforeBlockFriends ¶ added in v2.1.0
func (r *Runtime) BeforeBlockFriends() RuntimeBeforeBlockFriendsFunction
func (*Runtime) BeforeCreateGroup ¶ added in v2.1.0
func (r *Runtime) BeforeCreateGroup() RuntimeBeforeCreateGroupFunction
func (*Runtime) BeforeDeleteFriends ¶ added in v2.1.0
func (r *Runtime) BeforeDeleteFriends() RuntimeBeforeDeleteFriendsFunction
func (*Runtime) BeforeDeleteGroup ¶ added in v2.1.0
func (r *Runtime) BeforeDeleteGroup() RuntimeBeforeDeleteGroupFunction
func (*Runtime) BeforeDeleteLeaderboardRecord ¶ added in v2.1.0
func (r *Runtime) BeforeDeleteLeaderboardRecord() RuntimeBeforeDeleteLeaderboardRecordFunction
func (*Runtime) BeforeDeleteNotification ¶ added in v2.1.0
func (r *Runtime) BeforeDeleteNotification() RuntimeBeforeDeleteNotificationFunction
func (*Runtime) BeforeDeleteStorageObjects ¶ added in v2.1.0
func (r *Runtime) BeforeDeleteStorageObjects() RuntimeBeforeDeleteStorageObjectsFunction
func (*Runtime) BeforeGetAccount ¶ added in v2.1.0
func (r *Runtime) BeforeGetAccount() RuntimeBeforeGetAccountFunction
func (*Runtime) BeforeGetUsers ¶ added in v2.1.0
func (r *Runtime) BeforeGetUsers() RuntimeBeforeGetUsersFunction
func (*Runtime) BeforeImportFacebookFriends ¶ added in v2.1.0
func (r *Runtime) BeforeImportFacebookFriends() RuntimeBeforeImportFacebookFriendsFunction
func (*Runtime) BeforeJoinGroup ¶ added in v2.1.0
func (r *Runtime) BeforeJoinGroup() RuntimeBeforeJoinGroupFunction
func (*Runtime) BeforeJoinTournament ¶ added in v2.1.0
func (r *Runtime) BeforeJoinTournament() RuntimeBeforeJoinTournamentFunction
func (*Runtime) BeforeKickGroupUsers ¶ added in v2.1.0
func (r *Runtime) BeforeKickGroupUsers() RuntimeBeforeKickGroupUsersFunction
func (*Runtime) BeforeLeaveGroup ¶ added in v2.1.0
func (r *Runtime) BeforeLeaveGroup() RuntimeBeforeLeaveGroupFunction
func (*Runtime) BeforeLinkCustom ¶ added in v2.1.0
func (r *Runtime) BeforeLinkCustom() RuntimeBeforeLinkCustomFunction
func (*Runtime) BeforeLinkDevice ¶ added in v2.1.0
func (r *Runtime) BeforeLinkDevice() RuntimeBeforeLinkDeviceFunction
func (*Runtime) BeforeLinkEmail ¶ added in v2.1.0
func (r *Runtime) BeforeLinkEmail() RuntimeBeforeLinkEmailFunction
func (*Runtime) BeforeLinkFacebook ¶ added in v2.1.0
func (r *Runtime) BeforeLinkFacebook() RuntimeBeforeLinkFacebookFunction
func (*Runtime) BeforeLinkGameCenter ¶ added in v2.1.0
func (r *Runtime) BeforeLinkGameCenter() RuntimeBeforeLinkGameCenterFunction
func (*Runtime) BeforeLinkGoogle ¶ added in v2.1.0
func (r *Runtime) BeforeLinkGoogle() RuntimeBeforeLinkGoogleFunction
func (*Runtime) BeforeLinkSteam ¶ added in v2.1.0
func (r *Runtime) BeforeLinkSteam() RuntimeBeforeLinkSteamFunction
func (*Runtime) BeforeListChannelMessages ¶ added in v2.1.0
func (r *Runtime) BeforeListChannelMessages() RuntimeBeforeListChannelMessagesFunction
func (*Runtime) BeforeListFriends ¶ added in v2.1.0
func (r *Runtime) BeforeListFriends() RuntimeBeforeListFriendsFunction
func (*Runtime) BeforeListGroupUsers ¶ added in v2.1.0
func (r *Runtime) BeforeListGroupUsers() RuntimeBeforeListGroupUsersFunction
func (*Runtime) BeforeListGroups ¶ added in v2.1.0
func (r *Runtime) BeforeListGroups() RuntimeBeforeListGroupsFunction
func (*Runtime) BeforeListLeaderboardRecords ¶ added in v2.1.0
func (r *Runtime) BeforeListLeaderboardRecords() RuntimeBeforeListLeaderboardRecordsFunction
func (*Runtime) BeforeListLeaderboardRecordsAroundOwner ¶ added in v2.1.0
func (r *Runtime) BeforeListLeaderboardRecordsAroundOwner() RuntimeBeforeListLeaderboardRecordsAroundOwnerFunction
func (*Runtime) BeforeListMatches ¶ added in v2.1.0
func (r *Runtime) BeforeListMatches() RuntimeBeforeListMatchesFunction
func (*Runtime) BeforeListNotifications ¶ added in v2.1.0
func (r *Runtime) BeforeListNotifications() RuntimeBeforeListNotificationsFunction
func (*Runtime) BeforeListStorageObjects ¶ added in v2.1.0
func (r *Runtime) BeforeListStorageObjects() RuntimeBeforeListStorageObjectsFunction
func (*Runtime) BeforeListTournamentRecords ¶ added in v2.1.0
func (r *Runtime) BeforeListTournamentRecords() RuntimeBeforeListTournamentRecordsFunction
func (*Runtime) BeforeListTournamentRecordsAroundOwner ¶ added in v2.1.0
func (r *Runtime) BeforeListTournamentRecordsAroundOwner() RuntimeBeforeListTournamentRecordsAroundOwnerFunction
func (*Runtime) BeforeListTournaments ¶ added in v2.1.0
func (r *Runtime) BeforeListTournaments() RuntimeBeforeListTournamentsFunction
func (*Runtime) BeforeListUserGroups ¶ added in v2.1.0
func (r *Runtime) BeforeListUserGroups() RuntimeBeforeListUserGroupsFunction
func (*Runtime) BeforePromoteGroupUsers ¶ added in v2.1.0
func (r *Runtime) BeforePromoteGroupUsers() RuntimeBeforePromoteGroupUsersFunction
func (*Runtime) BeforeReadStorageObjects ¶ added in v2.1.0
func (r *Runtime) BeforeReadStorageObjects() RuntimeBeforeReadStorageObjectsFunction
func (*Runtime) BeforeRt ¶ added in v2.1.0
func (r *Runtime) BeforeRt(id string) RuntimeBeforeRtFunction
func (*Runtime) BeforeUnlinkCustom ¶ added in v2.1.0
func (r *Runtime) BeforeUnlinkCustom() RuntimeBeforeUnlinkCustomFunction
func (*Runtime) BeforeUnlinkDevice ¶ added in v2.1.0
func (r *Runtime) BeforeUnlinkDevice() RuntimeBeforeUnlinkDeviceFunction
func (*Runtime) BeforeUnlinkEmail ¶ added in v2.1.0
func (r *Runtime) BeforeUnlinkEmail() RuntimeBeforeUnlinkEmailFunction
func (*Runtime) BeforeUnlinkFacebook ¶ added in v2.1.0
func (r *Runtime) BeforeUnlinkFacebook() RuntimeBeforeUnlinkFacebookFunction
func (*Runtime) BeforeUnlinkGameCenter ¶ added in v2.1.0
func (r *Runtime) BeforeUnlinkGameCenter() RuntimeBeforeUnlinkGameCenterFunction
func (*Runtime) BeforeUnlinkGoogle ¶ added in v2.1.0
func (r *Runtime) BeforeUnlinkGoogle() RuntimeBeforeUnlinkGoogleFunction
func (*Runtime) BeforeUnlinkSteam ¶ added in v2.1.0
func (r *Runtime) BeforeUnlinkSteam() RuntimeBeforeUnlinkSteamFunction
func (*Runtime) BeforeUpdateAccount ¶ added in v2.1.0
func (r *Runtime) BeforeUpdateAccount() RuntimeBeforeUpdateAccountFunction
func (*Runtime) BeforeUpdateGroup ¶ added in v2.1.0
func (r *Runtime) BeforeUpdateGroup() RuntimeBeforeUpdateGroupFunction
func (*Runtime) BeforeWriteLeaderboardRecord ¶ added in v2.1.0
func (r *Runtime) BeforeWriteLeaderboardRecord() RuntimeBeforeWriteLeaderboardRecordFunction
func (*Runtime) BeforeWriteStorageObjects ¶ added in v2.1.0
func (r *Runtime) BeforeWriteStorageObjects() RuntimeBeforeWriteStorageObjectsFunction
func (*Runtime) BeforeWriteTournamentRecord ¶ added in v2.1.0
func (r *Runtime) BeforeWriteTournamentRecord() RuntimeBeforeWriteTournamentRecordFunction
func (*Runtime) LeaderboardReset ¶ added in v2.1.0
func (r *Runtime) LeaderboardReset() RuntimeLeaderboardResetFunction
func (*Runtime) MatchCreateFunction ¶ added in v2.1.3
func (r *Runtime) MatchCreateFunction() RuntimeMatchCreateFunction
func (*Runtime) MatchmakerMatched ¶ added in v2.1.0
func (r *Runtime) MatchmakerMatched() RuntimeMatchmakerMatchedFunction
func (*Runtime) Rpc ¶ added in v2.1.0
func (r *Runtime) Rpc(id string) RuntimeRpcFunction
func (*Runtime) TournamentEnd ¶ added in v2.1.0
func (r *Runtime) TournamentEnd() RuntimeTournamentEndFunction
func (*Runtime) TournamentReset ¶ added in v2.1.0
func (r *Runtime) TournamentReset() RuntimeTournamentResetFunction
type RuntimeAfterAddFriendsFunction ¶ added in v2.1.0
type RuntimeAfterAddGroupUsersFunction ¶ added in v2.1.0
type RuntimeAfterAuthenticateCustomFunction ¶ added in v2.1.0
type RuntimeAfterAuthenticateDeviceFunction ¶ added in v2.1.0
type RuntimeAfterAuthenticateEmailFunction ¶ added in v2.1.0
type RuntimeAfterAuthenticateFacebookFunction ¶ added in v2.1.0
type RuntimeAfterAuthenticateGameCenterFunction ¶ added in v2.1.0
type RuntimeAfterAuthenticateGoogleFunction ¶ added in v2.1.0
type RuntimeAfterAuthenticateSteamFunction ¶ added in v2.1.0
type RuntimeAfterBlockFriendsFunction ¶ added in v2.1.0
type RuntimeAfterCreateGroupFunction ¶ added in v2.1.0
type RuntimeAfterDeleteFriendsFunction ¶ added in v2.1.0
type RuntimeAfterDeleteGroupFunction ¶ added in v2.1.0
type RuntimeAfterDeleteLeaderboardRecordFunction ¶ added in v2.1.0
type RuntimeAfterDeleteNotificationFunction ¶ added in v2.1.0
type RuntimeAfterDeleteStorageObjectsFunction ¶ added in v2.1.0
type RuntimeAfterGetAccountFunction ¶ added in v2.1.0
type RuntimeAfterGetUsersFunction ¶ added in v2.1.0
type RuntimeAfterImportFacebookFriendsFunction ¶ added in v2.1.0
type RuntimeAfterJoinGroupFunction ¶ added in v2.1.0
type RuntimeAfterJoinTournamentFunction ¶ added in v2.1.0
type RuntimeAfterKickGroupUsersFunction ¶ added in v2.1.0
type RuntimeAfterLeaveGroupFunction ¶ added in v2.1.0
type RuntimeAfterLinkCustomFunction ¶ added in v2.1.0
type RuntimeAfterLinkDeviceFunction ¶ added in v2.1.0
type RuntimeAfterLinkEmailFunction ¶ added in v2.1.0
type RuntimeAfterLinkFacebookFunction ¶ added in v2.1.0
type RuntimeAfterLinkGameCenterFunction ¶ added in v2.1.0
type RuntimeAfterLinkGoogleFunction ¶ added in v2.1.0
type RuntimeAfterLinkSteamFunction ¶ added in v2.1.0
type RuntimeAfterListChannelMessagesFunction ¶ added in v2.1.0
type RuntimeAfterListFriendsFunction ¶ added in v2.1.0
type RuntimeAfterListGroupUsersFunction ¶ added in v2.1.0
type RuntimeAfterListGroupsFunction ¶ added in v2.1.0
type RuntimeAfterListLeaderboardRecordsAroundOwnerFunction ¶ added in v2.1.0
type RuntimeAfterListLeaderboardRecordsFunction ¶ added in v2.1.0
type RuntimeAfterListMatchesFunction ¶ added in v2.1.0
type RuntimeAfterListNotificationsFunction ¶ added in v2.1.0
type RuntimeAfterListStorageObjectsFunction ¶ added in v2.1.0
type RuntimeAfterListTournamentRecordsAroundOwnerFunction ¶ added in v2.1.0
type RuntimeAfterListTournamentRecordsFunction ¶ added in v2.1.0
type RuntimeAfterListTournamentsFunction ¶ added in v2.1.0
type RuntimeAfterListUserGroupsFunction ¶ added in v2.1.0
type RuntimeAfterPromoteGroupUsersFunction ¶ added in v2.1.0
type RuntimeAfterReadStorageObjectsFunction ¶ added in v2.1.0
type RuntimeAfterReqFunctions ¶ added in v2.1.0
type RuntimeAfterReqFunctions struct {
// contains filtered or unexported fields
}
type RuntimeAfterRtFunction ¶ added in v2.1.0
type RuntimeAfterUnlinkCustomFunction ¶ added in v2.1.0
type RuntimeAfterUnlinkDeviceFunction ¶ added in v2.1.0
type RuntimeAfterUnlinkEmailFunction ¶ added in v2.1.0
type RuntimeAfterUnlinkFacebookFunction ¶ added in v2.1.0
type RuntimeAfterUnlinkGameCenterFunction ¶ added in v2.1.0
type RuntimeAfterUnlinkGoogleFunction ¶ added in v2.1.0
type RuntimeAfterUnlinkSteamFunction ¶ added in v2.1.0
type RuntimeAfterUpdateAccountFunction ¶ added in v2.1.0
type RuntimeAfterUpdateGroupFunction ¶ added in v2.1.0
type RuntimeAfterWriteLeaderboardRecordFunction ¶ added in v2.1.0
type RuntimeAfterWriteStorageObjectsFunction ¶ added in v2.1.0
type RuntimeAfterWriteTournamentRecordFunction ¶ added in v2.1.0
type RuntimeBeforeAddFriendsFunction ¶ added in v2.1.0
type RuntimeBeforeAddGroupUsersFunction ¶ added in v2.1.0
type RuntimeBeforeAuthenticateCustomFunction ¶ added in v2.1.0
type RuntimeBeforeAuthenticateDeviceFunction ¶ added in v2.1.0
type RuntimeBeforeAuthenticateEmailFunction ¶ added in v2.1.0
type RuntimeBeforeAuthenticateFacebookFunction ¶ added in v2.1.0
type RuntimeBeforeAuthenticateGameCenterFunction ¶ added in v2.1.0
type RuntimeBeforeAuthenticateGoogleFunction ¶ added in v2.1.0
type RuntimeBeforeAuthenticateSteamFunction ¶ added in v2.1.0
type RuntimeBeforeBlockFriendsFunction ¶ added in v2.1.0
type RuntimeBeforeCreateGroupFunction ¶ added in v2.1.0
type RuntimeBeforeDeleteFriendsFunction ¶ added in v2.1.0
type RuntimeBeforeDeleteGroupFunction ¶ added in v2.1.0
type RuntimeBeforeDeleteLeaderboardRecordFunction ¶ added in v2.1.0
type RuntimeBeforeDeleteNotificationFunction ¶ added in v2.1.0
type RuntimeBeforeDeleteStorageObjectsFunction ¶ added in v2.1.0
type RuntimeBeforeGetAccountFunction ¶ added in v2.1.0
type RuntimeBeforeGetUsersFunction ¶ added in v2.1.0
type RuntimeBeforeImportFacebookFriendsFunction ¶ added in v2.1.0
type RuntimeBeforeJoinGroupFunction ¶ added in v2.1.0
type RuntimeBeforeJoinTournamentFunction ¶ added in v2.1.0
type RuntimeBeforeKickGroupUsersFunction ¶ added in v2.1.0
type RuntimeBeforeLeaveGroupFunction ¶ added in v2.1.0
type RuntimeBeforeLinkCustomFunction ¶ added in v2.1.0
type RuntimeBeforeLinkDeviceFunction ¶ added in v2.1.0
type RuntimeBeforeLinkEmailFunction ¶ added in v2.1.0
type RuntimeBeforeLinkFacebookFunction ¶ added in v2.1.0
type RuntimeBeforeLinkGameCenterFunction ¶ added in v2.1.0
type RuntimeBeforeLinkGoogleFunction ¶ added in v2.1.0
type RuntimeBeforeLinkSteamFunction ¶ added in v2.1.0
type RuntimeBeforeListChannelMessagesFunction ¶ added in v2.1.0
type RuntimeBeforeListFriendsFunction ¶ added in v2.1.0
type RuntimeBeforeListGroupUsersFunction ¶ added in v2.1.0
type RuntimeBeforeListGroupsFunction ¶ added in v2.1.0
type RuntimeBeforeListLeaderboardRecordsAroundOwnerFunction ¶ added in v2.1.0
type RuntimeBeforeListLeaderboardRecordsFunction ¶ added in v2.1.0
type RuntimeBeforeListMatchesFunction ¶ added in v2.1.0
type RuntimeBeforeListNotificationsFunction ¶ added in v2.1.0
type RuntimeBeforeListStorageObjectsFunction ¶ added in v2.1.0
type RuntimeBeforeListTournamentRecordsAroundOwnerFunction ¶ added in v2.1.0
type RuntimeBeforeListTournamentRecordsFunction ¶ added in v2.1.0
type RuntimeBeforeListTournamentsFunction ¶ added in v2.1.0
type RuntimeBeforeListUserGroupsFunction ¶ added in v2.1.0
type RuntimeBeforePromoteGroupUsersFunction ¶ added in v2.1.0
type RuntimeBeforeReadStorageObjectsFunction ¶ added in v2.1.0
type RuntimeBeforeReqFunctions ¶ added in v2.1.0
type RuntimeBeforeReqFunctions struct {
// contains filtered or unexported fields
}
type RuntimeBeforeRtFunction ¶ added in v2.1.0
type RuntimeBeforeUnlinkCustomFunction ¶ added in v2.1.0
type RuntimeBeforeUnlinkDeviceFunction ¶ added in v2.1.0
type RuntimeBeforeUnlinkEmailFunction ¶ added in v2.1.0
type RuntimeBeforeUnlinkFacebookFunction ¶ added in v2.1.0
type RuntimeBeforeUnlinkGameCenterFunction ¶ added in v2.1.0
type RuntimeBeforeUnlinkGoogleFunction ¶ added in v2.1.0
type RuntimeBeforeUnlinkSteamFunction ¶ added in v2.1.0
type RuntimeBeforeUpdateAccountFunction ¶ added in v2.1.0
type RuntimeBeforeUpdateGroupFunction ¶ added in v2.1.0
type RuntimeBeforeWriteLeaderboardRecordFunction ¶ added in v2.1.0
type RuntimeBeforeWriteStorageObjectsFunction ¶ added in v2.1.0
type RuntimeBeforeWriteTournamentRecordFunction ¶ added in v2.1.0
type RuntimeConfig ¶
type RuntimeConfig struct { Environment map[string]string Env []string `yaml:"env" json:"env" usage:"Values to pass into Runtime as environment variables."` Path string `yaml:"path" json:"path" usage:"Path for the server to scan for Lua and Go library files."` HTTPKey string `yaml:"http_key" json:"http_key" usage:"Runtime HTTP Invocation key."` MinCount int `yaml:"min_count" json:"min_count" usage:"Minimum number of runtime instances to allocate. Default 16."` MaxCount int `yaml:"max_count" json:"max_count" usage:"Maximum number of runtime instances to allocate. Default 256."` CallStackSize int `yaml:"call_stack_size" json:"call_stack_size" usage:"Size of each runtime instance's call stack. Default 128."` RegistrySize int `yaml:"registry_size" json:"registry_size" usage:"Size of each runtime instance's registry. Default 512."` }
RuntimeConfig is configuration relevant to the Runtime Lua VM.
func NewRuntimeConfig ¶
func NewRuntimeConfig() *RuntimeConfig
NewRuntimeConfig creates a new RuntimeConfig struct.
type RuntimeExecutionMode ¶ added in v2.1.0
type RuntimeExecutionMode int
const ( RuntimeExecutionModeRunOnce RuntimeExecutionMode = iota RuntimeExecutionModeRPC RuntimeExecutionModeBefore RuntimeExecutionModeAfter RuntimeExecutionModeMatch RuntimeExecutionModeMatchmaker RuntimeExecutionModeMatchCreate RuntimeExecutionModeTournamentEnd RuntimeExecutionModeTournamentReset RuntimeExecutionModeLeaderboardReset )
func (RuntimeExecutionMode) String ¶ added in v2.1.0
func (e RuntimeExecutionMode) String() string
type RuntimeGoInitializer ¶ added in v2.1.0
type RuntimeGoInitializer struct {
// contains filtered or unexported fields
}
func (*RuntimeGoInitializer) RegisterAfterAddFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAddFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AddFriendsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAddGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAddGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AddGroupUsersRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAuthenticateCustom ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Session, in *api.AuthenticateCustomRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAuthenticateDevice ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Session, in *api.AuthenticateDeviceRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAuthenticateEmail ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Session, in *api.AuthenticateEmailRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAuthenticateFacebook ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Session, in *api.AuthenticateFacebookRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAuthenticateGameCenter ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Session, in *api.AuthenticateGameCenterRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAuthenticateGoogle ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Session, in *api.AuthenticateGoogleRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterAuthenticateSteam ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterAuthenticateSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Session, in *api.AuthenticateSteamRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterBlockFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterBlockFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.BlockFriendsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterCreateGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterCreateGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Group, in *api.CreateGroupRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterDeleteFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterDeleteFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteFriendsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterDeleteGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterDeleteGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteGroupRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterDeleteLeaderboardRecord ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterDeleteLeaderboardRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteLeaderboardRecordRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterDeleteNotification ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterDeleteNotification(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteNotificationsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterDeleteStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterDeleteStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteStorageObjectsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterGetAccount ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterAfterGetUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterGetUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.Users, in *api.GetUsersRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterImportFacebookFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterImportFacebookFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ImportFacebookFriendsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterJoinGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterJoinGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.JoinGroupRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterJoinTournament ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterJoinTournament(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.JoinTournamentRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterKickGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterKickGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.KickGroupUsersRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterLeaveGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLeaveGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.LeaveGroupRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterLinkCustom ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLinkCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountCustom) error) error
func (*RuntimeGoInitializer) RegisterAfterLinkDevice ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLinkDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountDevice) error) error
func (*RuntimeGoInitializer) RegisterAfterLinkEmail ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLinkEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountEmail) error) error
func (*RuntimeGoInitializer) RegisterAfterLinkFacebook ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLinkFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.LinkFacebookRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterLinkGameCenter ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLinkGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGameCenter) error) error
func (*RuntimeGoInitializer) RegisterAfterLinkGoogle ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLinkGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGoogle) error) error
func (*RuntimeGoInitializer) RegisterAfterLinkSteam ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterLinkSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountSteam) error) error
func (*RuntimeGoInitializer) RegisterAfterListChannelMessages ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListChannelMessages(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.ChannelMessageList, in *api.ListChannelMessagesRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListFriends ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterAfterListGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.GroupUserList, in *api.ListGroupUsersRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListGroups ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListGroups(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.GroupList, in *api.ListGroupsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListLeaderboardRecords ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListLeaderboardRecords(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.LeaderboardRecordList, in *api.ListLeaderboardRecordsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListLeaderboardRecordsAroundOwner ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListLeaderboardRecordsAroundOwner(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.LeaderboardRecordList, in *api.ListLeaderboardRecordsAroundOwnerRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListMatches ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListMatches(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.MatchList, in *api.ListMatchesRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListNotifications ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListNotifications(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.NotificationList, in *api.ListNotificationsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.StorageObjectList, in *api.ListStorageObjectsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListTournamentRecords ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListTournamentRecords(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.TournamentRecordList, in *api.ListTournamentRecordsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListTournamentRecordsAroundOwner ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListTournamentRecordsAroundOwner(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.TournamentRecordList, in *api.ListTournamentRecordsAroundOwnerRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListTournaments ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListTournaments(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.TournamentList, in *api.ListTournamentsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterListUserGroups ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterListUserGroups(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.UserGroupList, in *api.ListUserGroupsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterPromoteGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterPromoteGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.PromoteGroupUsersRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterReadStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterReadStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.StorageObjects, in *api.ReadStorageObjectsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterRt ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterAfterUnlinkCustom ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUnlinkCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountCustom) error) error
func (*RuntimeGoInitializer) RegisterAfterUnlinkDevice ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUnlinkDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountDevice) error) error
func (*RuntimeGoInitializer) RegisterAfterUnlinkEmail ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUnlinkEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountEmail) error) error
func (*RuntimeGoInitializer) RegisterAfterUnlinkFacebook ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUnlinkFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountFacebook) error) error
func (*RuntimeGoInitializer) RegisterAfterUnlinkGameCenter ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUnlinkGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGameCenter) error) error
func (*RuntimeGoInitializer) RegisterAfterUnlinkGoogle ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUnlinkGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGoogle) error) error
func (*RuntimeGoInitializer) RegisterAfterUnlinkSteam ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUnlinkSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountSteam) error) error
func (*RuntimeGoInitializer) RegisterAfterUpdateAccount ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUpdateAccount(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.UpdateAccountRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterUpdateGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterUpdateGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.UpdateGroupRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterWriteLeaderboardRecord ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterWriteLeaderboardRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.LeaderboardRecord, in *api.WriteLeaderboardRecordRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterWriteStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterWriteStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.StorageObjectAcks, in *api.WriteStorageObjectsRequest) error) error
func (*RuntimeGoInitializer) RegisterAfterWriteTournamentRecord ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterAfterWriteTournamentRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, out *api.LeaderboardRecord, in *api.WriteTournamentRecordRequest) error) error
func (*RuntimeGoInitializer) RegisterBeforeAddFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAddFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AddFriendsRequest) (*api.AddFriendsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAddGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAddGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AddGroupUsersRequest) (*api.AddGroupUsersRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAuthenticateCustom ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AuthenticateCustomRequest) (*api.AuthenticateCustomRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAuthenticateDevice ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AuthenticateDeviceRequest) (*api.AuthenticateDeviceRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAuthenticateEmail ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AuthenticateEmailRequest) (*api.AuthenticateEmailRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAuthenticateFacebook ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AuthenticateFacebookRequest) (*api.AuthenticateFacebookRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAuthenticateGameCenter ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AuthenticateGameCenterRequest) (*api.AuthenticateGameCenterRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAuthenticateGoogle ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AuthenticateGoogleRequest) (*api.AuthenticateGoogleRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeAuthenticateSteam ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeAuthenticateSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AuthenticateSteamRequest) (*api.AuthenticateSteamRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeBlockFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeBlockFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.BlockFriendsRequest) (*api.BlockFriendsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeCreateGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeCreateGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.CreateGroupRequest) (*api.CreateGroupRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeDeleteFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeDeleteFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteFriendsRequest) (*api.DeleteFriendsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeDeleteGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeDeleteGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteGroupRequest) (*api.DeleteGroupRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeDeleteLeaderboardRecord ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeDeleteLeaderboardRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteLeaderboardRecordRequest) (*api.DeleteLeaderboardRecordRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeDeleteNotification ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeDeleteNotification(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteNotificationsRequest) (*api.DeleteNotificationsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeDeleteStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeDeleteStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.DeleteStorageObjectsRequest) (*api.DeleteStorageObjectsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeGetAccount ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterBeforeGetUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeGetUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.GetUsersRequest) (*api.GetUsersRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeImportFacebookFriends ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeImportFacebookFriends(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ImportFacebookFriendsRequest) (*api.ImportFacebookFriendsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeJoinGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeJoinGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.JoinGroupRequest) (*api.JoinGroupRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeJoinTournament ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeJoinTournament(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.JoinTournamentRequest) (*api.JoinTournamentRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeKickGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeKickGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.KickGroupUsersRequest) (*api.KickGroupUsersRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLeaveGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLeaveGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.LeaveGroupRequest) (*api.LeaveGroupRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLinkCustom ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLinkCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountCustom) (*api.AccountCustom, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLinkDevice ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLinkDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountDevice) (*api.AccountDevice, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLinkEmail ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLinkEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountEmail) (*api.AccountEmail, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLinkFacebook ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLinkFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.LinkFacebookRequest) (*api.LinkFacebookRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLinkGameCenter ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLinkGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGameCenter) (*api.AccountGameCenter, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLinkGoogle ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLinkGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGoogle) (*api.AccountGoogle, error)) error
func (*RuntimeGoInitializer) RegisterBeforeLinkSteam ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeLinkSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountSteam) (*api.AccountSteam, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListChannelMessages ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListChannelMessages(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListChannelMessagesRequest) (*api.ListChannelMessagesRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListFriends ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterBeforeListGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListGroupUsersRequest) (*api.ListGroupUsersRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListGroups ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListGroups(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListGroupsRequest) (*api.ListGroupsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListLeaderboardRecords ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListLeaderboardRecords(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListLeaderboardRecordsRequest) (*api.ListLeaderboardRecordsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListLeaderboardRecordsAroundOwner ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListLeaderboardRecordsAroundOwner(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListLeaderboardRecordsAroundOwnerRequest) (*api.ListLeaderboardRecordsAroundOwnerRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListMatches ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListMatches(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListMatchesRequest) (*api.ListMatchesRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListNotifications ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListNotifications(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListNotificationsRequest) (*api.ListNotificationsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListStorageObjectsRequest) (*api.ListStorageObjectsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListTournamentRecords ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListTournamentRecords(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListTournamentRecordsRequest) (*api.ListTournamentRecordsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListTournamentRecordsAroundOwner ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListTournamentRecordsAroundOwner(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListTournamentRecordsAroundOwnerRequest) (*api.ListTournamentRecordsAroundOwnerRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListTournaments ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListTournaments(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListTournamentsRequest) (*api.ListTournamentsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeListUserGroups ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeListUserGroups(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ListUserGroupsRequest) (*api.ListUserGroupsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforePromoteGroupUsers ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforePromoteGroupUsers(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.PromoteGroupUsersRequest) (*api.PromoteGroupUsersRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeReadStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeReadStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.ReadStorageObjectsRequest) (*api.ReadStorageObjectsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeRt ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterBeforeUnlinkCustom ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkCustom(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountCustom) (*api.AccountCustom, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUnlinkDevice ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkDevice(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountDevice) (*api.AccountDevice, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUnlinkEmail ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkEmail(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountEmail) (*api.AccountEmail, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUnlinkFacebook ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkFacebook(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountFacebook) (*api.AccountFacebook, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUnlinkGameCenter ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkGameCenter(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGameCenter) (*api.AccountGameCenter, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUnlinkGoogle ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkGoogle(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountGoogle) (*api.AccountGoogle, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUnlinkSteam ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUnlinkSteam(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.AccountSteam) (*api.AccountSteam, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUpdateAccount ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUpdateAccount(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.UpdateAccountRequest) (*api.UpdateAccountRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeUpdateGroup ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeUpdateGroup(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.UpdateGroupRequest) (*api.UpdateGroupRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeWriteLeaderboardRecord ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeWriteLeaderboardRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.WriteLeaderboardRecordRequest) (*api.WriteLeaderboardRecordRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeWriteStorageObjects ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeWriteStorageObjects(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.WriteStorageObjectsRequest) (*api.WriteStorageObjectsRequest, error)) error
func (*RuntimeGoInitializer) RegisterBeforeWriteTournamentRecord ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterBeforeWriteTournamentRecord(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, in *api.WriteTournamentRecordRequest) (*api.WriteTournamentRecordRequest, error)) error
func (*RuntimeGoInitializer) RegisterLeaderboardReset ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterLeaderboardReset(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, leaderboard runtime.Leaderboard, reset int64) error) error
func (*RuntimeGoInitializer) RegisterMatch ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterMatchmakerMatched ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterMatchmakerMatched(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, entries []runtime.MatchmakerEntry) (string, error)) error
func (*RuntimeGoInitializer) RegisterRpc ¶ added in v2.1.0
func (*RuntimeGoInitializer) RegisterTournamentEnd ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterTournamentEnd(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, tournament *api.Tournament, end, reset int64) error) error
func (*RuntimeGoInitializer) RegisterTournamentReset ¶ added in v2.1.0
func (ri *RuntimeGoInitializer) RegisterTournamentReset(fn func(ctx context.Context, logger runtime.Logger, db *sql.DB, nk runtime.NakamaModule, tournament *api.Tournament, end, reset int64) error) error
type RuntimeGoLogger ¶ added in v2.3.0
type RuntimeGoLogger struct {
// contains filtered or unexported fields
}
func (*RuntimeGoLogger) Debug ¶ added in v2.3.0
func (l *RuntimeGoLogger) Debug(format string, v ...interface{})
func (*RuntimeGoLogger) Error ¶ added in v2.3.0
func (l *RuntimeGoLogger) Error(format string, v ...interface{})
func (*RuntimeGoLogger) Fatal ¶ added in v2.3.0
func (l *RuntimeGoLogger) Fatal(v ...interface{})
func (*RuntimeGoLogger) Fatalf ¶ added in v2.3.0
func (l *RuntimeGoLogger) Fatalf(format string, v ...interface{})
func (*RuntimeGoLogger) Fatalln ¶ added in v2.3.0
func (l *RuntimeGoLogger) Fatalln(v ...interface{})
func (*RuntimeGoLogger) Info ¶ added in v2.3.0
func (l *RuntimeGoLogger) Info(format string, v ...interface{})
func (*RuntimeGoLogger) Panic ¶ added in v2.3.0
func (l *RuntimeGoLogger) Panic(v ...interface{})
func (*RuntimeGoLogger) Panicf ¶ added in v2.3.0
func (l *RuntimeGoLogger) Panicf(format string, v ...interface{})
func (*RuntimeGoLogger) Panicln ¶ added in v2.3.0
func (l *RuntimeGoLogger) Panicln(v ...interface{})
func (*RuntimeGoLogger) Print ¶ added in v2.3.0
func (l *RuntimeGoLogger) Print(v ...interface{})
func (*RuntimeGoLogger) Printf ¶ added in v2.3.0
func (l *RuntimeGoLogger) Printf(format string, v ...interface{})
func (*RuntimeGoLogger) Println ¶ added in v2.3.0
func (l *RuntimeGoLogger) Println(v ...interface{})
func (*RuntimeGoLogger) Warn ¶ added in v2.3.0
func (l *RuntimeGoLogger) Warn(format string, v ...interface{})
type RuntimeGoMatchCore ¶ added in v2.1.0
type RuntimeGoMatchCore struct {
// contains filtered or unexported fields
}
func (*RuntimeGoMatchCore) BroadcastMessage ¶ added in v2.1.0
func (*RuntimeGoMatchCore) BroadcastMessageDeferred ¶ added in v2.3.0
func (*RuntimeGoMatchCore) Cancel ¶ added in v2.1.1
func (r *RuntimeGoMatchCore) Cancel()
func (*RuntimeGoMatchCore) Label ¶ added in v2.3.0
func (r *RuntimeGoMatchCore) Label() string
func (*RuntimeGoMatchCore) MatchInit ¶ added in v2.1.0
func (r *RuntimeGoMatchCore) MatchInit(presenceList *MatchPresenceList, deferMessageFn RuntimeMatchDeferMessageFunction, params map[string]interface{}) (interface{}, int, error)
func (*RuntimeGoMatchCore) MatchJoin ¶ added in v2.1.0
func (r *RuntimeGoMatchCore) MatchJoin(tick int64, state interface{}, joins []*MatchPresence) (interface{}, error)
func (*RuntimeGoMatchCore) MatchJoinAttempt ¶ added in v2.1.0
func (*RuntimeGoMatchCore) MatchKick ¶ added in v2.1.0
func (r *RuntimeGoMatchCore) MatchKick(presences []runtime.Presence) error
func (*RuntimeGoMatchCore) MatchLabelUpdate ¶ added in v2.1.0
func (r *RuntimeGoMatchCore) MatchLabelUpdate(label string) error
func (*RuntimeGoMatchCore) MatchLeave ¶ added in v2.1.0
func (r *RuntimeGoMatchCore) MatchLeave(tick int64, state interface{}, leaves []*MatchPresence) (interface{}, error)
func (*RuntimeGoMatchCore) MatchLoop ¶ added in v2.1.0
func (r *RuntimeGoMatchCore) MatchLoop(tick int64, state interface{}, inputCh <-chan *MatchDataMessage) (interface{}, error)
func (*RuntimeGoMatchCore) MatchTerminate ¶ added in v2.1.0
func (r *RuntimeGoMatchCore) MatchTerminate(tick int64, state interface{}, graceSeconds int) (interface{}, error)
type RuntimeGoNakamaModule ¶ added in v2.1.0
func NewRuntimeGoNakamaModule ¶ added in v2.1.0
func NewRuntimeGoNakamaModule(logger *zap.Logger, db *sql.DB, config Config, socialClient *social.Client, leaderboardCache LeaderboardCache, leaderboardRankCache LeaderboardRankCache, leaderboardScheduler LeaderboardScheduler, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, tracker Tracker, router MessageRouter) *RuntimeGoNakamaModule
func (*RuntimeGoNakamaModule) AccountGetId ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AccountUpdateId ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AccountsGetId ¶ added in v2.3.0
func (*RuntimeGoNakamaModule) AuthenticateCustom ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AuthenticateDevice ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AuthenticateEmail ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AuthenticateFacebook ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AuthenticateGameCenter ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AuthenticateGoogle ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AuthenticateSteam ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) AuthenticateTokenGenerate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) GroupCreate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) GroupDelete ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) GroupDelete(ctx context.Context, id string) error
func (*RuntimeGoNakamaModule) GroupUpdate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) GroupUsersKick ¶ added in v2.3.0
func (*RuntimeGoNakamaModule) GroupUsersList ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) GroupUsersList(ctx context.Context, id string) ([]*api.GroupUserList_GroupUser, error)
func (*RuntimeGoNakamaModule) GroupsGetId ¶ added in v2.1.1
func (*RuntimeGoNakamaModule) LeaderboardCreate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) LeaderboardDelete ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) LeaderboardDelete(ctx context.Context, id string) error
func (*RuntimeGoNakamaModule) LeaderboardRecordDelete ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) LeaderboardRecordDelete(ctx context.Context, id, ownerID string) error
func (*RuntimeGoNakamaModule) LeaderboardRecordWrite ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) LeaderboardRecordWrite(ctx context.Context, id, ownerID, username string, score, subscore int64, metadata map[string]interface{}) (*api.LeaderboardRecord, error)
func (*RuntimeGoNakamaModule) LeaderboardRecordsList ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) LeaderboardRecordsList(ctx context.Context, id string, ownerIDs []string, limit int, cursor string, expiry int64) ([]*api.LeaderboardRecord, []*api.LeaderboardRecord, string, string, error)
func (*RuntimeGoNakamaModule) MatchCreate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) NotificationSend ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) NotificationsSend ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) NotificationsSend(ctx context.Context, notifications []*runtime.NotificationSend) error
func (*RuntimeGoNakamaModule) SetMatchCreateFn ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) SetMatchCreateFn(fn RuntimeMatchCreateFunction)
func (*RuntimeGoNakamaModule) StorageDelete ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StorageDelete(ctx context.Context, deletes []*runtime.StorageDelete) error
func (*RuntimeGoNakamaModule) StorageList ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StorageList(ctx context.Context, userID, collection string, limit int, cursor string) ([]*api.StorageObject, string, error)
func (*RuntimeGoNakamaModule) StorageRead ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StorageRead(ctx context.Context, reads []*runtime.StorageRead) ([]*api.StorageObject, error)
func (*RuntimeGoNakamaModule) StorageWrite ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StorageWrite(ctx context.Context, writes []*runtime.StorageWrite) ([]*api.StorageObjectAck, error)
func (*RuntimeGoNakamaModule) StreamClose ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StreamClose(mode uint8, subject, subcontext, label string) error
func (*RuntimeGoNakamaModule) StreamCount ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StreamCount(mode uint8, subject, subcontext, label string) (int, error)
func (*RuntimeGoNakamaModule) StreamSend ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StreamSend(mode uint8, subject, subcontext, label, data string) error
func (*RuntimeGoNakamaModule) StreamSendRaw ¶ added in v2.2.0
func (*RuntimeGoNakamaModule) StreamUserGet ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StreamUserGet(mode uint8, subject, subcontext, label, userID, sessionID string) (runtime.PresenceMeta, error)
func (*RuntimeGoNakamaModule) StreamUserJoin ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) StreamUserLeave ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) StreamUserLeave(mode uint8, subject, subcontext, label, userID, sessionID string) error
func (*RuntimeGoNakamaModule) StreamUserList ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) StreamUserUpdate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) TournamentAddAttempt ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) TournamentCreate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) TournamentDelete ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) TournamentDelete(ctx context.Context, id string) error
func (*RuntimeGoNakamaModule) TournamentJoin ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) TournamentJoin(ctx context.Context, id, ownerID, username string) error
func (*RuntimeGoNakamaModule) TournamentList ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) TournamentList(ctx context.Context, categoryStart, categoryEnd, startTime, endTime, limit int, cursor string) (*api.TournamentList, error)
func (*RuntimeGoNakamaModule) TournamentRecordWrite ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) TournamentRecordWrite(ctx context.Context, id, ownerID, username string, score, subscore int64, metadata map[string]interface{}) (*api.LeaderboardRecord, error)
func (*RuntimeGoNakamaModule) TournamentRecordsHaystack ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) TournamentRecordsHaystack(ctx context.Context, id, ownerID string, limit int) ([]*api.LeaderboardRecord, error)
func (*RuntimeGoNakamaModule) UserGroupsList ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) UserGroupsList(ctx context.Context, userID string) ([]*api.UserGroupList_UserGroup, error)
func (*RuntimeGoNakamaModule) UsersBanId ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) UsersBanId(ctx context.Context, userIDs []string) error
func (*RuntimeGoNakamaModule) UsersGetId ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) UsersGetUsername ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) UsersUnbanId ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) UsersUnbanId(ctx context.Context, userIDs []string) error
func (*RuntimeGoNakamaModule) WalletLedgerList ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) WalletLedgerList(ctx context.Context, userID string) ([]runtime.WalletLedgerItem, error)
func (*RuntimeGoNakamaModule) WalletLedgerUpdate ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) WalletLedgerUpdate(ctx context.Context, itemID string, metadata map[string]interface{}) (runtime.WalletLedgerItem, error)
func (*RuntimeGoNakamaModule) WalletUpdate ¶ added in v2.1.0
func (*RuntimeGoNakamaModule) WalletsUpdate ¶ added in v2.1.0
func (n *RuntimeGoNakamaModule) WalletsUpdate(ctx context.Context, updates []*runtime.WalletUpdate, updateLedger bool) error
type RuntimeLeaderboardResetFunction ¶ added in v2.1.0
type RuntimeLua ¶ added in v2.1.0
type RuntimeLua struct {
// contains filtered or unexported fields
}
func (*RuntimeLua) GetCallback ¶ added in v2.1.0
func (r *RuntimeLua) GetCallback(e RuntimeExecutionMode, key string) *lua.LFunction
func (*RuntimeLua) InvokeFunction ¶ added in v2.1.0
func (*RuntimeLua) Stop ¶ added in v2.1.0
func (r *RuntimeLua) Stop()
type RuntimeLuaCallbacks ¶ added in v2.1.0
type RuntimeLuaLocalCache ¶ added in v2.1.0
func NewRuntimeLuaLocalCache ¶ added in v2.1.0
func NewRuntimeLuaLocalCache() *RuntimeLuaLocalCache
func (*RuntimeLuaLocalCache) Delete ¶ added in v2.1.0
func (lc *RuntimeLuaLocalCache) Delete(key string)
func (*RuntimeLuaLocalCache) Get ¶ added in v2.1.0
func (lc *RuntimeLuaLocalCache) Get(key string) (string, bool)
func (*RuntimeLuaLocalCache) Put ¶ added in v2.1.0
func (lc *RuntimeLuaLocalCache) Put(key, value string)
type RuntimeLuaMatchCore ¶ added in v2.1.0
type RuntimeLuaMatchCore struct {
// contains filtered or unexported fields
}
func (*RuntimeLuaMatchCore) Cancel ¶ added in v2.1.1
func (r *RuntimeLuaMatchCore) Cancel()
func (*RuntimeLuaMatchCore) Label ¶ added in v2.3.0
func (r *RuntimeLuaMatchCore) Label() string
func (*RuntimeLuaMatchCore) MatchInit ¶ added in v2.1.0
func (r *RuntimeLuaMatchCore) MatchInit(presenceList *MatchPresenceList, deferMessageFn RuntimeMatchDeferMessageFunction, params map[string]interface{}) (interface{}, int, error)
func (*RuntimeLuaMatchCore) MatchJoin ¶ added in v2.1.0
func (r *RuntimeLuaMatchCore) MatchJoin(tick int64, state interface{}, joins []*MatchPresence) (interface{}, error)
func (*RuntimeLuaMatchCore) MatchJoinAttempt ¶ added in v2.1.0
func (*RuntimeLuaMatchCore) MatchLeave ¶ added in v2.1.0
func (r *RuntimeLuaMatchCore) MatchLeave(tick int64, state interface{}, leaves []*MatchPresence) (interface{}, error)
func (*RuntimeLuaMatchCore) MatchLoop ¶ added in v2.1.0
func (r *RuntimeLuaMatchCore) MatchLoop(tick int64, state interface{}, inputCh <-chan *MatchDataMessage) (interface{}, error)
func (*RuntimeLuaMatchCore) MatchTerminate ¶ added in v2.1.0
func (r *RuntimeLuaMatchCore) MatchTerminate(tick int64, state interface{}, graceSeconds int) (interface{}, error)
type RuntimeLuaModule ¶ added in v2.1.0
type RuntimeLuaModuleCache ¶ added in v2.1.0
type RuntimeLuaModuleCache struct { Names []string Modules map[string]*RuntimeLuaModule }
func (*RuntimeLuaModuleCache) Add ¶ added in v2.1.0
func (mc *RuntimeLuaModuleCache) Add(m *RuntimeLuaModule)
type RuntimeLuaNakamaModule ¶ added in v2.1.0
type RuntimeLuaNakamaModule struct {
// contains filtered or unexported fields
}
func NewRuntimeLuaNakamaModule ¶ added in v2.1.0
func NewRuntimeLuaNakamaModule(logger *zap.Logger, db *sql.DB, jsonpbUnmarshaler *jsonpb.Unmarshaler, config Config, socialClient *social.Client, leaderboardCache LeaderboardCache, rankCache LeaderboardRankCache, leaderboardScheduler LeaderboardScheduler, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, tracker Tracker, router MessageRouter, once *sync.Once, localCache *RuntimeLuaLocalCache, matchCreateFn RuntimeMatchCreateFunction, registerCallbackFn func(RuntimeExecutionMode, string, *lua.LFunction), announceCallbackFn func(RuntimeExecutionMode, string)) *RuntimeLuaNakamaModule
func (*RuntimeLuaNakamaModule) Loader ¶ added in v2.1.0
func (n *RuntimeLuaNakamaModule) Loader(l *lua.LState) int
type RuntimeMatchCore ¶ added in v2.1.0
type RuntimeMatchCore interface { MatchInit(presenceList *MatchPresenceList, deferMessageFn RuntimeMatchDeferMessageFunction, params map[string]interface{}) (interface{}, int, error) MatchJoinAttempt(tick int64, state interface{}, userID, sessionID uuid.UUID, username, node string, metadata map[string]string) (interface{}, bool, string, error) MatchJoin(tick int64, state interface{}, joins []*MatchPresence) (interface{}, error) MatchLeave(tick int64, state interface{}, leaves []*MatchPresence) (interface{}, error) MatchLoop(tick int64, state interface{}, inputCh <-chan *MatchDataMessage) (interface{}, error) MatchTerminate(tick int64, state interface{}, graceSeconds int) (interface{}, error) Label() string Cancel() }
func NewRuntimeGoMatchCore ¶ added in v2.1.0
func NewRuntimeGoMatchCore(logger *zap.Logger, matchRegistry MatchRegistry, router MessageRouter, id uuid.UUID, node string, db *sql.DB, env map[string]string, nk runtime.NakamaModule, match runtime.Match) (RuntimeMatchCore, error)
func NewRuntimeGoMatchCore(logger *zap.Logger, matchRegistry MatchRegistry, tracker Tracker, router MessageRouter, id uuid.UUID, node string, labelUpdateFn RuntimeMatchLabelUpdateFunction, db *sql.DB, env map[string]string, nk runtime.NakamaModule, match runtime.Match) (RuntimeMatchCore, error) {
func NewRuntimeLuaMatchCore ¶ added in v2.1.0
func NewRuntimeLuaMatchCore(logger *zap.Logger, db *sql.DB, jsonpbUnmarshaler *jsonpb.Unmarshaler, config Config, socialClient *social.Client, leaderboardCache LeaderboardCache, rankCache LeaderboardRankCache, leaderboardScheduler LeaderboardScheduler, sessionRegistry *SessionRegistry, matchRegistry MatchRegistry, tracker Tracker, router MessageRouter, stdLibs map[string]lua.LGFunction, once *sync.Once, localCache *RuntimeLuaLocalCache, goMatchCreateFn RuntimeMatchCreateFunction, id uuid.UUID, node string, name string) (RuntimeMatchCore, error)
type RuntimeMatchCreateFunction ¶ added in v2.1.0
type RuntimeMatchDeferMessageFunction ¶ added in v2.3.0
type RuntimeMatchDeferMessageFunction func(msg *DeferredMessage) error
type RuntimeMatchmakerMatchedFunction ¶ added in v2.1.0
type RuntimeProviderLua ¶ added in v2.1.0
type RuntimeProviderLua struct {
// contains filtered or unexported fields
}
func (*RuntimeProviderLua) Get ¶ added in v2.1.0
func (rp *RuntimeProviderLua) Get(ctx context.Context) (*RuntimeLua, error)
func (*RuntimeProviderLua) LeaderboardReset ¶ added in v2.1.0
func (rp *RuntimeProviderLua) LeaderboardReset(ctx context.Context, leaderboard runtime.Leaderboard, reset int64) error
func (*RuntimeProviderLua) MatchmakerMatched ¶ added in v2.1.0
func (rp *RuntimeProviderLua) MatchmakerMatched(ctx context.Context, entries []*MatchmakerEntry) (string, bool, error)
func (*RuntimeProviderLua) Put ¶ added in v2.1.0
func (rp *RuntimeProviderLua) Put(r *RuntimeLua)
func (*RuntimeProviderLua) TournamentEnd ¶ added in v2.1.0
func (rp *RuntimeProviderLua) TournamentEnd(ctx context.Context, tournament *api.Tournament, end, reset int64) error
func (*RuntimeProviderLua) TournamentReset ¶ added in v2.1.0
func (rp *RuntimeProviderLua) TournamentReset(ctx context.Context, tournament *api.Tournament, end, reset int64) error
type RuntimeRpcFunction ¶ added in v2.1.0
type RuntimeTournamentEndFunction ¶ added in v2.1.0
type RuntimeTournamentResetFunction ¶ added in v2.1.0
type Scannable ¶ added in v2.1.0
type Scannable interface {
Scan(dest ...interface{}) error
}
Interface to help utility functions accept either *sql.Row or *sql.Rows for scanning one row at a time.
type Session ¶
type Session interface { Logger() *zap.Logger ID() uuid.UUID UserID() uuid.UUID ClientIP() string ClientPort() string Context() context.Context Username() string SetUsername(string) Expiry() int64 Consume(func(logger *zap.Logger, session Session, envelope *rtapi.Envelope) bool) Format() SessionFormat Send(isStream bool, mode uint8, envelope *rtapi.Envelope) error SendBytes(isStream bool, mode uint8, payload []byte) error Close() }
func NewSessionWS ¶
func NewSessionWS(logger *zap.Logger, config Config, format SessionFormat, userID uuid.UUID, username string, expiry int64, clientIP string, clientPort string, jsonpbMarshaler *jsonpb.Marshaler, jsonpbUnmarshaler *jsonpb.Unmarshaler, conn *websocket.Conn, sessionRegistry *SessionRegistry, matchmaker Matchmaker, tracker Tracker) Session
type SessionConfig ¶
type SessionConfig struct { EncryptionKey string `yaml:"encryption_key" json:"encryption_key" usage:"The encryption key used to produce the client token."` TokenExpirySec int64 `yaml:"token_expiry_sec" json:"token_expiry_sec" usage:"Token expiry in seconds."` }
SessionConfig is configuration relevant to the session.
func NewSessionConfig ¶
func NewSessionConfig() *SessionConfig
NewSessionConfig creates a new SessionConfig struct.
type SessionFormat ¶
type SessionFormat uint8
const ( SessionFormatJson SessionFormat = iota SessionFormatProtobuf )
type SessionRegistry ¶
SessionRegistry maintains a thread-safe list of sessions to their IDs.
func NewSessionRegistry ¶
func NewSessionRegistry() *SessionRegistry
func (*SessionRegistry) Stop ¶
func (r *SessionRegistry) Stop()
type SocialConfig ¶
type SocialConfig struct {
Steam *SocialConfigSteam `yaml:"steam" json:"steam" usage:"Steam configuration."`
}
SocialConfig is configuration relevant to the social authentication providers.
func NewSocialConfig ¶
func NewSocialConfig() *SocialConfig
NewSocialConfig creates a new SocialConfig struct.
type SocialConfigSteam ¶
type SocialConfigSteam struct { PublisherKey string `yaml:"publisher_key" json:"publisher_key" usage:"Steam Publisher Key value."` AppID int `yaml:"app_id" json:"app_id" usage:"Steam App ID."` }
SocialConfigSteam is configuration relevant to Steam
type SocketConfig ¶
type SocketConfig struct { ServerKey string `yaml:"server_key" json:"server_key" usage:"Server key to use to establish a connection to the server."` Port int `` /* 154-byte string literal not displayed */ Address string `` /* 156-byte string literal not displayed */ Protocol string `` /* 198-byte string literal not displayed */ MaxMessageSizeBytes int64 `` /* 201-byte string literal not displayed */ ReadTimeoutMs int `` /* 145-byte string literal not displayed */ WriteTimeoutMs int `` /* 157-byte string literal not displayed */ IdleTimeoutMs int `` /* 178-byte string literal not displayed */ WriteWaitMs int `` /* 156-byte string literal not displayed */ PongWaitMs int `` /* 156-byte string literal not displayed */ PingPeriodMs int `` /* 204-byte string literal not displayed */ PingBackoffThreshold int `` /* 293-byte string literal not displayed */ OutgoingQueueSize int `` /* 245-byte string literal not displayed */ SSLCertificate string `` /* 192-byte string literal not displayed */ SSLPrivateKey string `` /* 192-byte string literal not displayed */ TLSCert []tls.Certificate // Created by processing SSLCertificate and SSLPrivateKey, not set from input args directly. }
SocketConfig is configuration relevant to the transport socket and protocol.
func NewSocketConfig ¶
func NewSocketConfig() *SocketConfig
NewTransportConfig creates a new TransportConfig struct.
type Tracker ¶
type Tracker interface { SetMatchJoinListener(func(id uuid.UUID, joins []*MatchPresence)) SetMatchLeaveListener(func(id uuid.UUID, leaves []*MatchPresence)) Stop() // Track returns success true/false, and new presence true/false. Track(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID, meta PresenceMeta, allowIfFirstForSession bool) (bool, bool) Untrack(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID) UntrackAll(sessionID uuid.UUID) // Update returns success true/false - will only fail if the user has no presence and allowIfFirstForSession is false, otherwise is an upsert. Update(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID, meta PresenceMeta, allowIfFirstForSession bool) bool // Remove all presences on a stream, effectively closing it. UntrackByStream(stream PresenceStream) // Remove all presences on a stream from the local node. UntrackLocalByStream(stream PresenceStream) // List the nodes that have at least one presence for the given stream. ListNodesForStream(stream PresenceStream) map[string]struct{} // Check if a stream exists (has any presences) or not. StreamExists(stream PresenceStream) bool // Get current total number of presences. Count() int // Get the number of presences in the given stream. CountByStream(stream PresenceStream) int // Get a snapshot of current presence counts for streams with one of the given stream modes. CountByStreamModeFilter(modes map[uint8]*uint8) map[*PresenceStream]int32 // Check if a single presence on the current node exists. GetLocalBySessionIDStreamUserID(sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID) *PresenceMeta // Check if a single presence on any node exists. GetBySessionIDStreamUserID(node string, sessionID uuid.UUID, stream PresenceStream, userID uuid.UUID) *PresenceMeta // List presences by stream, optionally include hidden ones and not hidden ones. ListByStream(stream PresenceStream, includeHidden bool, includeNotHidden bool) []*Presence // Fast lookup of local session IDs to use for message delivery. ListLocalSessionIDByStream(stream PresenceStream) []uuid.UUID // Fast lookup of node + session IDs to use for message delivery. ListPresenceIDByStream(stream PresenceStream) []*PresenceID }
func StartLocalTracker ¶
type TrackerConfig ¶ added in v2.3.0
type TrackerConfig struct {
EventQueueSize int `` /* 210-byte string literal not displayed */
}
TrackerConfig is configuration relevant to the presence tracker.
func NewTrackerConfig ¶ added in v2.3.0
func NewTrackerConfig() *TrackerConfig
NewTrackerConfig creates a new TrackerConfig struct.
Source Files ¶
- api.go
- api_account.go
- api_authenticate.go
- api_channel.go
- api_friend.go
- api_group.go
- api_leaderboard.go
- api_link.go
- api_match.go
- api_notification.go
- api_rpc.go
- api_storage.go
- api_tournament.go
- api_unlink.go
- api_user.go
- config.go
- console.go
- console_account.go
- console_gdpr.go
- console_storage.go
- core_account.go
- core_authenticate.go
- core_channel.go
- core_friend.go
- core_group.go
- core_leaderboard.go
- core_notification.go
- core_storage.go
- core_tournament.go
- core_user.go
- core_wallet.go
- db.go
- leaderboard_cache.go
- leaderboard_rank_cache.go
- leaderboard_scheduler.go
- logger.go
- match_handler.go
- match_presence.go
- match_registry.go
- matchmaker.go
- message_router.go
- metrics.go
- pipeline.go
- pipeline_channel.go
- pipeline_match.go
- pipeline_matchmaker.go
- pipeline_rpc.go
- pipeline_status.go
- runtime.go
- runtime_go.go
- runtime_go_context.go
- runtime_go_logger.go
- runtime_go_match_core.go
- runtime_go_nakama.go
- runtime_lua.go
- runtime_lua_bit32.go
- runtime_lua_context.go
- runtime_lua_loadlib.go
- runtime_lua_localcache.go
- runtime_lua_match_core.go
- runtime_lua_nakama.go
- runtime_lua_oslib.go
- runtime_lua_utils.go
- session_registry.go
- session_ws.go
- socket_ws.go
- tracker.go