package router type StartSessionRequest struct { Token string `json:"token"` UserUUID *string `json:"userUUID"` RevID string `json:"revID"` Timestamp int64 `json:"timestamp"` Timezone string `json:"timezone"` TrackerVersion string `json:"trackerVersion"` IsSnippet bool `json:"isSnippet"` DeviceMemory uint64 `json:"deviceMemory"` JsHeapSizeLimit uint64 `json:"jsHeapSizeLimit"` ProjectKey *string `json:"projectKey"` Reset bool `json:"reset"` UserID string `json:"userID"` DoNotRecord bool `json:"doNotRecord"` // start record session or not BufferDiff uint64 `json:"bufferDiff"` // buffer diff in ms for start record session IsOffline bool `json:"isOffline"` // to indicate that we have to use user's start timestamp Condition string `json:"condition"` // condition for start record session Width int `json:"width"` Height int `json:"height"` } type StartSessionResponse struct { Timestamp int64 `json:"timestamp"` StartTimestamp int64 `json:"startTimestamp"` Delay int64 `json:"delay"` Token string `json:"token"` UserUUID string `json:"userUUID"` UserOS string `json:"userOS"` UserDevice string `json:"userDevice"` UserBrowser string `json:"userBrowser"` UserCountry string `json:"userCountry"` UserState string `json:"userState"` UserCity string `json:"userCity"` SessionID string `json:"sessionID"` ProjectID string `json:"projectID"` BeaconSizeLimit int64 `json:"beaconSizeLimit"` CompressionThreshold int64 `json:"compressionThreshold"` CanvasEnabled bool `json:"canvasEnabled"` // false default CanvasImageQuality string `json:"canvasQuality"` // low | medium | high CanvasFrameRate int `json:"canvasFPS"` // 2 default } type NotStartedRequest struct { ProjectKey *string `json:"projectKey"` TrackerVersion string `json:"trackerVersion"` DoNotTrack bool `json:"DoNotTrack"` } type StartMobileSessionRequest struct { Token string `json:"token"` ProjectKey *string `json:"projectKey"` TrackerVersion string `json:"trackerVersion"` RevID string `json:"revID"` UserUUID *string `json:"userUUID"` UserOSVersion string `json:"userOSVersion"` UserDevice string `json:"userDevice"` UserDeviceType string `json:"userDeviceType"` Timestamp uint64 `json:"timestamp"` Timezone string `json:"timezone"` DeviceMemory uint64 `json:"deviceMemory"` DoNotRecord bool `json:"doNotRecord"` // start record session or not Condition string `json:"condition"` // condition for start record session Platform string `json:"platform"` Width int `json:"width"` Height int `json:"height"` } type StartMobileSessionResponse struct { Token string `json:"token"` ImagesHashList []string `json:"imagesHashList"` UserUUID string `json:"userUUID"` BeaconSizeLimit int64 `json:"beaconSizeLimit"` SessionID string `json:"sessionID"` ImageQuality string `json:"quality"` FrameRate int `json:"fps"` ProjectID string `json:"projectID"` }