Allow enabling/disabling individual SMS template types from dashboard with sync to notification settings

This commit is contained in:
2026-08-21 11:04:26 +03:30
parent 091e519280
commit 3c6eb278b0
4 changed files with 104 additions and 7 deletions
+6 -1
View File
@@ -6,6 +6,7 @@ const { recordAndSend } = require('./notificationRecorder');
const { getSmsTemplate } = require('../../components/settings/settingService');
const { buildSmsParameters } = require('../../components/settings/smsTemplates');
const User = require('../../components/users/userModel');
const logger = require('../logger');
const resolveUserIdByPhone = async (phoneNumber) => {
if (!phoneNumber) return null;
@@ -32,7 +33,11 @@ const sendTemplateSms = async ({
slotValues = {}
}) => {
const resolvedUserId = userId || await resolveUserIdByPhone(receiver);
const { templateId, variables } = await getSmsTemplate(templateKey);
const { templateId, variables, enabled } = await getSmsTemplate(templateKey);
if (enabled === false) {
logger.info(`[SMS] Template ${templateKey} is disabled. Skipping SMS send to ${receiver}.`);
return { success: true, skipped: true, reason: 'template_disabled' };
}
return recordAndSend({
userId: resolvedUserId,
channel: 'sms',