UNPKG

@robotical/appv2-analytics-gatherer

Version:

A tool that gathers data from the Apps and sends it to the Analytics server

170 lines (169 loc) 7.53 kB
export declare enum VisitedScreenEnum { HOME = "home", ACTIVITIES = "activities", BLOCKS = "blocks", BLOCKSJR = "blocksjr", CONFIG = "config", SENSORS_DASHBOARD = "sens-dash", CODEWHEEL = "codewheel", MAZE = "maze", JUMPING_GAME = "jumping-game", ROBOFLY_GAME = "robofly-game", CONTROLLER = "controller", CALIBRATION = "calibration", HELP = "help", GAMES = "games", SKIING_GAME = "skiing-game" } export type VisitedActivityType = string; export declare enum HeartbeatTypeEnum { SESSION = "session", SCREEN = "screen", ACTIVITY = "activity" } export declare enum ServerEndpoints { TRACK_CONSENT = "track-consent", START_SESSION = "start-session", HEARTBEAT = "heartbeat", SCREEN_VISIT = "screen-visit", ACTIVITY_VISIT = "activity-visit", GET_CONSENT_RAW_DATA = "get-consent-raw-data", GET_SESSIONS_RAW_DATA = "get-sessions-raw-data", GET_SESSION_HEARTBEATS_RAW_DATA = "get-session-heartbeats-raw-data", GET_SCREEN_HEARTBEATS_RAW_DATA = "get-screen-heartbeats-raw-data", GET_SCREEN_VISITS_RAW_DATA = "get-screen-visits-raw-data", GET_ACTIVITY_VISITS_RAW_DATA = "get-activity-visits-raw-data", GET_ACTIVITY_HEARTBEATS_RAW_DATA = "get-activity-heartbeats-raw-data", GET_SESSIONS_N_PER_WEEK_PROCESSED_DATA = "get-sessions-n-per-week-processed-data", GET_UNIQUE_DEVICES_N_PER_WEEK_PROCESSED_DATA = "get-unique-devices-n-per-week-processed-data", GET_UNIQUE_COGS_N_PER_WEEK_PROCESSED_DATA = "get-unique-cogs-n-per-week-processed-data", GET_UNIQUE_MARTYS_N_PER_WEEK_PROCESSED_DATA = "get-unique-martys-n-per-week-processed-data", GET_VISITED_SCREENS_FREQUENCY_PER_WEEK_PROCESSED_DATA = "get-visited-screens-frequency-per-week-processed-data", GET_VISITED_ACTIVITIES_FREQUENCY_PER_WEEK_PROCESSED_DATA = "get-visited-activities-frequency-per-week-processed-data", GET_SESSIONS_TIME_SPENT_PER_WEEK_PROCESSED_DATA = "get-sessions-time-spent-per-week-processed-data", GET_SCREENS_TIME_SPENT_PER_WEEK_PROCESSED_DATA = "get-screens-time-spent-per-week-processed-data", GET_ACTIVITIES_TIME_SPENT_PER_WEEK_PROCESSED_DATA = "get-activities-time-spent-per-week-processed-data" } export type DateFilter = { fromDate: string; toDate: string; }; export type ServerEndpointsData = { [ServerEndpoints.TRACK_CONSENT]: { consent: boolean; }; [ServerEndpoints.START_SESSION]: { sessionId: string; deviceId: string; robotId: string; raftType: string; createdAt?: string; }; [ServerEndpoints.HEARTBEAT]: { id: string; isNewDoc?: boolean; type: HeartbeatTypeEnum; sessionId: string; screen?: VisitedScreenEnum; activity?: VisitedActivityType; createdAt?: string; lastUpdated?: string; }; [ServerEndpoints.SCREEN_VISIT]: { screen: VisitedScreenEnum; sessionId: string; deviceId: string; robotId: string; raftType: string; createdAt?: string; }; [ServerEndpoints.ACTIVITY_VISIT]: { activity: VisitedActivityType; sessionId: string; deviceId: string; robotId: string; raftType: string; createdAt?: string; }; [ServerEndpoints.GET_CONSENT_RAW_DATA]: {}; [ServerEndpoints.GET_SESSIONS_RAW_DATA]: DateFilter; [ServerEndpoints.GET_SESSION_HEARTBEATS_RAW_DATA]: DateFilter; [ServerEndpoints.GET_SCREEN_HEARTBEATS_RAW_DATA]: DateFilter; [ServerEndpoints.GET_SCREEN_VISITS_RAW_DATA]: DateFilter; [ServerEndpoints.GET_ACTIVITY_VISITS_RAW_DATA]: DateFilter; [ServerEndpoints.GET_ACTIVITY_HEARTBEATS_RAW_DATA]: DateFilter; [ServerEndpoints.GET_SESSIONS_N_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_UNIQUE_DEVICES_N_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_UNIQUE_COGS_N_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_UNIQUE_MARTYS_N_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_VISITED_SCREENS_FREQUENCY_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_VISITED_ACTIVITIES_FREQUENCY_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_SESSIONS_TIME_SPENT_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_SCREENS_TIME_SPENT_PER_WEEK_PROCESSED_DATA]: {}; [ServerEndpoints.GET_ACTIVITIES_TIME_SPENT_PER_WEEK_PROCESSED_DATA]: {}; }; export declare enum FirestoreCollectionsRawEnum { CONSENTS = "consents", SESSIONS = "sessions", SESSION_HEARTBEATS = "sessionHeartbeats", SCREEN_HEARTBEATS = "screenHeartbeats", SCREEN_VISITS = "screenVisits", ACTIVITY_VISITS = "activityVisits", ACTIVITY_HEARTBEATS = "activityHeartbeats" } export declare enum FirestoreCollectionsProcessedEnumLevel1 { SESSIONS = "sessions", DEVICES = "devices", ROBOTS = "robots", SCREENS = "screens", ACTIVITIES = "activities", HEARTBEATS = "heartbeats", METADATA = "metadata" } export declare enum FirestoreCollectionsProcessedEnumLevel2 { SESSIONS_N_PER_WEEK = "sessionsNPerWeek", SESSIONS_N_PER_WEEK_METADATA = "sessionsNPerWeekMetadata", UNIQUE_DEVICES_N_PER_WEEK = "uniqueDevicesNPerWeek", UNIQUE_DEVICES_N_PER_WEEK_METADATA = "uniqueDevicesNPerWeekMetadata", VISITED_SCREENS_FREQUENCY_PER_WEEK = "visitedScreensFrequencyPerWeek", VISITED_SCREENS_FREQUENCY_PER_WEEK_METADATA = "visitedScreensFrequencyPerWeekMetadata", VISITED_ACTIVITIES_FREQUENCY_PER_WEEK = "visitedActivitiesFrequencyPerWeek", VISITED_ACTIVITIES_FREQUENCY_PER_WEEK_METADATA = "visitedActivitiesFrequencyPerWeekMetadata", UNIQUE_COGS_PER_WEEK = "uniqueCogsPerWeek", UNIQUE_COGS_PER_WEEK_METADATA = "uniqueCogsPerWeekMetadata", UNIQUE_MARTYS_PER_WEEK = "uniqueMartysPerWeek", UNIQUE_MARTYS_PER_WEEK_METADATA = "uniqueMartysPerWeekMetadata", SESSIONS_TIME_SPENT_PER_WEEK = "sessionsTimeSpentPerWeek", SESSIONS_TIME_SPENT_PER_WEEK_METADATA = "sessionsTimeSpentPerWeekMetadata", SCREENS_TIME_SPENT_PER_WEEK = "screensTimeSpentPerWeek", SCREENS_TIME_SPENT_PER_WEEK_METADATA = "screensTimeSpentPerWeekMetadata", ACTIVITIES_TIME_SPENT_PER_WEEK = "activitiesTimeSpentPerWeek", ACTIVITIES_TIME_SPENT_PER_WEEK_METADATA = "activitiesTimeSpentPerWeekMetadata" } export type FirestoreConsentCountersRawData = { negativeConsents: number; positiveConsents: number; }[]; export type FirestoreSessionsRawData = (Omit<ServerEndpointsData[ServerEndpoints.START_SESSION], 'createdAt'> & { createdAt: string; })[]; export type FirestoreScreenVisitsRawData = (Omit<ServerEndpointsData[ServerEndpoints.SCREEN_VISIT], 'createdAt'> & { createdAt: string; })[]; export type FirestoreActivityVisitsRawData = (Omit<ServerEndpointsData[ServerEndpoints.ACTIVITY_VISIT], 'createdAt'> & { createdAt: string; })[]; export type FirestoreSessionHeartbeatsRawData = (Omit<ServerEndpointsData[ServerEndpoints.HEARTBEAT], 'createdAt' | 'lastUpdated' | 'isNewDoc'> & { createdAt: string; lastUpdated: string; })[]; export type FirestoreScreenHeartbeatsRawData = (Omit<ServerEndpointsData[ServerEndpoints.HEARTBEAT], 'createdAt' | 'lastUpdated' | 'isNewDoc' | 'screen'> & { createdAt: string; lastUpdated: string; screen: VisitedScreenEnum; })[]; export type FirestoreActivityHeartbeatsRawData = (Omit<ServerEndpointsData[ServerEndpoints.HEARTBEAT], 'createdAt' | 'lastUpdated' | 'isNewDoc' | 'activity'> & { createdAt: string; lastUpdated: string; activity: VisitedActivityType; })[];