@adtrackify/at-service-common 3.0.7 → 3.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,6 +2,7 @@ import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3'
2
2
  export declare class S3Client {
3
3
  s3: S3;
4
4
  constructor(region?: string);
5
+ getObject(path: string, bucket: string): Promise<any>;
5
6
  checkObjectExists(path: string, bucket: string): Promise<boolean>;
6
7
  checkAndUploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number): Promise<{
7
8
  status: boolean;
@@ -8,6 +8,18 @@ class S3Client {
8
8
  constructor(region = 'us-west-2') {
9
9
  this.s3 = new client_s3_1.S3({ region });
10
10
  }
11
+ async getObject(path, bucket) {
12
+ try {
13
+ const data = await this.s3.getObject({
14
+ Bucket: bucket,
15
+ Key: path
16
+ });
17
+ return data?.Body;
18
+ }
19
+ catch (error) {
20
+ index_js_1.Logger.error('Failed to getObject', { bucket, path });
21
+ }
22
+ }
11
23
  async checkObjectExists(path, bucket) {
12
24
  try {
13
25
  const data = await this.s3.headObject({
@@ -1 +1 @@
1
- {"version":3,"file":"s3-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/s3-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"s3-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/s3-client.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,5 @@
1
1
  import { ApiResponse } from '../../types/api-response.js';
2
2
  import { Query, QueryResponse } from '@adtrackify/at-tracking-event-types';
3
- export interface LatestSessionResponseData {
4
- identityId?: string;
5
- sessionId?: string;
6
- }
7
3
  export declare class DbMgmtClient {
8
4
  BASE_API_URL: string;
9
5
  DB_MGMT_API_KEY: string;
@@ -18,6 +14,5 @@ export declare class DbMgmtClient {
18
14
  };
19
15
  };
20
16
  getClient: () => any;
21
- getLatestSession: (pixelId: string, ipAddress: string, userAgent: string, domain: string) => Promise<ApiResponse<LatestSessionResponseData>>;
22
17
  query: (query: Query) => Promise<ApiResponse<QueryResponse>>;
23
18
  }
@@ -29,12 +29,6 @@ class DbMgmtClient {
29
29
  this.client = this.client ?? (0, http_client_js_1.axiosHttpService)(this.getConfig());
30
30
  return this.client;
31
31
  };
32
- getLatestSession = async (pixelId, ipAddress, userAgent, domain) => {
33
- const client = this.getClient();
34
- const response = await client.post('/query/session', { pixelId, ipAddress, userAgent: domain });
35
- lambda_log_1.default.debug('getLatestSession', { response });
36
- return response;
37
- };
38
32
  query = async (query) => {
39
33
  const client = this.getClient();
40
34
  const response = await client.post('/query', query);
@@ -1 +1 @@
1
- {"version":3,"file":"db-management-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/db-management-client.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA6B;AAE7B,8DAA6D;AAO7D,MAAa,YAAY;IAChB,YAAY,CAAS;IACrB,eAAe,CAAS;IACxB,MAAM,CAAM;IACnB,YAAY,UAAkB,EAAE,YAAoB;QAClD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;IACtC,CAAC;IAED,SAAS,GAAG,GAAG,EAAE;QACf,MAAM,oBAAoB,GAAG,GAAG,IAAI,CAAC,YAAY,UAAU,CAAC;QAC5D,OAAO;YACL,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,WAAW,EAAE,IAAI,CAAC,eAAe;iBAClC;aACF;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,SAAS,GAAG,GAAG,EAAE;QACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAA,iCAAgB,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC,CAAC;IAEF,gBAAgB,GAAG,KAAK,EAAE,OAAe,EAAE,SAAiB,EAAE,SAAiB,EAAE,MAAc,EAAmD,EAAE;QAClJ,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QAChG,oBAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC5C,OAAO,QAAkD,CAAC;IAC5D,CAAC,CAAC;IAEF,KAAK,GAAG,KAAK,EAAE,KAAY,EAAuC,EAAE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpD,oBAAG,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,OAAO,QAAsC,CAAC;IAChD,CAAC,CAAC;CACH;AAvCD,oCAuCC"}
1
+ {"version":3,"file":"db-management-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/db-management-client.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA6B;AAE7B,8DAA6D;AAG7D,MAAa,YAAY;IAChB,YAAY,CAAS;IACrB,eAAe,CAAS;IACxB,MAAM,CAAM;IACnB,YAAY,UAAkB,EAAE,YAAoB;QAClD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;IACtC,CAAC;IAED,SAAS,GAAG,GAAG,EAAE;QACf,MAAM,oBAAoB,GAAG,GAAG,IAAI,CAAC,YAAY,UAAU,CAAC;QAC5D,OAAO;YACL,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,WAAW,EAAE,IAAI,CAAC,eAAe;iBAClC;aACF;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,SAAS,GAAG,GAAG,EAAE;QACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAA,iCAAgB,EAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC,CAAC;IAEF,KAAK,GAAG,KAAK,EAAE,KAAY,EAAuC,EAAE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpD,oBAAG,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,OAAO,QAAsC,CAAC;IAChD,CAAC,CAAC;CACH;AAhCD,oCAgCC"}
@@ -1,6 +1,15 @@
1
- import { TrackingEventRecord } from '@adtrackify/at-tracking-event-types';
1
+ import { AdClickInfo, TrackingEvent, TrackingEventRecord } from '@adtrackify/at-tracking-event-types';
2
+ export interface LatestSessionResponseData {
3
+ pixelId?: string;
4
+ identityId?: string;
5
+ sessionId?: string;
6
+ click?: AdClickInfo;
7
+ }
2
8
  export declare class TrackingEventsDataService {
3
9
  TABLE_NAME: string;
4
10
  constructor(tableName: string);
11
+ getLatestSessionByIpAddressUserAgent: (indexName: string, ipAddressUserAgent: string, hostname?: string) => Promise<LatestSessionResponseData>;
5
12
  getTrackingEventsByPixelIdEventName: (indexName: string, pixelId: string, eventName: string, limit?: number, afterCollectedAt?: string) => Promise<TrackingEventRecord[]>;
13
+ getTrackingEventCountByPixelId: (indexName: string, pixelId: string, offsetInMinutes?: number) => Promise<number>;
14
+ putTrackingEvent: (trackingEvent: TrackingEvent, ttlInDays?: number) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null | undefined>;
6
15
  }
@@ -2,11 +2,59 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TrackingEventsDataService = void 0;
4
4
  const clients_1 = require("../../clients");
5
+ const helpers_1 = require("../../helpers");
6
+ const luxon_1 = require("luxon");
5
7
  class TrackingEventsDataService {
6
8
  TABLE_NAME;
7
9
  constructor(tableName) {
8
10
  this.TABLE_NAME = tableName;
9
11
  }
12
+ getLatestSessionByIpAddressUserAgent = async (indexName, ipAddressUserAgent, hostname) => {
13
+ try {
14
+ const params = {
15
+ TableName: this.TABLE_NAME,
16
+ IndexName: indexName,
17
+ KeyConditionExpression: 'ipAddressUserAgent = :ipAddressUserAgent',
18
+ ExpressionAttributeValues: {
19
+ ':ipAddressUserAgent': ipAddressUserAgent,
20
+ },
21
+ ScanIndexForward: false
22
+ };
23
+ const results = await clients_1.DynamoDbClient.query(params);
24
+ let trackingEventRecord;
25
+ if (results?.Items && results.Items.length > 0) {
26
+ trackingEventRecord = results.Items.find((item) => {
27
+ const _trackingEvent = item.trackingEvent;
28
+ const _hostname = item?.hostname;
29
+ if (hostname && _hostname === hostname && _trackingEvent.context?.externalId && _trackingEvent.context.properties?.sessionId) {
30
+ return true;
31
+ }
32
+ else if (_trackingEvent.context?.externalId && _trackingEvent.context.properties?.sessionId) {
33
+ return true;
34
+ }
35
+ else {
36
+ return false;
37
+ }
38
+ });
39
+ }
40
+ if (trackingEventRecord) {
41
+ const trackingEvent = trackingEventRecord.trackingEvent;
42
+ return {
43
+ pixelId: trackingEvent?.pixelId,
44
+ identityId: trackingEvent.context?.externalId,
45
+ sessionId: trackingEvent.context?.properties?.sessionId,
46
+ click: trackingEvent.context?.properties?.click
47
+ };
48
+ }
49
+ else {
50
+ return {};
51
+ }
52
+ }
53
+ catch (e) {
54
+ helpers_1.Logger.error('Failed to getLastTrackingEventByIpAddressUserAgent', { e });
55
+ return {};
56
+ }
57
+ };
10
58
  getTrackingEventsByPixelIdEventName = async (indexName, pixelId, eventName, limit, afterCollectedAt) => {
11
59
  const query = {
12
60
  TableName: this.TABLE_NAME,
@@ -27,6 +75,50 @@ class TrackingEventsDataService {
27
75
  const trackingEventsResponse = await clients_1.DynamoDbClient.query(query);
28
76
  return trackingEventsResponse?.Items ?? [];
29
77
  };
78
+ getTrackingEventCountByPixelId = async (indexName, pixelId, offsetInMinutes = 30) => {
79
+ try {
80
+ const pastDateTime = luxon_1.DateTime.now().minus({ minutes: offsetInMinutes }).toISO();
81
+ const params = {
82
+ TableName: this.TABLE_NAME,
83
+ IndexName: indexName,
84
+ KeyConditionExpression: 'pixelId = :pixelId and collectedAt > :collectedAt',
85
+ ExpressionAttributeValues: {
86
+ ':pixelId': pixelId,
87
+ ':collectedAt': pastDateTime
88
+ }
89
+ };
90
+ const results = await clients_1.DynamoDbClient.query(params);
91
+ return results?.Items?.length ?? 0;
92
+ }
93
+ catch (e) {
94
+ helpers_1.Logger.error('Failed to getTrackingEventCountByPixelId', { e });
95
+ return 0;
96
+ }
97
+ };
98
+ putTrackingEvent = async (trackingEvent, ttlInDays) => {
99
+ if (!trackingEvent.context?.properties?.ipAddress || !trackingEvent.context?.properties?.userAgent)
100
+ return;
101
+ const pageURL = trackingEvent?.context?.properties?.page?.url;
102
+ const parsedPageURL = new URL(pageURL);
103
+ const hostname = parsedPageURL?.hostname;
104
+ const trackingEventsTableTTLDays = ttlInDays || 15;
105
+ const expiredAt = luxon_1.DateTime.now().plus({ days: trackingEventsTableTTLDays }).toSeconds();
106
+ const trackingEventRecord = {
107
+ eventId: trackingEvent.id,
108
+ eventName: trackingEvent.name,
109
+ trackingEvent,
110
+ pixelId: trackingEvent?.pixelId,
111
+ pixelIdEventName: `${trackingEvent.pixelId}_${trackingEvent.name}`,
112
+ ipAddressUserAgent: `${trackingEvent.context?.properties?.ipAddress}_${trackingEvent.context?.properties?.userAgent}`,
113
+ hostname,
114
+ identityId: trackingEvent?.context?.externalId,
115
+ sessionId: trackingEvent?.context?.properties?.sessionId,
116
+ collectedAt: trackingEvent.collectedAt,
117
+ expiredAt,
118
+ };
119
+ helpers_1.Logger.debug('Put tracking event', { trackingEventRecord, expiredAtType: typeof expiredAt });
120
+ return await clients_1.DynamoDbClient.safePut(this.TABLE_NAME, trackingEventRecord);
121
+ };
30
122
  }
31
123
  exports.TrackingEventsDataService = TrackingEventsDataService;
32
124
  //# sourceMappingURL=tracking-events-data-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracking-events-data-service.js","sourceRoot":"","sources":["../../../../src/services/db/tracking-events-data-service.ts"],"names":[],"mappings":";;;AACA,2CAA+C;AAE/C,MAAa,yBAAyB;IAC7B,UAAU,CAAS;IAE1B,YAAY,SAAiB;QAC3B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAEM,mCAAmC,GAAG,KAAK,EAAE,SAAiB,EAAE,OAAe,EAAE,SAAiB,EAAE,KAAc,EAAE,gBAAyB,EAAkC,EAAE;QACtL,MAAM,KAAK,GAAQ;YACjB,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,SAAS,EAAE,SAAS;YACpB,sBAAsB,EAAE,sCAAsC;YAC9D,yBAAyB,EAAE;gBACzB,mBAAmB,EAAE,GAAG,OAAO,IAAI,SAAS,EAAE;aAC/C;YACD,gBAAgB,EAAE,KAAK;SACxB,CAAC;QACF,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;SACrB;QACD,IAAI,gBAAgB,EAAE;YACpB,KAAK,CAAC,sBAAsB,IAAI,iCAAiC,CAAC;YAClE,KAAK,CAAC,yBAAyB,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC;SACpE;QAED,MAAM,sBAAsB,GAAG,MAAM,wBAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjE,OAAO,sBAAsB,EAAE,KAA8B,IAAI,EAAE,CAAC;IACtE,CAAC,CAAA;CACF;AA5BD,8DA4BC"}
1
+ {"version":3,"file":"tracking-events-data-service.js","sourceRoot":"","sources":["../../../../src/services/db/tracking-events-data-service.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { ObjectCannedACL, PutObjectCommandOutput, S3 } from '@aws-sdk/client-s3'
2
2
  export declare class S3Client {
3
3
  s3: S3;
4
4
  constructor(region?: string);
5
+ getObject(path: string, bucket: string): Promise<any>;
5
6
  checkObjectExists(path: string, bucket: string): Promise<boolean>;
6
7
  checkAndUploadJson(path: string, bucket: string, jsonData: any, ACL?: ObjectCannedACL, retryCount?: number, maxRetries?: number): Promise<{
7
8
  status: boolean;
@@ -5,6 +5,18 @@ export class S3Client {
5
5
  constructor(region = 'us-west-2') {
6
6
  this.s3 = new S3({ region });
7
7
  }
8
+ async getObject(path, bucket) {
9
+ try {
10
+ const data = await this.s3.getObject({
11
+ Bucket: bucket,
12
+ Key: path
13
+ });
14
+ return data?.Body;
15
+ }
16
+ catch (error) {
17
+ Logger.error('Failed to getObject', { bucket, path });
18
+ }
19
+ }
8
20
  async checkObjectExists(path, bucket) {
9
21
  try {
10
22
  const data = await this.s3.headObject({
@@ -1 +1 @@
1
- {"version":3,"file":"s3-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/s3-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"s3-client.js","sourceRoot":"","sources":["../../../../src/clients/generic/s3-client.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,5 @@
1
1
  import { ApiResponse } from '../../types/api-response.js';
2
2
  import { Query, QueryResponse } from '@adtrackify/at-tracking-event-types';
3
- export interface LatestSessionResponseData {
4
- identityId?: string;
5
- sessionId?: string;
6
- }
7
3
  export declare class DbMgmtClient {
8
4
  BASE_API_URL: string;
9
5
  DB_MGMT_API_KEY: string;
@@ -18,6 +14,5 @@ export declare class DbMgmtClient {
18
14
  };
19
15
  };
20
16
  getClient: () => any;
21
- getLatestSession: (pixelId: string, ipAddress: string, userAgent: string, domain: string) => Promise<ApiResponse<LatestSessionResponseData>>;
22
17
  query: (query: Query) => Promise<ApiResponse<QueryResponse>>;
23
18
  }
@@ -23,12 +23,6 @@ export class DbMgmtClient {
23
23
  this.client = this.client ?? axiosHttpService(this.getConfig());
24
24
  return this.client;
25
25
  };
26
- getLatestSession = async (pixelId, ipAddress, userAgent, domain) => {
27
- const client = this.getClient();
28
- const response = await client.post('/query/session', { pixelId, ipAddress, userAgent: domain });
29
- log.debug('getLatestSession', { response });
30
- return response;
31
- };
32
26
  query = async (query) => {
33
27
  const client = this.getClient();
34
28
  const response = await client.post('/query', query);
@@ -1 +1 @@
1
- {"version":3,"file":"db-management-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/db-management-client.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAO7D,MAAM,OAAO,YAAY;IAChB,YAAY,CAAS;IACrB,eAAe,CAAS;IACxB,MAAM,CAAM;IACnB,YAAY,UAAkB,EAAE,YAAoB;QAClD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;IACtC,CAAC;IAED,SAAS,GAAG,GAAG,EAAE;QACf,MAAM,oBAAoB,GAAG,GAAG,IAAI,CAAC,YAAY,UAAU,CAAC;QAC5D,OAAO;YACL,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,WAAW,EAAE,IAAI,CAAC,eAAe;iBAClC;aACF;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,SAAS,GAAG,GAAG,EAAE;QACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC,CAAC;IAEF,gBAAgB,GAAG,KAAK,EAAE,OAAe,EAAE,SAAiB,EAAE,SAAiB,EAAE,MAAc,EAAmD,EAAE;QAClJ,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QAChG,GAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC5C,OAAO,QAAkD,CAAC;IAC5D,CAAC,CAAC;IAEF,KAAK,GAAG,KAAK,EAAE,KAAY,EAAuC,EAAE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpD,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,OAAO,QAAsC,CAAC;IAChD,CAAC,CAAC;CACH"}
1
+ {"version":3,"file":"db-management-client.js","sourceRoot":"","sources":["../../../../src/clients/internal-api/db-management-client.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAG7D,MAAM,OAAO,YAAY;IAChB,YAAY,CAAS;IACrB,eAAe,CAAS;IACxB,MAAM,CAAM;IACnB,YAAY,UAAkB,EAAE,YAAoB;QAClD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC;IACtC,CAAC;IAED,SAAS,GAAG,GAAG,EAAE;QACf,MAAM,oBAAoB,GAAG,GAAG,IAAI,CAAC,YAAY,UAAU,CAAC;QAC5D,OAAO;YACL,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE;gBACP,MAAM,EAAE;oBACN,WAAW,EAAE,IAAI,CAAC,eAAe;iBAClC;aACF;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,SAAS,GAAG,GAAG,EAAE;QACf,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC,CAAC;IAEF,KAAK,GAAG,KAAK,EAAE,KAAY,EAAuC,EAAE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpD,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,OAAO,QAAsC,CAAC;IAChD,CAAC,CAAC;CACH"}
@@ -1,6 +1,15 @@
1
- import { TrackingEventRecord } from '@adtrackify/at-tracking-event-types';
1
+ import { AdClickInfo, TrackingEvent, TrackingEventRecord } from '@adtrackify/at-tracking-event-types';
2
+ export interface LatestSessionResponseData {
3
+ pixelId?: string;
4
+ identityId?: string;
5
+ sessionId?: string;
6
+ click?: AdClickInfo;
7
+ }
2
8
  export declare class TrackingEventsDataService {
3
9
  TABLE_NAME: string;
4
10
  constructor(tableName: string);
11
+ getLatestSessionByIpAddressUserAgent: (indexName: string, ipAddressUserAgent: string, hostname?: string) => Promise<LatestSessionResponseData>;
5
12
  getTrackingEventsByPixelIdEventName: (indexName: string, pixelId: string, eventName: string, limit?: number, afterCollectedAt?: string) => Promise<TrackingEventRecord[]>;
13
+ getTrackingEventCountByPixelId: (indexName: string, pixelId: string, offsetInMinutes?: number) => Promise<number>;
14
+ putTrackingEvent: (trackingEvent: TrackingEvent, ttlInDays?: number) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput | null | undefined>;
6
15
  }
@@ -1,9 +1,57 @@
1
1
  import { DynamoDbClient } from '../../clients';
2
+ import { Logger } from '../../helpers';
3
+ import { DateTime } from 'luxon';
2
4
  export class TrackingEventsDataService {
3
5
  TABLE_NAME;
4
6
  constructor(tableName) {
5
7
  this.TABLE_NAME = tableName;
6
8
  }
9
+ getLatestSessionByIpAddressUserAgent = async (indexName, ipAddressUserAgent, hostname) => {
10
+ try {
11
+ const params = {
12
+ TableName: this.TABLE_NAME,
13
+ IndexName: indexName,
14
+ KeyConditionExpression: 'ipAddressUserAgent = :ipAddressUserAgent',
15
+ ExpressionAttributeValues: {
16
+ ':ipAddressUserAgent': ipAddressUserAgent,
17
+ },
18
+ ScanIndexForward: false
19
+ };
20
+ const results = await DynamoDbClient.query(params);
21
+ let trackingEventRecord;
22
+ if (results?.Items && results.Items.length > 0) {
23
+ trackingEventRecord = results.Items.find((item) => {
24
+ const _trackingEvent = item.trackingEvent;
25
+ const _hostname = item?.hostname;
26
+ if (hostname && _hostname === hostname && _trackingEvent.context?.externalId && _trackingEvent.context.properties?.sessionId) {
27
+ return true;
28
+ }
29
+ else if (_trackingEvent.context?.externalId && _trackingEvent.context.properties?.sessionId) {
30
+ return true;
31
+ }
32
+ else {
33
+ return false;
34
+ }
35
+ });
36
+ }
37
+ if (trackingEventRecord) {
38
+ const trackingEvent = trackingEventRecord.trackingEvent;
39
+ return {
40
+ pixelId: trackingEvent?.pixelId,
41
+ identityId: trackingEvent.context?.externalId,
42
+ sessionId: trackingEvent.context?.properties?.sessionId,
43
+ click: trackingEvent.context?.properties?.click
44
+ };
45
+ }
46
+ else {
47
+ return {};
48
+ }
49
+ }
50
+ catch (e) {
51
+ Logger.error('Failed to getLastTrackingEventByIpAddressUserAgent', { e });
52
+ return {};
53
+ }
54
+ };
7
55
  getTrackingEventsByPixelIdEventName = async (indexName, pixelId, eventName, limit, afterCollectedAt) => {
8
56
  const query = {
9
57
  TableName: this.TABLE_NAME,
@@ -24,5 +72,49 @@ export class TrackingEventsDataService {
24
72
  const trackingEventsResponse = await DynamoDbClient.query(query);
25
73
  return trackingEventsResponse?.Items ?? [];
26
74
  };
75
+ getTrackingEventCountByPixelId = async (indexName, pixelId, offsetInMinutes = 30) => {
76
+ try {
77
+ const pastDateTime = DateTime.now().minus({ minutes: offsetInMinutes }).toISO();
78
+ const params = {
79
+ TableName: this.TABLE_NAME,
80
+ IndexName: indexName,
81
+ KeyConditionExpression: 'pixelId = :pixelId and collectedAt > :collectedAt',
82
+ ExpressionAttributeValues: {
83
+ ':pixelId': pixelId,
84
+ ':collectedAt': pastDateTime
85
+ }
86
+ };
87
+ const results = await DynamoDbClient.query(params);
88
+ return results?.Items?.length ?? 0;
89
+ }
90
+ catch (e) {
91
+ Logger.error('Failed to getTrackingEventCountByPixelId', { e });
92
+ return 0;
93
+ }
94
+ };
95
+ putTrackingEvent = async (trackingEvent, ttlInDays) => {
96
+ if (!trackingEvent.context?.properties?.ipAddress || !trackingEvent.context?.properties?.userAgent)
97
+ return;
98
+ const pageURL = trackingEvent?.context?.properties?.page?.url;
99
+ const parsedPageURL = new URL(pageURL);
100
+ const hostname = parsedPageURL?.hostname;
101
+ const trackingEventsTableTTLDays = ttlInDays || 15;
102
+ const expiredAt = DateTime.now().plus({ days: trackingEventsTableTTLDays }).toSeconds();
103
+ const trackingEventRecord = {
104
+ eventId: trackingEvent.id,
105
+ eventName: trackingEvent.name,
106
+ trackingEvent,
107
+ pixelId: trackingEvent?.pixelId,
108
+ pixelIdEventName: `${trackingEvent.pixelId}_${trackingEvent.name}`,
109
+ ipAddressUserAgent: `${trackingEvent.context?.properties?.ipAddress}_${trackingEvent.context?.properties?.userAgent}`,
110
+ hostname,
111
+ identityId: trackingEvent?.context?.externalId,
112
+ sessionId: trackingEvent?.context?.properties?.sessionId,
113
+ collectedAt: trackingEvent.collectedAt,
114
+ expiredAt,
115
+ };
116
+ Logger.debug('Put tracking event', { trackingEventRecord, expiredAtType: typeof expiredAt });
117
+ return await DynamoDbClient.safePut(this.TABLE_NAME, trackingEventRecord);
118
+ };
27
119
  }
28
120
  //# sourceMappingURL=tracking-events-data-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracking-events-data-service.js","sourceRoot":"","sources":["../../../../src/services/db/tracking-events-data-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,OAAO,yBAAyB;IAC7B,UAAU,CAAS;IAE1B,YAAY,SAAiB;QAC3B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAEM,mCAAmC,GAAG,KAAK,EAAE,SAAiB,EAAE,OAAe,EAAE,SAAiB,EAAE,KAAc,EAAE,gBAAyB,EAAkC,EAAE;QACtL,MAAM,KAAK,GAAQ;YACjB,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,SAAS,EAAE,SAAS;YACpB,sBAAsB,EAAE,sCAAsC;YAC9D,yBAAyB,EAAE;gBACzB,mBAAmB,EAAE,GAAG,OAAO,IAAI,SAAS,EAAE;aAC/C;YACD,gBAAgB,EAAE,KAAK;SACxB,CAAC;QACF,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;SACrB;QACD,IAAI,gBAAgB,EAAE;YACpB,KAAK,CAAC,sBAAsB,IAAI,iCAAiC,CAAC;YAClE,KAAK,CAAC,yBAAyB,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC;SACpE;QAED,MAAM,sBAAsB,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjE,OAAO,sBAAsB,EAAE,KAA8B,IAAI,EAAE,CAAC;IACtE,CAAC,CAAA;CACF"}
1
+ {"version":3,"file":"tracking-events-data-service.js","sourceRoot":"","sources":["../../../../src/services/db/tracking-events-data-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adtrackify/at-service-common",
3
- "version": "3.0.7",
3
+ "version": "3.0.9",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist/*"
@@ -50,7 +50,7 @@
50
50
  "uuid": "^9.0.0"
51
51
  },
52
52
  "devDependencies": {
53
- "@adtrackify/at-tracking-event-types": "^3.0.24",
53
+ "@adtrackify/at-tracking-event-types": "^3.0.32",
54
54
  "@aws-sdk/client-cognito-identity-provider": "^3.345.0",
55
55
  "@aws-sdk/client-dynamodb": "^3.345.0",
56
56
  "@aws-sdk/client-eventbridge": "^3.345.0",