diff options
Diffstat (limited to 'src/activity/index.ts')
| -rw-r--r-- | src/activity/index.ts | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/activity/index.ts b/src/activity/index.ts index d3537b4..ea2ae09 100644 --- a/src/activity/index.ts +++ b/src/activity/index.ts @@ -18,6 +18,7 @@ import type { Storage } from '../storage/index.js'; import { ContentType } from '../types/index.js'; import { verifyHCaptcha } from '../integrations/hcaptcha.js'; import { sendNtfyNotification } from '../integrations/ntfy.js'; +import { sendEmailNotification } from '../integrations/email.js'; import { TokenSigner } from '../token/index.js'; const webhookRequestMetric = Metric.fromName('Webhook.Process').asResult(); @@ -310,6 +311,17 @@ export class WebhookActivityImpl implements IWebhookActivity { } } + // Send email notification if configured + if (route.email?.enabled) { + const emailResult = await sendEmailNotification(route.email, storedRequest); + if (emailResult.left().present()) { + const err = emailResult.left().get(); + tReq.trace.traceScope(LogLevel.WARN).trace(`email notification failed: ${err.message}`); + } else { + tReq.trace.trace('email notification sent'); + } + } + const baseName = `${storedRequest.timestamp}_${storedRequest.uuid}`; return tReq.move( |
