Files
alfred-be/alfred/utils/constants.go
2026-03-08 16:14:42 +05:30

239 lines
5.8 KiB
Go

package utils
import "time"
type Extensions string
const (
TempDestinationFolder = "alfredTmp"
ZipContentType = "application/zip"
XzContentType = "application/x-xz"
ZipExtension Extensions = ".zip"
ZipXzExtension Extensions = ".zip.xz"
JsonExtension Extensions = ".json"
VideoExtension Extensions = ".mp4"
ImageExtensionJpeg Extensions = ".jpeg"
ImageExtensionWebp Extensions = ".webp"
GZExtension Extensions = ".gz"
TempDirectory = "tempDir"
ThirdPartyDirectory = "thirdParty"
ImageTypeJpeg = "jpeg"
ImageTypeWebp = "webp"
)
// customer federation constants
const (
CustomerFederationUrlByReferenceId = "%s/customer-federation-layer"
Query = "{\"query\": \"{getCustomer(customerReferenceId: \\\"%s\\\") {getDevice{deviceId,customerReferenceId}}}\"}"
)
// customer service constants
const (
CustomerProfileServiceUrlByPhoneNumber = "%s/customer-profile/internal/v2/customer/search?type=PHONE_NUMBER&value=%s"
CustomerProfileServiceUrlByExternalId = "%s/customer-profile/internal/v2/customer/search?type=EXTERNAL_ID&value=%s"
TenantIdHeadersKey = "X-TENANT-ID"
CoorelationId = "X-Correlation-Id"
TeamName = "X-Team-Name"
CRMTENANT = "crm"
)
// NAVI filter names
const (
EVENTS_SCREEN_NAME = "events.screen_name"
FRAGMENT_NAME = "fragment_name"
SCREEN_NAME = "screen_name"
VERTICAL = "vertical"
)
// litmus proxy service constants
const (
LitmusProxyUrl = "%s/litmus-proxy/v1/proxy/experiment?name=%s"
DeviceIdHeadersKey = "deviceId"
)
// es query upper limits
const (
SessionUpperLimit = 10000
EventsUpperLimit = 10000
EsUpperLimit = 10000
)
// DefaultCacheTtl cache constants
const (
DefaultCacheTtl = 20 * time.Minute
)
// UUID SUFFIX
const (
SESSION_SUFFIX = "ALFRED_SESSION_ID"
EVENT_SUFFIX = "ALFRED_EVENT_ID"
WEB_SESSION_SUFFIX = ""
)
// Headers keys
const (
X_SESSION_TOKEN = "X-Session-Token"
X_EMAIL_ID = "X-Email-Id"
X_API_KEY = "X-Api-Key"
ApplicationJsonContentType = "application/json"
X_PLATFORM = "X-Platform"
X_AUTH_KEY = "X-Auth-Key"
)
// Query Parameters
const (
WEB_PROJECT_NAME = "project_name"
ANDROID_OS = "android"
IOS_OS = "ios"
)
// ClientName
const (
CLIENT_NAME = "CLIENT_NAME"
NAVI_USER_APP = "NaviUserApp"
NAVI_USER_APP_IOS = "NaviUserAppIos"
COSMOS = "CosmosApp"
LONGHORN = "longhorn"
TRIBUTE_WEB = "tribute-web"
)
// Errors
const (
BAD_REQUEST = "Bad Request"
INVALID_CLIENT = "client is not whitelisted"
INVALID_WEB_CLIENT = "web client is not whitelisted"
NO_SESSION_FOUND = "no session found"
)
// Joiners
const (
COLON = ":"
HYPHEN = "-"
EMPTY = ""
UNDERSCORE = "_"
NEWLINE = "\n"
FORWARD_SLASH = "/"
ASTERISK = "*"
DOT = "."
COMMA = ","
SEMICOLON = ";"
AMPERSAND = "&"
)
// Ingester Endpoints
const (
WEB_SESSIONS_V2 = "/v2/ingest/web/sessions"
CRUISE_CONTROL = "/cruise"
CRUISE_CONTROL_V2 = "/v2/cruise"
ERROR_EVENTS_API = "/error-events"
PING = "/ping"
PONG = "pong"
PPROF = "/pprof"
ADMIN = "/admin"
)
const (
WEB_SESSION_VALUE = "webSession"
WEB_SESSIONS_V2_VALUE = "webSessionV2"
CRUISE_CONTROL_VALUE = "cruise"
CRUISE_CONTROL_V2_VALUE = "cruiseV2"
)
// Query Params
const (
PROJECT_NAME = "project_name"
SESSION_ID = "session_id"
FRAGMENTS_TILL_NOW = "fragments_till_now"
)
// Date Time constants
const (
IST_TIME_ZONE = "Asia/Kolkata"
DateFormat = "2006-01-02"
IndexDateRegex = `(\d{4}-\d{1,2}-\d{1,2})`
)
// FPS related
const (
DEFAULT_RECORDING_FPS = 1
RECORDING_2_FPS = 2
)
// Device Attributes
const (
BATTERY_HIGH = "BatteryHigh"
BATTERY_MEDIUM = "BatteryMedium"
BATTERY_LOW = "BatteryLow"
NETWORK_STRENGTH = "NetworkStrength"
MEMORY_HIGH = "MemoryHigh"
MEMORY_LOW = "MemoryLow"
DEVICE_ID = "deviceId"
HIGH = "High"
MEDIUM = "Medium"
FIVE_G = "5g"
FOUR_G = "4g"
WIFI = "wifi"
CUSTOMER_ID = "customer_id"
)
// Video Generation Status
const (
COMPLETED = "COMPLETED"
PENDING = "PENDING"
MASKING_DONE = "MASKED"
TOUCH_POINTS_ADDED = "TOUCH_POINTS_ADDED"
)
const (
P90 = 0.9
P95 = 0.95
P50 = 0.5
)
const (
UPDATE_DEVICE_METRICS_CRON = "Update-Device-Metrics-Cron"
DEVICE_METRICS_ALERT_CRON = "Device-Metrics-Cron"
UPDATE_DEVICE_METRICS_CRON_COSMOS = "Update-Device-Metrics-Cron-Cosmos"
DEVICE_METRICS_ALERT_CRON_COSMOS = "Device-Metrics-Cron-Cosmos"
ERROR_EVENT_UPDATE_CRON = "Error-Event-Update-Cron"
)
const (
PROCESS_FILE_NAME_SUFFIX = "PROCESSED"
TO_BE_MASKED_FILE_SUFFIX = "TO_BE_MASKED"
MASKED_FILE_SUFFIX = "MASKED"
)
const (
USER_EMAIL_HEADER = "X-User-Email"
IMAGE_TYPE = "image_type"
FILE_TYPE_EXTENSION = "file_type_extension"
)
// Event Attributes
const (
START_X = "START_X"
START_Y = "START_Y"
)
// Masking
const (
BLUR_MODE = "BLUR"
DS_MODE = "DS"
DsMaskingSuccessResponse = "200 OK"
DsMaskingUploadUrl = "upload_url"
)
// Litmus
const (
COSMOS_ENABLE_EXPERIMENT = "COSMOS_ENABLE_EXPERIMENT"
FPS_EXPERIMENT = "FPS_EXPERIMENT"
IMAGE_TYPE_EXPERIMENT = "IMAGE_TYPE_EXPERIMENT"
NAVI_USER_APP_IOS_EXPERIMENT = "NAVI_USER_APP_IOS_EXPERIMENT"
FILE_TYPE_EXTENSION_EXPERIMENT = "FILE_TYPE_EXTENSION_EXPERIMENT"
)
func (e Extensions) String() string {
return string(e)
}