Loading data/modules/match_init.lua +1 −1 Original line number Diff line number Diff line Loading @@ -14,4 +14,4 @@ limitations under the License. --]] require("nakama").match_create("match", {debug = true}) --require("nakama").match_create("match", {debug = true}) migrate/migrate-packr.go +2 −2 Original line number Diff line number Diff line Loading @@ -9,5 +9,5 @@ import "github.com/gobuffalo/packr" // Go binary. You can use the "packr clean" command to clean up this, // and any other packr generated files. func init() { packr.PackJSONBytes("./sql", "20180103142001_initial_schema.sql", "\"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\"") packr.PackJSONBytes("./sql", "20180103142001_initial_schema.sql", "\"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\"") } migrate/sql/20180103142001_initial_schema.sql +30 −29 Original line number Diff line number Diff line Loading @@ -36,14 +36,15 @@ CREATE TABLE IF NOT EXISTS users ( steam_id VARCHAR(128) UNIQUE, custom_id VARCHAR(128) UNIQUE, edge_count INT DEFAULT 0 CHECK (edge_count >= 0) NOT NULL, create_time BIGINT CHECK (create_time > 0) NOT NULL, update_time BIGINT CHECK (update_time > 0) NOT NULL, verify_time BIGINT DEFAULT 0 CHECK (verify_time >= 0) NOT NULL, disable_time BIGINT DEFAULT 0 CHECK (disable_time >= 0) NOT NULL create_time TIMESTAMPTZ DEFAULT now() NOT NULL, update_time TIMESTAMPTZ DEFAULT now() NOT NULL, verify_time TIMESTAMPTZ DEFAULT CAST(0 AS TIMESTAMPTZ) NOT NULL, disable_time TIMESTAMPTZ DEFAULT CAST(0 AS TIMESTAMPTZ) NOT NULL ); INSERT INTO users (id, username, create_time, update_time) VALUES ('00000000-0000-0000-0000-000000000000', '', 1, 1) -- Setup System user. INSERT INTO users (id, username) VALUES ('00000000-0000-0000-0000-000000000000', '') ON CONFLICT(id) DO NOTHING; CREATE TABLE IF NOT EXISTS user_device ( Loading @@ -61,7 +62,7 @@ CREATE TABLE IF NOT EXISTS user_edge ( source_id UUID NOT NULL, position BIGINT NOT NULL, -- Used for sort order on rows. update_time BIGINT CHECK (update_time > 0) NOT NULL, update_time TIMESTAMPTZ DEFAULT now() NOT NULL, destination_id UUID NOT NULL, state SMALLINT DEFAULT 0 NOT NULL, -- friend(0), invite(1), invited(2), blocked(3), deleted(4), archived(5) Loading @@ -78,8 +79,8 @@ CREATE TABLE IF NOT EXISTS notification ( subject VARCHAR(255) NOT NULL, content JSONB DEFAULT '{}' NOT NULL, code SMALLINT NOT NULL, -- Negative values are system reserved. sender_id UUID, -- NULL for system messages. create_time BIGINT CHECK (create_time > 0) NOT NULL sender_id UUID NOT NULL, create_time TIMESTAMPTZ DEFAULT now() NOT NULL ); CREATE TABLE IF NOT EXISTS storage ( Loading @@ -93,8 +94,8 @@ CREATE TABLE IF NOT EXISTS storage ( version VARCHAR(32) NOT NULL, -- md5 hash of value object. read SMALLINT DEFAULT 1 CHECK (read >= 0) NOT NULL, write SMALLINT DEFAULT 1 CHECK (write >= 0) NOT NULL, create_time TIMESTAMPTZ NOT NULL, update_time TIMESTAMPTZ NOT NULL, create_time TIMESTAMPTZ DEFAULT now() NOT NULL, update_time TIMESTAMPTZ DEFAULT now() NOT NULL, UNIQUE (collection, key, user_id) ); Loading server/api_authenticate.go +1 −1 Original line number Diff line number Diff line Loading @@ -154,7 +154,7 @@ func (s *ApiServer) AuthenticateFacebook(ctx context.Context, in *api.Authentica // Import friends if requested. if in.Import == nil || in.Import.Value { importFacebookFriends(s.logger, s.db, s.socialClient, uuid.FromStringOrNil(dbUserID), dbUsername, in.Account.Token, false) importFacebookFriends(s.logger, s.db, s.router, s.socialClient, uuid.FromStringOrNil(dbUserID), dbUsername, in.Account.Token, false) } token := generateToken(s.config, dbUserID, dbUsername) Loading server/api_friend.go +1 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,7 @@ func (s *ApiServer) ImportFacebookFriends(ctx context.Context, in *api.ImportFac return nil, status.Error(codes.InvalidArgument, "Facebook token is required.") } err := importFacebookFriends(s.logger, s.db, s.socialClient, ctx.Value(ctxUserIDKey{}).(uuid.UUID), ctx.Value(ctxUsernameKey{}).(string), in.Account.Token, in.Reset_ != nil && in.Reset_.Value) err := importFacebookFriends(s.logger, s.db, s.router, s.socialClient, ctx.Value(ctxUserIDKey{}).(uuid.UUID), ctx.Value(ctxUsernameKey{}).(string), in.Account.Token, in.Reset_ != nil && in.Reset_.Value) if err != nil { // Already logged inside the core importFacebookFriends function. return nil, err Loading Loading
data/modules/match_init.lua +1 −1 Original line number Diff line number Diff line Loading @@ -14,4 +14,4 @@ limitations under the License. --]] require("nakama").match_create("match", {debug = true}) --require("nakama").match_create("match", {debug = true})
migrate/migrate-packr.go +2 −2 Original line number Diff line number Diff line Loading @@ -9,5 +9,5 @@ import "github.com/gobuffalo/packr" // Go binary. You can use the "packr clean" command to clean up this, // and any other packr generated files. func init() { packr.PackJSONBytes("./sql", "20180103142001_initial_schema.sql", "\"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\"") packr.PackJSONBytes("./sql", "20180103142001_initial_schema.sql", "\"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\"") }
migrate/sql/20180103142001_initial_schema.sql +30 −29 Original line number Diff line number Diff line Loading @@ -36,14 +36,15 @@ CREATE TABLE IF NOT EXISTS users ( steam_id VARCHAR(128) UNIQUE, custom_id VARCHAR(128) UNIQUE, edge_count INT DEFAULT 0 CHECK (edge_count >= 0) NOT NULL, create_time BIGINT CHECK (create_time > 0) NOT NULL, update_time BIGINT CHECK (update_time > 0) NOT NULL, verify_time BIGINT DEFAULT 0 CHECK (verify_time >= 0) NOT NULL, disable_time BIGINT DEFAULT 0 CHECK (disable_time >= 0) NOT NULL create_time TIMESTAMPTZ DEFAULT now() NOT NULL, update_time TIMESTAMPTZ DEFAULT now() NOT NULL, verify_time TIMESTAMPTZ DEFAULT CAST(0 AS TIMESTAMPTZ) NOT NULL, disable_time TIMESTAMPTZ DEFAULT CAST(0 AS TIMESTAMPTZ) NOT NULL ); INSERT INTO users (id, username, create_time, update_time) VALUES ('00000000-0000-0000-0000-000000000000', '', 1, 1) -- Setup System user. INSERT INTO users (id, username) VALUES ('00000000-0000-0000-0000-000000000000', '') ON CONFLICT(id) DO NOTHING; CREATE TABLE IF NOT EXISTS user_device ( Loading @@ -61,7 +62,7 @@ CREATE TABLE IF NOT EXISTS user_edge ( source_id UUID NOT NULL, position BIGINT NOT NULL, -- Used for sort order on rows. update_time BIGINT CHECK (update_time > 0) NOT NULL, update_time TIMESTAMPTZ DEFAULT now() NOT NULL, destination_id UUID NOT NULL, state SMALLINT DEFAULT 0 NOT NULL, -- friend(0), invite(1), invited(2), blocked(3), deleted(4), archived(5) Loading @@ -78,8 +79,8 @@ CREATE TABLE IF NOT EXISTS notification ( subject VARCHAR(255) NOT NULL, content JSONB DEFAULT '{}' NOT NULL, code SMALLINT NOT NULL, -- Negative values are system reserved. sender_id UUID, -- NULL for system messages. create_time BIGINT CHECK (create_time > 0) NOT NULL sender_id UUID NOT NULL, create_time TIMESTAMPTZ DEFAULT now() NOT NULL ); CREATE TABLE IF NOT EXISTS storage ( Loading @@ -93,8 +94,8 @@ CREATE TABLE IF NOT EXISTS storage ( version VARCHAR(32) NOT NULL, -- md5 hash of value object. read SMALLINT DEFAULT 1 CHECK (read >= 0) NOT NULL, write SMALLINT DEFAULT 1 CHECK (write >= 0) NOT NULL, create_time TIMESTAMPTZ NOT NULL, update_time TIMESTAMPTZ NOT NULL, create_time TIMESTAMPTZ DEFAULT now() NOT NULL, update_time TIMESTAMPTZ DEFAULT now() NOT NULL, UNIQUE (collection, key, user_id) ); Loading
server/api_authenticate.go +1 −1 Original line number Diff line number Diff line Loading @@ -154,7 +154,7 @@ func (s *ApiServer) AuthenticateFacebook(ctx context.Context, in *api.Authentica // Import friends if requested. if in.Import == nil || in.Import.Value { importFacebookFriends(s.logger, s.db, s.socialClient, uuid.FromStringOrNil(dbUserID), dbUsername, in.Account.Token, false) importFacebookFriends(s.logger, s.db, s.router, s.socialClient, uuid.FromStringOrNil(dbUserID), dbUsername, in.Account.Token, false) } token := generateToken(s.config, dbUserID, dbUsername) Loading
server/api_friend.go +1 −1 Original line number Diff line number Diff line Loading @@ -170,7 +170,7 @@ func (s *ApiServer) ImportFacebookFriends(ctx context.Context, in *api.ImportFac return nil, status.Error(codes.InvalidArgument, "Facebook token is required.") } err := importFacebookFriends(s.logger, s.db, s.socialClient, ctx.Value(ctxUserIDKey{}).(uuid.UUID), ctx.Value(ctxUsernameKey{}).(string), in.Account.Token, in.Reset_ != nil && in.Reset_.Value) err := importFacebookFriends(s.logger, s.db, s.router, s.socialClient, ctx.Value(ctxUserIDKey{}).(uuid.UUID), ctx.Value(ctxUsernameKey{}).(string), in.Account.Token, in.Reset_ != nil && in.Reset_.Value) if err != nil { // Already logged inside the core importFacebookFriends function. return nil, err Loading