pulsewatch-server 1.0.85 → 1.0.87

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.
@@ -7,7 +7,6 @@ export interface WhatsAppConfig {
7
7
  metaAccessToken?: string;
8
8
  metaPhoneNumberId?: string;
9
9
  metaBusinessAccountId?: string;
10
- metaTemplateName?: string;
11
10
  }
12
11
  export interface WhatsAppRecipient {
13
12
  phoneNumber: string;
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp.d.ts","sourceRoot":"","sources":["../../../src/notifications/channels/whatsapp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAG5E,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,QAAQ,GAAG,MAAM,CAAC;IAEhC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,eAAgB,YAAW,mBAAmB;IACzD,IAAI,SAAc;IAEZ,IAAI,CACR,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAgBhD;;OAEG;YACW,aAAa;IAiD3B;;OAEG;YACW,WAAW;CAsG1B"}
1
+ {"version":3,"file":"whatsapp.d.ts","sourceRoot":"","sources":["../../../src/notifications/channels/whatsapp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAG5E,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,QAAQ,GAAG,MAAM,CAAC;IAEhC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,qBAAa,eAAgB,YAAW,mBAAmB;IACzD,IAAI,SAAc;IAEZ,IAAI,CACR,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAgBhD;;OAEG;YACW,aAAa;IAiD3B;;OAEG;YACW,WAAW;CAyE1B"}
@@ -85,52 +85,22 @@ export class WhatsAppChannel {
85
85
  }
86
86
  const message = getWhatsAppTemplate(payload);
87
87
  const url = `https://graph.facebook.com/v18.0/${phoneNumberId}/messages`;
88
- const templateName = config.metaTemplateName || config.meta_template_name;
89
- let body;
90
- if (templateName) {
91
- // Use Template Message (Business-Initiated)
92
- body = {
93
- messaging_product: "whatsapp",
94
- recipient_type: "individual",
95
- to: recipient.phoneNumber.replace(/[^0-9]/g, ""),
96
- type: "template",
97
- template: {
98
- name: templateName,
99
- language: { code: "en_US" },
100
- components: [
101
- {
102
- type: "body",
103
- parameters: [
104
- {
105
- type: "text",
106
- text: message, // Pass the entire message as the first variable {{1}}
107
- },
108
- ],
109
- },
110
- ],
111
- },
112
- };
113
- }
114
- else {
115
- // Use Free-Form Text Message (User-Initiated / 24h Window)
116
- body = {
88
+ const response = await fetch(url, {
89
+ method: "POST",
90
+ headers: {
91
+ Authorization: `Bearer ${accessToken}`,
92
+ "Content-Type": "application/json",
93
+ },
94
+ body: JSON.stringify({
117
95
  messaging_product: "whatsapp",
118
96
  recipient_type: "individual",
119
- to: recipient.phoneNumber.replace(/[^0-9]/g, ""),
97
+ to: recipient.phoneNumber.replace(/[^0-9]/g, ""), // Remove non-numeric characters
120
98
  type: "text",
121
99
  text: {
122
100
  preview_url: true,
123
101
  body: message,
124
102
  },
125
- };
126
- }
127
- const response = await fetch(url, {
128
- method: "POST",
129
- headers: {
130
- Authorization: `Bearer ${accessToken}`,
131
- "Content-Type": "application/json",
132
- },
133
- body: JSON.stringify(body),
103
+ }),
134
104
  });
135
105
  if (!response.ok) {
136
106
  const errorData = (await response.json());
@@ -140,6 +110,7 @@ export class WhatsAppChannel {
140
110
  };
141
111
  }
142
112
  const responseBody = await response.json();
113
+ console.log(`[WhatsApp] Meta API Response: ${JSON.stringify(responseBody)}`);
143
114
  return { success: true };
144
115
  }
145
116
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../../src/notifications/channels/whatsapp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"whatsapp.js","sourceRoot":"","sources":["../../../src/notifications/channels/whatsapp.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pulsewatch-server",
3
- "version": "1.0.85",
3
+ "version": "1.0.87",
4
4
  "description": "Complete uptime monitoring server - Drop-in Express backend with monitoring engine, database, REST API, and real-time updates. No authentication required.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",