@@ -2,7 +2,7 @@ import { PrismaClient, RSVP } from '@prisma/client';
22import { getUserByPhoneNumber } from './userService' ;
33import { isEventHostOrCoHost } from './guestService' ;
44import { getRsvpPreferencesForGroup } from './rsvpPreferencesService' ;
5- import { sendWhatsappMessage } from './twilioService' ;
5+ import { sendWhatsappMessage , sendWhatsappTemplateMessage } from './twilioService' ;
66
77const prisma = new PrismaClient ( ) ;
88
@@ -1148,7 +1148,10 @@ export const sendWhatsappToNoResponseGuests = async (
11481148 const sent : any [ ] = [ ] ;
11491149 const failed : any [ ] = [ ] ;
11501150
1151- // Send WhatsApp message to each guest
1151+ // Template SID for approved WhatsApp template
1152+ const templateSid = 'HX65b36e43b753b99847c6a3058bfe5d32' ;
1153+
1154+ // Send WhatsApp message to each guest using template
11521155 for ( const guest of noResponseGuests ) {
11531156 try {
11541157 // Skip guests without phone numbers (already filtered but double-check)
@@ -1161,8 +1164,19 @@ export const sendWhatsappToNoResponseGuests = async (
11611164 continue ;
11621165 }
11631166
1164- const message = `Hello ${ guest . name } , you are invited to ${ eventName } . Please RSVP here: ${ linkResult . inviteLink } ` ;
1165- const sendResult = await sendWhatsappMessage ( guest . phone_no , message ) ;
1167+ // Prepare template variables
1168+ // Template format: "Hello {{1}}, you are invited to {{2}}. Please RSVP here: {{3}}. Thank you!"
1169+ const contentVariables = {
1170+ '1' : guest . name || 'Guest' ,
1171+ '2' : eventName ,
1172+ '3' : linkResult . inviteLink ,
1173+ } ;
1174+
1175+ const sendResult = await sendWhatsappTemplateMessage (
1176+ guest . phone_no ,
1177+ templateSid ,
1178+ contentVariables
1179+ ) ;
11661180
11671181 if ( sendResult . success ) {
11681182 sent . push ( { name : guest . name , phone_no : guest . phone_no , id : guest . id } ) ;
0 commit comments