← Back to Documentation Home

STRUCT

User

public struct User: Codable, Equatable

Represents a user with session information

Properties

userId

public let userId: String

sessionId

public let sessionId: String

sessionParams

public let sessionParams: SessionParams

experimentsBucket

public var experimentsBucket: Bucket

variationsBucket

public var variationsBucket: Bucket

sessionCount

public let sessionCount: Int

pageviewCount

public let pageviewCount: Int

isReturning

public let isReturning: Bool

createdAt

public let createdAt: Date

lastSeen

public let lastSeen: Date

Methods

init(userId:sessionId:sessionParams:experimentsBucket:variationsBucket:sessionCount:pageviewCount:isReturning:createdAt:lastSeen:)

public init(
    userId: String,
    sessionId: String,
    sessionParams: SessionParams,
    experimentsBucket: Bucket = Bucket(),
    variationsBucket: Bucket = Bucket(),
    sessionCount: Int = 1,
    pageviewCount: Int = 0,
    isReturning: Bool = false,
    createdAt: Date = Date(),
    lastSeen: Date = Date()
)

incrementPageviews()

public func incrementPageviews() -> User

Increment pageview count - Returns: New User instance with incremented pageview count

incrementSessions()

public func incrementSessions() -> User

Increment session count - Returns: New User instance with incremented session count, new session ID, and reset pageview count