@vrplatform/log 2.0.1 → 2.0.3

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.
@@ -89,20 +89,17 @@ const useTracking = ({ dataset, env, name }, isDev) => {
89
89
  if (err)
90
90
  console.error(err);
91
91
  });
92
- const intercomUserId = (await intercom?.contacts.search({
93
- query: {
94
- field: 'external_id',
95
- operator: intercom_client_1.Intercom.SingleFilterSearchRequestOperator.Equals,
96
- value: userId,
97
- },
98
- }))?.data.at(0)?.id;
99
- if (intercomUserId)
92
+ try {
100
93
  await intercom?.events.create({
101
- user_id: intercomUserId,
94
+ user_id: userId,
102
95
  event_name: event,
103
96
  metadata: (0, convertValuesToString_1.convertValuesToString)(properties),
104
- created_at: timestamp ? timestamp.getTime() : Date.now(),
97
+ created_at: Math.floor((timestamp ? timestamp.getTime() : new Date().getTime()) / 1000),
105
98
  });
99
+ }
100
+ catch (e) {
101
+ console.error(e);
102
+ }
106
103
  }
107
104
  },
108
105
  identify: async ({ traits, userId, disableGeoip, timestamp, }) => {
@@ -119,63 +116,40 @@ const useTracking = ({ dataset, env, name }, isDev) => {
119
116
  timestamp,
120
117
  }, (err) => (err ? console.error(err) : {}));
121
118
  // upsert intercom user
122
- const data = {
123
- external_id: userId,
124
- email: traits?.email,
125
- name: traits?.name ||
126
- (traits?.firstName
127
- ? `${traits.firstName} ${traits.lastName}`
128
- : traits?.lastName),
129
- avatar: traits?.avatar,
130
- signed_up_at: traits?.createdAt
131
- ? new Date(traits.createdAt).getTime() / 1000
132
- : undefined,
133
- last_seen_at: new Date().getTime() / 1000,
134
- custom_attributes: { userType: traits?.role },
135
- };
136
- const intercomUser = (await intercom?.contacts.search({
137
- query: {
138
- field: 'external_id',
139
- operator: intercom_client_1.Intercom.SingleFilterSearchRequestOperator.Equals,
140
- value: userId,
141
- },
142
- }))?.data.at(0);
143
- if (intercomUser?.id)
144
- await intercom?.contacts.update(intercomUser?.id, data);
145
- else
146
- await intercom?.contacts.create(data);
119
+ try {
120
+ const data = {
121
+ external_id: userId,
122
+ email: traits?.email,
123
+ name: traits?.name ||
124
+ (traits?.firstName
125
+ ? `${traits.firstName} ${traits.lastName}`
126
+ : traits?.lastName),
127
+ avatar: traits?.avatar,
128
+ signed_up_at: traits?.createdAt
129
+ ? new Date(traits.createdAt).getTime() / 1000
130
+ : undefined,
131
+ last_seen_at: new Date().getTime() / 1000,
132
+ custom_attributes: { userType: traits?.role },
133
+ };
134
+ const intercomUser = (await intercom?.contacts.search({
135
+ query: {
136
+ field: 'external_id',
137
+ operator: intercom_client_1.Intercom.SingleFilterSearchRequestOperator.Equals,
138
+ value: userId,
139
+ },
140
+ }))?.data.at(0);
141
+ if (intercomUser?.id)
142
+ await intercom?.contacts.update(intercomUser?.id, data);
143
+ else
144
+ await intercom?.contacts.create(data);
145
+ }
146
+ catch (e) {
147
+ console.error(e);
148
+ }
147
149
  },
148
150
  group: async ({ traits, groupId, userId, anonymousId, timestamp, }) => {
149
151
  if (isDev || (0, utils_1.isTest)(userId || anonymousId || '', groupId))
150
152
  return;
151
- const cid = traits?.billingCustomerId || traits?.hyperlineCustomerId;
152
- const intercomCompany = await intercom?.companies.create({
153
- name: traits?.name,
154
- company_id: groupId,
155
- plan: traits?.plan,
156
- remote_created_at: traits?.createdAt
157
- ? new Date(traits.createdAt).getTime() / 1000
158
- : undefined,
159
- monthly_spend: traits?.mrr,
160
- custom_attributes: {
161
- teamId: groupId,
162
- team: traits?.name,
163
- type: traits?.type,
164
- status: traits?.status,
165
- pms: traits?.pms,
166
- accountingSoftware: traits?.accountingSoftware,
167
- activeListings: traits?.activeListings,
168
- paymentMethodType: traits?.paymentMethodType,
169
- partnerName: traits?.partner || traits?.accountingPartner,
170
- billingPortalUrl: cid
171
- ? `https://billing.vrplatform.app/portal/${cid}`
172
- : undefined,
173
- billingStatus: traits?.billingSubscriptionStatus,
174
- billingPartner: traits?.billingPartner ||
175
- traits?.partner ||
176
- traits?.accountingPartner,
177
- },
178
- });
179
153
  if (anonymousId) {
180
154
  posthog?.groupIdentify({
181
155
  groupKey: groupId,
@@ -194,17 +168,50 @@ const useTracking = ({ dataset, env, name }, isDev) => {
194
168
  });
195
169
  june?.group({ userId, groupId, traits, timestamp }, (err) => err ? console.error(err) : {});
196
170
  // attach intercom user to intercom company
197
- const intercomUser = (await intercom?.contacts.search({
198
- query: {
199
- field: 'external_id',
200
- operator: intercom_client_1.Intercom.SingleFilterSearchRequestOperator.Equals,
201
- value: userId,
202
- },
203
- }))?.data.at(0);
204
- if (intercomUser?.id && intercomCompany?.id)
205
- intercom?.companies.attachContact(intercomUser?.id, {
206
- id: intercomCompany?.id,
171
+ try {
172
+ const cid = traits?.billingCustomerId || traits?.hyperlineCustomerId;
173
+ const intercomCompany = await intercom?.companies.create({
174
+ name: traits?.name,
175
+ company_id: groupId,
176
+ plan: traits?.plan,
177
+ remote_created_at: traits?.createdAt
178
+ ? new Date(traits.createdAt).getTime() / 1000
179
+ : undefined,
180
+ monthly_spend: traits?.mrr,
181
+ custom_attributes: {
182
+ teamId: groupId,
183
+ team: traits?.name,
184
+ type: traits?.type,
185
+ status: traits?.status,
186
+ pms: traits?.pms,
187
+ accountingSoftware: traits?.accountingSoftware,
188
+ activeListings: traits?.activeListings,
189
+ paymentMethodType: traits?.paymentMethodType,
190
+ partnerName: traits?.partner || traits?.accountingPartner,
191
+ billingPortalUrl: cid
192
+ ? `https://billing.vrplatform.app/portal/${cid}`
193
+ : undefined,
194
+ billingStatus: traits?.billingSubscriptionStatus,
195
+ billingPartner: traits?.billingPartner ||
196
+ traits?.partner ||
197
+ traits?.accountingPartner,
198
+ },
207
199
  });
200
+ const intercomUser = (await intercom?.contacts.search({
201
+ query: {
202
+ field: 'external_id',
203
+ operator: intercom_client_1.Intercom.SingleFilterSearchRequestOperator.Equals,
204
+ value: userId,
205
+ },
206
+ }))?.data.at(0);
207
+ if (intercomUser?.id && intercomCompany?.id)
208
+ intercom?.companies.attachContact(intercomUser?.id, {
209
+ id: intercomCompany?.id,
210
+ });
211
+ }
212
+ catch (e) {
213
+ console.error(e);
214
+ }
208
215
  }
209
216
  },
210
217
  shutdown: async () => Promise.all([posthog?.shutdown(), june?.closeAndFlush(), log?.flush()]),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["tracking/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"src/","sources":["tracking/index.ts"],"names":[],"mappings":"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"}
@@ -116,6 +116,7 @@ type TrackingEventProps = {
116
116
  owner_statement_opened: OwnerStatementOpenedProps;
117
117
  test_event: TestEventProps;
118
118
  test_error: TestErrorProps;
119
+ intercom_conversation_created: IntercomConversationCreated;
119
120
  };
120
121
  export type TrackingEvent = keyof TrackingEventProps;
121
122
  type OptionalUser<T> = T & ({
@@ -489,9 +490,11 @@ type TeamMemberRemovedProps = Partial<{
489
490
  type TestErrorProps = Partial<{
490
491
  userId: string;
491
492
  tenantId: string;
493
+ [key: string]: any;
492
494
  }>;
493
495
  type TestEventProps = Partial<{
494
496
  success: boolean;
497
+ [key: string]: any;
495
498
  }>;
496
499
  type UpdateRefreshAcceptedProps = Partial<{
497
500
  appName: string;
@@ -501,9 +504,19 @@ type OwnerStatementOpenedProps = Partial<{
501
504
  tenantId: string;
502
505
  userEmail: string;
503
506
  listingId: string;
507
+ periodId: string;
504
508
  startAt: string;
505
509
  }>;
506
510
  type ListingActivatedProps = any;
507
511
  type ListingDeactivatedProps = any;
508
512
  type ListingsReportedProps = any;
513
+ type IntercomConversationCreated = {
514
+ userId: string;
515
+ tenantId: string;
516
+ userEmail: string;
517
+ conversationId: string;
518
+ type: string;
519
+ deliveredAs: 'admin_initiated' | 'customer_initiated' | 'operator_initiated';
520
+ createdAt: string;
521
+ };
509
522
  export {};
@@ -72,20 +72,17 @@ export const useTracking = ({ dataset, env, name }, isDev) => {
72
72
  if (err)
73
73
  console.error(err);
74
74
  });
75
- const intercomUserId = (await intercom?.contacts.search({
76
- query: {
77
- field: 'external_id',
78
- operator: Intercom.SingleFilterSearchRequestOperator.Equals,
79
- value: userId,
80
- },
81
- }))?.data.at(0)?.id;
82
- if (intercomUserId)
75
+ try {
83
76
  await intercom?.events.create({
84
- user_id: intercomUserId,
77
+ user_id: userId,
85
78
  event_name: event,
86
79
  metadata: convertValuesToString(properties),
87
- created_at: timestamp ? timestamp.getTime() : Date.now(),
80
+ created_at: Math.floor((timestamp ? timestamp.getTime() : new Date().getTime()) / 1000),
88
81
  });
82
+ }
83
+ catch (e) {
84
+ console.error(e);
85
+ }
89
86
  }
90
87
  },
91
88
  identify: async ({ traits, userId, disableGeoip, timestamp, }) => {
@@ -102,63 +99,40 @@ export const useTracking = ({ dataset, env, name }, isDev) => {
102
99
  timestamp,
103
100
  }, (err) => (err ? console.error(err) : {}));
104
101
  // upsert intercom user
105
- const data = {
106
- external_id: userId,
107
- email: traits?.email,
108
- name: traits?.name ||
109
- (traits?.firstName
110
- ? `${traits.firstName} ${traits.lastName}`
111
- : traits?.lastName),
112
- avatar: traits?.avatar,
113
- signed_up_at: traits?.createdAt
114
- ? new Date(traits.createdAt).getTime() / 1000
115
- : undefined,
116
- last_seen_at: new Date().getTime() / 1000,
117
- custom_attributes: { userType: traits?.role },
118
- };
119
- const intercomUser = (await intercom?.contacts.search({
120
- query: {
121
- field: 'external_id',
122
- operator: Intercom.SingleFilterSearchRequestOperator.Equals,
123
- value: userId,
124
- },
125
- }))?.data.at(0);
126
- if (intercomUser?.id)
127
- await intercom?.contacts.update(intercomUser?.id, data);
128
- else
129
- await intercom?.contacts.create(data);
102
+ try {
103
+ const data = {
104
+ external_id: userId,
105
+ email: traits?.email,
106
+ name: traits?.name ||
107
+ (traits?.firstName
108
+ ? `${traits.firstName} ${traits.lastName}`
109
+ : traits?.lastName),
110
+ avatar: traits?.avatar,
111
+ signed_up_at: traits?.createdAt
112
+ ? new Date(traits.createdAt).getTime() / 1000
113
+ : undefined,
114
+ last_seen_at: new Date().getTime() / 1000,
115
+ custom_attributes: { userType: traits?.role },
116
+ };
117
+ const intercomUser = (await intercom?.contacts.search({
118
+ query: {
119
+ field: 'external_id',
120
+ operator: Intercom.SingleFilterSearchRequestOperator.Equals,
121
+ value: userId,
122
+ },
123
+ }))?.data.at(0);
124
+ if (intercomUser?.id)
125
+ await intercom?.contacts.update(intercomUser?.id, data);
126
+ else
127
+ await intercom?.contacts.create(data);
128
+ }
129
+ catch (e) {
130
+ console.error(e);
131
+ }
130
132
  },
131
133
  group: async ({ traits, groupId, userId, anonymousId, timestamp, }) => {
132
134
  if (isDev || isTest(userId || anonymousId || '', groupId))
133
135
  return;
134
- const cid = traits?.billingCustomerId || traits?.hyperlineCustomerId;
135
- const intercomCompany = await intercom?.companies.create({
136
- name: traits?.name,
137
- company_id: groupId,
138
- plan: traits?.plan,
139
- remote_created_at: traits?.createdAt
140
- ? new Date(traits.createdAt).getTime() / 1000
141
- : undefined,
142
- monthly_spend: traits?.mrr,
143
- custom_attributes: {
144
- teamId: groupId,
145
- team: traits?.name,
146
- type: traits?.type,
147
- status: traits?.status,
148
- pms: traits?.pms,
149
- accountingSoftware: traits?.accountingSoftware,
150
- activeListings: traits?.activeListings,
151
- paymentMethodType: traits?.paymentMethodType,
152
- partnerName: traits?.partner || traits?.accountingPartner,
153
- billingPortalUrl: cid
154
- ? `https://billing.vrplatform.app/portal/${cid}`
155
- : undefined,
156
- billingStatus: traits?.billingSubscriptionStatus,
157
- billingPartner: traits?.billingPartner ||
158
- traits?.partner ||
159
- traits?.accountingPartner,
160
- },
161
- });
162
136
  if (anonymousId) {
163
137
  posthog?.groupIdentify({
164
138
  groupKey: groupId,
@@ -177,17 +151,50 @@ export const useTracking = ({ dataset, env, name }, isDev) => {
177
151
  });
178
152
  june?.group({ userId, groupId, traits, timestamp }, (err) => err ? console.error(err) : {});
179
153
  // attach intercom user to intercom company
180
- const intercomUser = (await intercom?.contacts.search({
181
- query: {
182
- field: 'external_id',
183
- operator: Intercom.SingleFilterSearchRequestOperator.Equals,
184
- value: userId,
185
- },
186
- }))?.data.at(0);
187
- if (intercomUser?.id && intercomCompany?.id)
188
- intercom?.companies.attachContact(intercomUser?.id, {
189
- id: intercomCompany?.id,
154
+ try {
155
+ const cid = traits?.billingCustomerId || traits?.hyperlineCustomerId;
156
+ const intercomCompany = await intercom?.companies.create({
157
+ name: traits?.name,
158
+ company_id: groupId,
159
+ plan: traits?.plan,
160
+ remote_created_at: traits?.createdAt
161
+ ? new Date(traits.createdAt).getTime() / 1000
162
+ : undefined,
163
+ monthly_spend: traits?.mrr,
164
+ custom_attributes: {
165
+ teamId: groupId,
166
+ team: traits?.name,
167
+ type: traits?.type,
168
+ status: traits?.status,
169
+ pms: traits?.pms,
170
+ accountingSoftware: traits?.accountingSoftware,
171
+ activeListings: traits?.activeListings,
172
+ paymentMethodType: traits?.paymentMethodType,
173
+ partnerName: traits?.partner || traits?.accountingPartner,
174
+ billingPortalUrl: cid
175
+ ? `https://billing.vrplatform.app/portal/${cid}`
176
+ : undefined,
177
+ billingStatus: traits?.billingSubscriptionStatus,
178
+ billingPartner: traits?.billingPartner ||
179
+ traits?.partner ||
180
+ traits?.accountingPartner,
181
+ },
190
182
  });
183
+ const intercomUser = (await intercom?.contacts.search({
184
+ query: {
185
+ field: 'external_id',
186
+ operator: Intercom.SingleFilterSearchRequestOperator.Equals,
187
+ value: userId,
188
+ },
189
+ }))?.data.at(0);
190
+ if (intercomUser?.id && intercomCompany?.id)
191
+ intercom?.companies.attachContact(intercomUser?.id, {
192
+ id: intercomCompany?.id,
193
+ });
194
+ }
195
+ catch (e) {
196
+ console.error(e);
197
+ }
191
198
  }
192
199
  },
193
200
  shutdown: async () => Promise.all([posthog?.shutdown(), june?.closeAndFlush(), log?.flush()]),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["tracking/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"src/","sources":["tracking/index.ts"],"names":[],"mappings":"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"}
@@ -116,6 +116,7 @@ type TrackingEventProps = {
116
116
  owner_statement_opened: OwnerStatementOpenedProps;
117
117
  test_event: TestEventProps;
118
118
  test_error: TestErrorProps;
119
+ intercom_conversation_created: IntercomConversationCreated;
119
120
  };
120
121
  export type TrackingEvent = keyof TrackingEventProps;
121
122
  type OptionalUser<T> = T & ({
@@ -489,9 +490,11 @@ type TeamMemberRemovedProps = Partial<{
489
490
  type TestErrorProps = Partial<{
490
491
  userId: string;
491
492
  tenantId: string;
493
+ [key: string]: any;
492
494
  }>;
493
495
  type TestEventProps = Partial<{
494
496
  success: boolean;
497
+ [key: string]: any;
495
498
  }>;
496
499
  type UpdateRefreshAcceptedProps = Partial<{
497
500
  appName: string;
@@ -501,9 +504,19 @@ type OwnerStatementOpenedProps = Partial<{
501
504
  tenantId: string;
502
505
  userEmail: string;
503
506
  listingId: string;
507
+ periodId: string;
504
508
  startAt: string;
505
509
  }>;
506
510
  type ListingActivatedProps = any;
507
511
  type ListingDeactivatedProps = any;
508
512
  type ListingsReportedProps = any;
513
+ type IntercomConversationCreated = {
514
+ userId: string;
515
+ tenantId: string;
516
+ userEmail: string;
517
+ conversationId: string;
518
+ type: string;
519
+ deliveredAs: 'admin_initiated' | 'customer_initiated' | 'operator_initiated';
520
+ createdAt: string;
521
+ };
509
522
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vrplatform/log",
3
- "version": "2.0.1",
3
+ "version": "2.0.3",
4
4
  "main": "build/main/index.js",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -18,9 +18,9 @@
18
18
  ],
19
19
  "dependencies": {
20
20
  "@axiomhq/js": "1.0.0-rc.3",
21
- "@june-so/analytics-node": "^8.0.0",
21
+ "@june-so/analytics-node": "8.0.0",
22
22
  "intercom-client": "6.0.0-alpha1",
23
- "posthog-node": "^4.0.1",
23
+ "posthog-node": "4.0.1",
24
24
  "serialize-error": "11.0.3"
25
25
  },
26
26
  "devDependencies": {
@@ -223,22 +223,18 @@ export const useTracking = (
223
223
  }
224
224
  );
225
225
 
226
- const intercomUserId = (
227
- await intercom?.contacts.search({
228
- query: {
229
- field: 'external_id',
230
- operator: Intercom.SingleFilterSearchRequestOperator.Equals,
231
- value: userId,
232
- },
233
- })
234
- )?.data.at(0)?.id;
235
- if (intercomUserId)
226
+ try {
236
227
  await intercom?.events.create({
237
- user_id: intercomUserId,
228
+ user_id: userId,
238
229
  event_name: event,
239
230
  metadata: convertValuesToString(properties),
240
- created_at: timestamp ? timestamp.getTime() : Date.now(),
231
+ created_at: Math.floor(
232
+ (timestamp ? timestamp.getTime() : new Date().getTime()) / 1000
233
+ ),
241
234
  });
235
+ } catch (e) {
236
+ console.error(e);
237
+ }
242
238
  }
243
239
  },
244
240
  identify: async ({
@@ -265,34 +261,38 @@ export const useTracking = (
265
261
  );
266
262
 
267
263
  // upsert intercom user
268
- const data = {
269
- external_id: userId,
270
- email: traits?.email,
271
- name:
272
- traits?.name ||
273
- (traits?.firstName
274
- ? `${traits.firstName} ${traits.lastName}`
275
- : traits?.lastName),
276
- avatar: traits?.avatar,
277
- signed_up_at: traits?.createdAt
278
- ? new Date(traits.createdAt).getTime() / 1000
279
- : undefined,
280
- last_seen_at: new Date().getTime() / 1000,
281
- custom_attributes: { userType: traits?.role },
282
- };
264
+ try {
265
+ const data = {
266
+ external_id: userId,
267
+ email: traits?.email,
268
+ name:
269
+ traits?.name ||
270
+ (traits?.firstName
271
+ ? `${traits.firstName} ${traits.lastName}`
272
+ : traits?.lastName),
273
+ avatar: traits?.avatar,
274
+ signed_up_at: traits?.createdAt
275
+ ? new Date(traits.createdAt).getTime() / 1000
276
+ : undefined,
277
+ last_seen_at: new Date().getTime() / 1000,
278
+ custom_attributes: { userType: traits?.role },
279
+ };
283
280
 
284
- const intercomUser = (
285
- await intercom?.contacts.search({
286
- query: {
287
- field: 'external_id',
288
- operator: Intercom.SingleFilterSearchRequestOperator.Equals,
289
- value: userId,
290
- },
291
- })
292
- )?.data.at(0);
293
- if (intercomUser?.id)
294
- await intercom?.contacts.update(intercomUser?.id, data);
295
- else await intercom?.contacts.create(data);
281
+ const intercomUser = (
282
+ await intercom?.contacts.search({
283
+ query: {
284
+ field: 'external_id',
285
+ operator: Intercom.SingleFilterSearchRequestOperator.Equals,
286
+ value: userId,
287
+ },
288
+ })
289
+ )?.data.at(0);
290
+ if (intercomUser?.id)
291
+ await intercom?.contacts.update(intercomUser?.id, data);
292
+ else await intercom?.contacts.create(data);
293
+ } catch (e) {
294
+ console.error(e);
295
+ }
296
296
  },
297
297
  group: async ({
298
298
  traits,
@@ -303,36 +303,6 @@ export const useTracking = (
303
303
  }: GroupProps) => {
304
304
  if (isDev || isTest(userId || anonymousId || '', groupId)) return;
305
305
 
306
- const cid = traits?.billingCustomerId || traits?.hyperlineCustomerId;
307
- const intercomCompany = await intercom?.companies.create({
308
- name: traits?.name,
309
- company_id: groupId,
310
- plan: traits?.plan,
311
- remote_created_at: traits?.createdAt
312
- ? new Date(traits.createdAt).getTime() / 1000
313
- : undefined,
314
- monthly_spend: traits?.mrr,
315
- custom_attributes: {
316
- teamId: groupId,
317
- team: traits?.name,
318
- type: traits?.type,
319
- status: traits?.status,
320
- pms: traits?.pms,
321
- accountingSoftware: traits?.accountingSoftware,
322
- activeListings: traits?.activeListings,
323
- paymentMethodType: traits?.paymentMethodType,
324
- partnerName: traits?.partner || traits?.accountingPartner,
325
- billingPortalUrl: cid
326
- ? `https://billing.vrplatform.app/portal/${cid}`
327
- : undefined,
328
- billingStatus: traits?.billingSubscriptionStatus,
329
- billingPartner:
330
- traits?.billingPartner ||
331
- traits?.partner ||
332
- traits?.accountingPartner,
333
- },
334
- });
335
-
336
306
  if (anonymousId) {
337
307
  posthog?.groupIdentify({
338
308
  groupKey: groupId,
@@ -357,19 +327,52 @@ export const useTracking = (
357
327
  );
358
328
 
359
329
  // attach intercom user to intercom company
360
- const intercomUser = (
361
- await intercom?.contacts.search({
362
- query: {
363
- field: 'external_id',
364
- operator: Intercom.SingleFilterSearchRequestOperator.Equals,
365
- value: userId,
330
+ try {
331
+ const cid = traits?.billingCustomerId || traits?.hyperlineCustomerId;
332
+ const intercomCompany = await intercom?.companies.create({
333
+ name: traits?.name,
334
+ company_id: groupId,
335
+ plan: traits?.plan,
336
+ remote_created_at: traits?.createdAt
337
+ ? new Date(traits.createdAt).getTime() / 1000
338
+ : undefined,
339
+ monthly_spend: traits?.mrr,
340
+ custom_attributes: {
341
+ teamId: groupId,
342
+ team: traits?.name,
343
+ type: traits?.type,
344
+ status: traits?.status,
345
+ pms: traits?.pms,
346
+ accountingSoftware: traits?.accountingSoftware,
347
+ activeListings: traits?.activeListings,
348
+ paymentMethodType: traits?.paymentMethodType,
349
+ partnerName: traits?.partner || traits?.accountingPartner,
350
+ billingPortalUrl: cid
351
+ ? `https://billing.vrplatform.app/portal/${cid}`
352
+ : undefined,
353
+ billingStatus: traits?.billingSubscriptionStatus,
354
+ billingPartner:
355
+ traits?.billingPartner ||
356
+ traits?.partner ||
357
+ traits?.accountingPartner,
366
358
  },
367
- })
368
- )?.data.at(0);
369
- if (intercomUser?.id && intercomCompany?.id)
370
- intercom?.companies.attachContact(intercomUser?.id, {
371
- id: intercomCompany?.id,
372
359
  });
360
+ const intercomUser = (
361
+ await intercom?.contacts.search({
362
+ query: {
363
+ field: 'external_id',
364
+ operator: Intercom.SingleFilterSearchRequestOperator.Equals,
365
+ value: userId,
366
+ },
367
+ })
368
+ )?.data.at(0);
369
+ if (intercomUser?.id && intercomCompany?.id)
370
+ intercom?.companies.attachContact(intercomUser?.id, {
371
+ id: intercomCompany?.id,
372
+ });
373
+ } catch (e) {
374
+ console.error(e);
375
+ }
373
376
  }
374
377
  },
375
378
  shutdown: async () =>
@@ -119,6 +119,7 @@ type TrackingEventProps = {
119
119
  owner_statement_opened: OwnerStatementOpenedProps;
120
120
  test_event: TestEventProps;
121
121
  test_error: TestErrorProps;
122
+ intercom_conversation_created: IntercomConversationCreated;
122
123
  };
123
124
  export type TrackingEvent = keyof TrackingEventProps;
124
125
 
@@ -597,10 +598,12 @@ type TeamMemberRemovedProps = Partial<{
597
598
  type TestErrorProps = Partial<{
598
599
  userId: string;
599
600
  tenantId: string;
601
+ [key: string]: any;
600
602
  }>;
601
603
 
602
604
  type TestEventProps = Partial<{
603
605
  success: boolean;
606
+ [key: string]: any;
604
607
  }>;
605
608
 
606
609
  type UpdateRefreshAcceptedProps = Partial<{
@@ -612,6 +615,7 @@ type OwnerStatementOpenedProps = Partial<{
612
615
  tenantId: string;
613
616
  userEmail: string;
614
617
  listingId: string;
618
+ periodId: string;
615
619
  startAt: string;
616
620
  }>;
617
621
 
@@ -620,3 +624,13 @@ type ListingActivatedProps = any;
620
624
  type ListingDeactivatedProps = any;
621
625
 
622
626
  type ListingsReportedProps = any;
627
+
628
+ type IntercomConversationCreated = {
629
+ userId: string;
630
+ tenantId: string;
631
+ userEmail: string;
632
+ conversationId: string;
633
+ type: string;
634
+ deliveredAs: 'admin_initiated' | 'customer_initiated' | 'operator_initiated';
635
+ createdAt: string;
636
+ };