@segment/action-destinations 3.158.0 → 3.160.0

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.
Files changed (37) hide show
  1. package/dist/destinations/engage-messaging-twilio/index.js +1 -1
  2. package/dist/destinations/engage-messaging-twilio/index.js.map +1 -1
  3. package/dist/destinations/engage-messaging-twilio/sendSms/generated-types.d.ts +2 -0
  4. package/dist/destinations/engage-messaging-twilio/sendSms/index.js +19 -15
  5. package/dist/destinations/engage-messaging-twilio/sendSms/index.js.map +1 -1
  6. package/dist/destinations/engage-messaging-twilio/sendSms/sms-sender.d.ts +4 -21
  7. package/dist/destinations/engage-messaging-twilio/sendSms/sms-sender.js +59 -56
  8. package/dist/destinations/engage-messaging-twilio/sendSms/sms-sender.js.map +1 -1
  9. package/dist/destinations/engage-messaging-twilio/sendWhatsApp/index.js +4 -3
  10. package/dist/destinations/engage-messaging-twilio/sendWhatsApp/index.js.map +1 -1
  11. package/dist/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.d.ts +3 -17
  12. package/dist/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.js +33 -37
  13. package/dist/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.js.map +1 -1
  14. package/dist/destinations/engage-messaging-twilio/utils/message-sender.d.ts +20 -14
  15. package/dist/destinations/engage-messaging-twilio/utils/message-sender.js +157 -64
  16. package/dist/destinations/engage-messaging-twilio/utils/message-sender.js.map +1 -1
  17. package/dist/destinations/index.js +1 -0
  18. package/dist/destinations/index.js.map +1 -1
  19. package/dist/destinations/vwo/generated-types.d.ts +1 -0
  20. package/dist/destinations/vwo/identifyUser/generated-types.d.ts +3 -3
  21. package/dist/destinations/vwo/identifyUser/index.js +16 -6
  22. package/dist/destinations/vwo/identifyUser/index.js.map +1 -1
  23. package/dist/destinations/vwo/index.js +6 -0
  24. package/dist/destinations/vwo/index.js.map +1 -1
  25. package/dist/destinations/vwo/pageVisit/generated-types.d.ts +4 -4
  26. package/dist/destinations/vwo/pageVisit/index.js +5 -5
  27. package/dist/destinations/vwo/pageVisit/index.js.map +1 -1
  28. package/dist/destinations/vwo/trackEvent/generated-types.d.ts +3 -3
  29. package/dist/destinations/vwo/trackEvent/index.js +4 -4
  30. package/dist/destinations/vwo/trackEvent/index.js.map +1 -1
  31. package/dist/destinations/vwo/types.d.ts +11 -4
  32. package/dist/destinations/vwo/utility.d.ts +2 -1
  33. package/dist/destinations/vwo/utility.js +77 -11
  34. package/dist/destinations/vwo/utility.js.map +1 -1
  35. package/dist/lib/engage-test-data/create-messaging-test-event.d.ts +1 -0
  36. package/dist/lib/engage-test-data/create-messaging-test-event.js.map +1 -1
  37. package/package.json +2 -2
@@ -79,7 +79,7 @@ const destination = {
79
79
  name: 'Engage Messaging Twilio',
80
80
  slug: 'actions-personas-messaging-twilio',
81
81
  mode: 'cloud',
82
- description: 'This is an Engage specific action to send an SMS',
82
+ description: 'This is an Engage specific action to send an SMS and Whatsapp messages using Twilio API',
83
83
  authentication: {
84
84
  scheme: 'custom',
85
85
  fields: {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/engage-messaging-twilio/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destinations/engage-messaging-twilio/index.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export interface Payload {
3
3
  toNumber?: string;
4
4
  from: string;
5
5
  body?: string;
6
+ media?: string[];
6
7
  contentSid?: string;
7
8
  customArgs?: {
8
9
  [k: string]: unknown;
@@ -13,6 +14,7 @@ export interface Payload {
13
14
  externalIds?: {
14
15
  id?: string;
15
16
  type?: string;
17
+ channelType?: string;
16
18
  subscriptionStatus?: string;
17
19
  }[];
18
20
  traits?: {
@@ -29,6 +29,13 @@ const action = {
29
29
  type: 'text',
30
30
  required: false
31
31
  },
32
+ media: {
33
+ label: 'Media Urls',
34
+ description: 'Media to attach to message',
35
+ type: 'string',
36
+ required: false,
37
+ multiple: true
38
+ },
32
39
  contentSid: {
33
40
  label: 'SMS content template SID',
34
41
  description: 'Content template SID for Twilio Content API',
@@ -77,6 +84,11 @@ const action = {
77
84
  description: 'The external ID contact type.',
78
85
  type: 'string'
79
86
  },
87
+ channelType: {
88
+ label: 'type',
89
+ description: 'The external ID contact channel type (SMS, WHATSAPP, etc).',
90
+ type: 'string'
91
+ },
80
92
  subscriptionStatus: {
81
93
  label: 'ID',
82
94
  description: 'The subscription status for the identity.',
@@ -93,6 +105,9 @@ const action = {
93
105
  type: {
94
106
  '@path': '$.type'
95
107
  },
108
+ channelType: {
109
+ '@path': '$.channelType'
110
+ },
96
111
  subscriptionStatus: {
97
112
  '@path': '$.isSubscribed'
98
113
  }
@@ -124,26 +139,15 @@ const action = {
124
139
  default: { '@path': '$.messageId' }
125
140
  }
126
141
  },
127
- perform: async (request, { settings, payload, statsContext, logger }) => {
142
+ perform: async (request, data) => {
143
+ const { settings, payload, statsContext, logger } = data;
128
144
  const statsClient = statsContext?.statsClient;
129
145
  const tags = statsContext?.tags || [];
130
146
  if (!settings.region) {
131
147
  settings.region = 'us-west-1';
132
148
  }
133
- tags.push(`space_id:${settings.spaceId}`, `projectid:${settings.sourceId}`, `region:${settings.region}`);
134
- const logDetails = {
135
- userId: payload.userId,
136
- subscriptionStatus: payload.externalIds?.map(eid => ({ type: eid.type, subscriptionStatus: eid.subscriptionStatus })),
137
- shouldSend: payload.send,
138
- contentSid: payload.contentSid,
139
- sourceId: settings.sourceId,
140
- spaceId: settings.spaceId,
141
- twilioApiKeySID: settings.twilioApiKeySID,
142
- region: settings.region,
143
- messageId: payload.messageId
144
- };
145
- logger?.info("TE Messaging: SMS Destination Action Performing...", JSON.stringify(logDetails));
146
- return new sms_sender_1.SmsMessageSender(request, payload, settings, statsClient, tags, logger, logDetails).send();
149
+ tags.push(`space_id:${settings.spaceId}`, `projectid:${settings.sourceId}`, `region:${settings.region}`, `channel:sms`);
150
+ return new sms_sender_1.SmsMessageSender(request, payload, settings, statsClient, tags, logger, data).send();
147
151
  }
148
152
  };
149
153
  exports.default = action;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendSms/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendSms/index.ts"],"names":[],"mappings":"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"}
@@ -1,26 +1,9 @@
1
- import type { Settings } from '../generated-types';
2
1
  import type { Payload } from './generated-types';
3
- import { Logger, StatsClient, StatsContext } from '@segment/actions-core/src/destination-kit';
4
- import { MessageSender, RequestFn } from '../utils/message-sender';
2
+ import { MessageSender } from '../utils/message-sender';
5
3
  export declare class SmsMessageSender extends MessageSender<Payload> {
6
- readonly request: RequestFn;
7
- readonly payload: Payload;
8
- readonly settings: Settings;
9
- readonly statsClient: StatsClient | undefined;
10
- readonly tags: StatsContext['tags'];
11
- readonly logger: Logger | undefined;
12
- readonly logDetails: {
13
- [key: string]: any;
14
- };
15
- constructor(request: RequestFn, payload: Payload, settings: Settings, statsClient: StatsClient | undefined, tags: StatsContext['tags'], logger: Logger | undefined, logDetails?: {
16
- [key: string]: any;
17
- });
18
- getExternalId: () => {
19
- id?: string | undefined;
20
- type?: string | undefined;
21
- subscriptionStatus?: string | undefined;
22
- } | undefined;
23
- getBody: (phone: string) => Promise<URLSearchParams>;
4
+ getBody(phone: string): Promise<URLSearchParams>;
5
+ getChannelType(): string;
6
+ isValidExternalId(externalId: NonNullable<Payload['externalIds']>[number]): boolean;
24
7
  private getProfileTraits;
25
8
  private getContentTemplate;
26
9
  private getUnparsedContent;
@@ -6,58 +6,11 @@ const actions_core_1 = require("@segment/actions-core");
6
6
  const message_sender_1 = require("../utils/message-sender");
7
7
  const Liquid = new liquidjs_1.Liquid();
8
8
  class SmsMessageSender extends message_sender_1.MessageSender {
9
- constructor(request, payload, settings, statsClient, tags, logger, logDetails = {}) {
10
- super(request, payload, settings, statsClient, tags, logger, logDetails);
11
- this.request = request;
12
- this.payload = payload;
13
- this.settings = settings;
14
- this.statsClient = statsClient;
15
- this.tags = tags;
16
- this.logger = logger;
17
- this.logDetails = logDetails;
18
- this.getExternalId = () => this.payload.externalIds?.find(({ type }) => type === 'phone');
19
- this.getBody = async (phone) => {
20
- if (!this.payload.body && !this.payload.contentSid) {
21
- this.logger?.error(`TE Messaging: Unable to process SMS, no body provided and no content sid provided - ${this.settings.spaceId}`);
22
- throw new actions_core_1.PayloadValidationError('Unable to process sms, no body provided and no content sid provided');
23
- }
24
- let traits;
25
- if (this.payload.traitEnrichment) {
26
- traits = this.payload?.traits ? this.payload?.traits : {};
27
- }
28
- else {
29
- traits = await this.getProfileTraits();
30
- }
31
- const profile = {
32
- user_id: this.payload.userId ?? undefined,
33
- phone,
34
- traits
35
- };
36
- let parsedBody;
37
- let parsedMedia = [];
38
- if (this.payload.contentSid) {
39
- const data = await this.getContentTemplate();
40
- const parsed = await this.parseContent(this.getUnparsedContent(data), profile);
41
- parsedBody = parsed.body;
42
- parsedMedia = parsed.media;
43
- }
44
- else {
45
- parsedBody = (await this.parseContent({ body: this.payload.body ?? '' }, profile)).body;
46
- }
47
- const body = new URLSearchParams({
48
- Body: parsedBody,
49
- From: this.payload.from,
50
- To: phone,
51
- ShortenUrls: 'true'
52
- });
53
- parsedMedia?.forEach((media) => {
54
- body.append('MediaUrl', media);
55
- });
56
- return body;
57
- };
9
+ constructor() {
10
+ super(...arguments);
58
11
  this.getProfileTraits = async () => {
59
12
  if (!this.payload.userId) {
60
- this.logger?.error(`TE Messaging: Unable to process SMS, no userId provided and no traits provided - ${this.settings.spaceId}`);
13
+ this.logError(`Unable to process SMS, no userId provided and no traits provided - ${this.settings.spaceId}`);
61
14
  throw new actions_core_1.IntegrationError('Unable to process sms, no userId provided and no traits provided', 'Invalid parameters', 400);
62
15
  }
63
16
  try {
@@ -77,14 +30,14 @@ class SmsMessageSender extends message_sender_1.MessageSender {
77
30
  }
78
31
  catch (error) {
79
32
  this.statsClient?.incr('actions-personas-messaging-twilio.profile_error', 1, this.tags);
80
- this.logger?.error(`TE Messaging: SMS profile traits request failure - ${this.settings.spaceId} - [${error}]`);
33
+ this.logError(`SMS profile traits request failure - ${this.settings.spaceId} - [${error}]`);
81
34
  throw new actions_core_1.IntegrationError('Unable to get profile traits for SMS message', 'SMS trait fetch failure', 500);
82
35
  }
83
36
  };
84
37
  this.getContentTemplate = async () => {
85
38
  const twilioToken = Buffer.from(`${this.settings.twilioApiKeySID}:${this.settings.twilioApiKeySecret}`).toString('base64');
86
39
  try {
87
- this.logger?.info("TE Messaging: Get content template from Twilio by ContentSID", JSON.stringify(this.logDetails));
40
+ this.logInfo("Get content template from Twilio by ContentSID");
88
41
  const response = await this.request(`https://content.twilio.com/v1/Content/${this.payload.contentSid}`, {
89
42
  method: 'GET',
90
43
  headers: {
@@ -97,13 +50,13 @@ class SmsMessageSender extends message_sender_1.MessageSender {
97
50
  catch (error) {
98
51
  this.tags.push('reason:get_content_template');
99
52
  this.statsClient?.incr('actions-personas-messaging-twilio.error', 1, this.tags);
100
- this.logger?.error(`TE Messaging: SMS failed request to fetch content template from Twilio Content API - ${this.settings.spaceId}, ${JSON.stringify(error)})}`, JSON.stringify(this.logDetails));
53
+ this.logError(`SMS failed request to fetch content template from Twilio Content API - ${this.settings.spaceId}, ${JSON.stringify(error)})}`);
101
54
  throw new actions_core_1.IntegrationError('Unable to fetch content template', 'Twilio Content API request failure', 500);
102
55
  }
103
56
  };
104
57
  this.getUnparsedContent = (data) => {
105
58
  if (!data.types) {
106
- this.logger?.error(`TE Messaging: SMS template from Twilio Content API does not contain a template type - ${this.settings.spaceId} - [${JSON.stringify(data)}]`);
59
+ this.logError(`SMS template from Twilio Content API does not contain a template type - ${this.settings.spaceId} - [${JSON.stringify(data)}]`);
107
60
  throw new actions_core_1.IntegrationError('Unexpected response from Twilio Content API', `SMS template does not contain a template type`, 500);
108
61
  }
109
62
  const type = Object.keys(data.types)[0];
@@ -111,11 +64,61 @@ class SmsMessageSender extends message_sender_1.MessageSender {
111
64
  return { body: data.types[type].body, media: data.types[type].media };
112
65
  }
113
66
  else {
114
- this.logger?.error(`TE Messaging: SMS unsupported content template type '${type}' - ${this.settings.spaceId}`);
67
+ this.logError(`SMS unsupported content template type '${type}' - ${this.settings.spaceId}`);
115
68
  throw new actions_core_1.IntegrationError('Unsupported content type', `Sending templates with '${type}' content type is not supported by SMS`, 400);
116
69
  }
117
70
  };
118
71
  }
72
+ async getBody(phone) {
73
+ if (!this.payload.body && !this.payload.contentSid) {
74
+ this.logError(`Unable to process SMS, no body provided and no content sid provided - ${this.settings.spaceId}`);
75
+ throw new actions_core_1.PayloadValidationError('Unable to process sms, no body provided and no content sid provided');
76
+ }
77
+ let traits;
78
+ if (this.payload.traitEnrichment) {
79
+ traits = this.payload?.traits ? this.payload?.traits : {};
80
+ }
81
+ else {
82
+ traits = await this.getProfileTraits();
83
+ }
84
+ const profile = {
85
+ user_id: this.payload.userId ?? undefined,
86
+ phone,
87
+ traits
88
+ };
89
+ let parsedBody;
90
+ let parsedMedia = [];
91
+ if (this.payload.contentSid) {
92
+ const data = await this.getContentTemplate();
93
+ const parsed = await this.parseContent(this.getUnparsedContent(data), profile);
94
+ parsedBody = parsed.body;
95
+ parsedMedia = parsed.media;
96
+ }
97
+ else {
98
+ const parsed = await this.parseContent({ body: this.payload.body ?? '', media: this.payload.media ?? [] }, profile);
99
+ parsedBody = parsed.body;
100
+ parsedMedia = parsed.media;
101
+ }
102
+ const body = new URLSearchParams({
103
+ Body: parsedBody,
104
+ From: this.payload.from,
105
+ To: phone,
106
+ ShortenUrls: 'true'
107
+ });
108
+ parsedMedia?.forEach((media) => {
109
+ body.append('MediaUrl', media);
110
+ });
111
+ return body;
112
+ }
113
+ getChannelType() {
114
+ return 'sms';
115
+ }
116
+ isValidExternalId(externalId) {
117
+ if (externalId.type !== 'phone') {
118
+ return false;
119
+ }
120
+ return !externalId.channelType || externalId.channelType.toLowerCase() === this.getChannelType();
121
+ }
119
122
  async parseContent(content, profile) {
120
123
  try {
121
124
  return {
@@ -124,7 +127,7 @@ class SmsMessageSender extends message_sender_1.MessageSender {
124
127
  };
125
128
  }
126
129
  catch (error) {
127
- this.logger?.error(`TE Messaging: SMS templating parse failure - ${this.settings.spaceId} - [${error}]`);
130
+ this.logError(`SMS templating parse failure - ${this.settings.spaceId} - [${error}]`);
128
131
  throw new actions_core_1.IntegrationError(`Unable to parse templating in SMS`, `SMS templating parse failure`, 400);
129
132
  }
130
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sms-sender.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendSms/sms-sender.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sms-sender.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendSms/sms-sender.ts"],"names":[],"mappings":"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"}
@@ -119,14 +119,15 @@ const action = {
119
119
  }
120
120
  }
121
121
  },
122
- perform: async (request, { settings, payload, statsContext, logger }) => {
122
+ perform: async (request, data) => {
123
+ const { settings, payload, statsContext, logger } = data;
123
124
  const statsClient = statsContext?.statsClient;
124
125
  const tags = statsContext?.tags || [];
125
126
  if (!settings.region) {
126
127
  settings.region = 'us-west-1';
127
128
  }
128
- tags.push(`space_id:${settings.spaceId}`, `projectid:${settings.sourceId}`, `region:${settings.region}`);
129
- return new whatsapp_sender_1.WhatsAppMessageSender(request, payload, settings, statsClient, tags, logger).send();
129
+ tags.push(`space_id:${settings.spaceId}`, `projectid:${settings.sourceId}`, `region:${settings.region}`, `channel:whatsapp`);
130
+ return new whatsapp_sender_1.WhatsAppMessageSender(request, payload, settings, statsClient, tags, logger, data).send();
130
131
  }
131
132
  };
132
133
  exports.default = action;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendWhatsApp/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendWhatsApp/index.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,7 @@
1
- import type { Settings } from '../generated-types';
2
1
  import type { Payload } from './generated-types';
3
- import { RequestFn, MessageSender } from '../utils/message-sender';
4
- import { Logger, StatsClient, StatsContext } from '@segment/actions-core/src/destination-kit';
2
+ import { MessageSender } from '../utils/message-sender';
5
3
  export declare class WhatsAppMessageSender extends MessageSender<Payload> {
6
- readonly request: RequestFn;
7
- readonly payload: Payload;
8
- readonly settings: Settings;
9
- readonly statsClient: StatsClient | undefined;
10
- readonly tags: StatsContext['tags'];
11
- readonly logger: Logger | undefined;
12
- constructor(request: RequestFn, payload: Payload, settings: Settings, statsClient: StatsClient | undefined, tags: StatsContext['tags'], logger: Logger | undefined);
13
- getExternalId: () => {
14
- id?: string | undefined;
15
- type?: string | undefined;
16
- channelType?: string | undefined;
17
- subscriptionStatus?: string | undefined;
18
- } | undefined;
19
- getBody: (phone: string) => Promise<URLSearchParams>;
4
+ getChannelType(): string;
5
+ getBody(phone: string): Promise<URLSearchParams>;
20
6
  private getVariables;
21
7
  }
@@ -8,42 +8,8 @@ const google_libphonenumber_1 = require("google-libphonenumber");
8
8
  const phoneUtil = google_libphonenumber_1.PhoneNumberUtil.getInstance();
9
9
  const Liquid = new liquidjs_1.Liquid();
10
10
  class WhatsAppMessageSender extends message_sender_1.MessageSender {
11
- constructor(request, payload, settings, statsClient, tags, logger) {
12
- super(request, payload, settings, statsClient, tags, logger);
13
- this.request = request;
14
- this.payload = payload;
15
- this.settings = settings;
16
- this.statsClient = statsClient;
17
- this.tags = tags;
18
- this.logger = logger;
19
- this.getExternalId = () => this.payload.externalIds?.find(({ type, channelType }) => channelType?.toLowerCase() === 'whatsapp' && type === 'phone');
20
- this.getBody = async (phone) => {
21
- let parsedPhone;
22
- try {
23
- parsedPhone = phoneUtil.parse(phone, 'US');
24
- parsedPhone = phoneUtil.format(parsedPhone, google_libphonenumber_1.PhoneNumberFormat.E164);
25
- parsedPhone = `whatsapp:${parsedPhone}`;
26
- }
27
- catch (error) {
28
- this.tags.push('type:invalid_phone_e164');
29
- this.logger?.error(`TE Messaging: WhatsApp invalid phone number - ${this.settings.spaceId} - [${error}]`);
30
- this.statsClient?.incr('actions-personas-messaging-twilio.error', 1, this.tags);
31
- throw new actions_core_1.IntegrationError('The string supplied did not seem to be a phone number. Phone number must be able to be formatted to e164 for whatsapp.', `INVALID_PHONE`, 400);
32
- }
33
- if (!this.payload.contentSid) {
34
- this.logger?.error(`TE Messaging: A valid WhatsApp Content SID was not provided - ${this.settings.spaceId}`);
35
- throw new actions_core_1.IntegrationError('A valid whatsApp Content SID was not provided.', `INVALID_CONTENT_SID`, 400);
36
- }
37
- const params = {
38
- ContentSid: this.payload.contentSid,
39
- From: this.payload.from,
40
- To: parsedPhone
41
- };
42
- const contentVariables = await this.getVariables();
43
- if (contentVariables)
44
- params['ContentVariables'] = contentVariables;
45
- return new URLSearchParams(params);
46
- };
11
+ constructor() {
12
+ super(...arguments);
47
13
  this.getVariables = async () => {
48
14
  try {
49
15
  if (!this.payload.traitEnrichment && this.payload.contentVariables)
@@ -65,11 +31,41 @@ class WhatsAppMessageSender extends message_sender_1.MessageSender {
65
31
  return JSON.stringify(mapping);
66
32
  }
67
33
  catch (error) {
68
- this.logger?.error(`TE Messaging: Failed to parse WhatsApp template with content variables - ${this.settings.spaceId} - [${error}]`);
34
+ this.logError(`Failed to parse WhatsApp template with content variables - ${this.settings.spaceId} - [${error}]`);
69
35
  throw new actions_core_1.IntegrationError(`Unable to parse templating in content variables`, `Content variables templating parse failure`, 400);
70
36
  }
71
37
  };
72
38
  }
39
+ getChannelType() {
40
+ return 'whatsapp';
41
+ }
42
+ async getBody(phone) {
43
+ let parsedPhone;
44
+ try {
45
+ parsedPhone = phoneUtil.parse(phone, 'US');
46
+ parsedPhone = phoneUtil.format(parsedPhone, google_libphonenumber_1.PhoneNumberFormat.E164);
47
+ parsedPhone = `whatsapp:${parsedPhone}`;
48
+ }
49
+ catch (error) {
50
+ this.tags.push('type:invalid_phone_e164');
51
+ this.logError(`WhatsApp invalid phone number - ${this.settings.spaceId} - [${error}]`);
52
+ this.statsClient?.incr('actions-personas-messaging-twilio.error', 1, this.tags);
53
+ throw new actions_core_1.IntegrationError('The string supplied did not seem to be a phone number. Phone number must be able to be formatted to e164 for whatsapp.', `INVALID_PHONE`, 400);
54
+ }
55
+ if (!this.payload.contentSid) {
56
+ this.logError(`A valid WhatsApp Content SID was not provided - ${this.settings.spaceId}`);
57
+ throw new actions_core_1.IntegrationError('A valid whatsApp Content SID was not provided.', `INVALID_CONTENT_SID`, 400);
58
+ }
59
+ const params = {
60
+ ContentSid: this.payload.contentSid,
61
+ From: this.payload.from,
62
+ To: parsedPhone
63
+ };
64
+ const contentVariables = await this.getVariables();
65
+ if (contentVariables)
66
+ params['ContentVariables'] = contentVariables;
67
+ return new URLSearchParams(params);
68
+ }
73
69
  }
74
70
  exports.WhatsAppMessageSender = WhatsAppMessageSender;
75
71
  //# sourceMappingURL=whatsapp-sender.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp-sender.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"whatsapp-sender.js","sourceRoot":"","sources":["../../../../src/destinations/engage-messaging-twilio/sendWhatsApp/whatsapp-sender.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,35 @@
1
1
  import type { RequestOptions } from '@segment/actions-core';
2
2
  import type { Settings } from '../generated-types';
3
- import type { Payload } from '../sendSms/generated-types';
3
+ import type { Payload as SmsPayload } from '../sendSms/generated-types';
4
+ import type { Payload as WhatsappPayload } from '../sendWhatsApp/generated-types';
4
5
  import { Logger, StatsClient, StatsContext } from '@segment/actions-core/src/destination-kit';
6
+ import { ExecuteInput } from '@segment/actions-core';
5
7
  export declare type RequestFn = (url: string, options?: RequestOptions) => Promise<Response>;
6
- declare type MinimalPayload = Pick<Payload, 'from' | 'toNumber' | 'customArgs' | 'externalIds' | 'traits' | 'send' | 'eventOccurredTS'>;
7
- export declare abstract class MessageSender<SmsPayload extends MinimalPayload> {
8
+ export declare abstract class MessageSender<MessagePayload extends SmsPayload | WhatsappPayload> {
8
9
  readonly request: RequestFn;
9
- readonly payload: SmsPayload;
10
+ readonly payload: MessagePayload;
10
11
  readonly settings: Settings;
11
12
  readonly statsClient: StatsClient | undefined;
12
13
  readonly tags: StatsContext['tags'];
13
14
  readonly logger: Logger | undefined;
14
- readonly logDetails: {
15
- [key: string]: any;
16
- };
15
+ readonly executeInput: ExecuteInput<Settings, MessagePayload>;
16
+ readonly logDetails: Record<string, unknown>;
17
17
  private readonly EXTERNAL_ID_KEY;
18
18
  private readonly DEFAULT_HOSTNAME;
19
19
  private readonly DEFAULT_CONNECTION_OVERRIDES;
20
- constructor(request: RequestFn, payload: SmsPayload, settings: Settings, statsClient: StatsClient | undefined, tags: StatsContext['tags'], logger: Logger | undefined, logDetails?: {
21
- [key: string]: any;
22
- });
23
- abstract getBody: (phone: string) => Promise<URLSearchParams>;
24
- abstract getExternalId: () => NonNullable<MinimalPayload['externalIds']>[number] | undefined;
25
- send: () => Promise<Response | undefined>;
20
+ constructor(request: RequestFn, payload: MessagePayload, settings: Settings, statsClient: StatsClient | undefined, tags: StatsContext['tags'], logger: Logger | undefined, executeInput: ExecuteInput<Settings, MessagePayload>, logDetails?: Record<string, unknown>);
21
+ abstract getBody(phone: string): Promise<URLSearchParams>;
22
+ abstract getChannelType(): string;
23
+ isValidExternalId(externalId: NonNullable<MessagePayload['externalIds']>[number]): boolean;
24
+ redactPii(pii: string | undefined): string | undefined;
25
+ logInfo(...msgs: string[]): void;
26
+ logError(error?: any, ...msgs: string[]): void;
27
+ private static isPromise;
28
+ logWrap<R = void>(messages: string[], fn: () => R): R;
29
+ initLogDetails(): void;
30
+ send(): Promise<Response | undefined>;
31
+ static nonSendableStatuses: string[];
32
+ static sendableStatuses: string[];
26
33
  private getSendabilityPayload;
27
34
  private getWebhookUrlWithParams;
28
35
  }
29
- export {};