Notifications troubleshooting

Diagnose: Telegram silent, email spam, push expired, Slack misconfig, owner fan-out, missing entirely, digest skipped, in-app inbox empty.

Written By Salvatore Sinigaglia

Last updated About 1 hour ago

Diagnose: Telegram silent, email spam, push expired, Slack misconfig, owner fan-out, missing entirely, digest skipped, in-app inbox empty.

Notifications troubleshooting

Common notification issues with diagnosis + actionable fix. Always check preferences first (/settings β†’ Notifications) β€” most missing notifications trace back to a preference being off (user-level, team-level, or role default).

Who is this for

Anyone wondering why an expected notification didn't arrive or why an unwanted one keeps coming.

Issue 1: Telegram notifications silent

Symptoms

Connected Telegram, expecting alerts, but bot is silent.

Causes + fixes

  1. Bot blocked / chat archived β€” Telegram returned 403; telegram_link.is_active = false. Fix: unblock the bot in Telegram β†’ unlink in Wevion (DELETE /unlink or via UI) β†’ re-link via deep_link
  2. Preference disabled for that alert type β€” PUT /api/v1/telegram/preferences toggles each alert_*. Fix: enable via UI or API
  3. No notifications happening β€” verify in-app inbox; if also empty, issue is upstream (no events firing)
  4. Bot link inactive β€” GET /api/v1/telegram/status β†’ check is_active and linked flags

Issue 2: Email in spam folder

Symptoms

Emails sent but landing in spam.

Causes + fixes

  1. Sender not allowlisted β€” noreply@wevion.ai flagged as unknown. Fix: allowlist noreply@wevion.ai in your email provider
  2. First-time receiver β€” Gmail / Outlook may mark first contact as spam. Fix: mark "Not spam" once β†’ future emails arrive normally
  3. Corporate email filter β€” IT may block external automated emails. Fix: ask IT to allowlist domain wevion.ai

Issue 3: Push notifications not arriving

Symptoms

Push subscribed but no alerts arrive.

Causes + fixes

  1. Browser permission denied β€” VAPID web push requires browser grant. Fix: re-grant in browser settings + re-subscribe in Wevion /settings β†’ Notifications β†’ Push
  2. Subscription expired (410 / 404) β€” the push worker hard-deletes the subscription row (deleteByEndpoint on the endpoint), it is not just deactivated. Fix: re-subscribe via UI; a new endpoint is persisted
  3. Mobile push expected β€” only web push (VAPID, PWA) is implemented. No native mobile push β€” use Telegram instead

Issue 4: Slack notifications not delivering

Symptoms

Slack integration set up but no messages in the channel.

Causes + fixes

  1. Destination not verified β€” channel_destination.is_verified = false. Fix: re-run OAuth via POST /api/v1/slack-notifications/install
  2. Token revoked at workspace β€” Slack workspace admin removed Wevion app. Fix: re-install OAuth
  3. Wrong event type β€” only the conservative default event set routes to Slack (account.disconnected, account.token_expiring, campaign.publish_failed, rule.action_failed, sync.failed, billing.payment_failed, billing.subscription_expired). Other notifications don't reach Slack. Fix: configure additional Slack routing via notification_policy overrides (advanced β€” contact admin)
  4. Channel deleted / archived β€” destination broken. Fix: re-configure with valid channel
  5. Permission scope insufficient β€” Wevion needs chat:write, channels:read, incoming-webhook. Fix: re-install OAuth to refresh scopes

Issue 5: Owner getting notifications they don't want

Symptoms

You're the team owner and inbox / Telegram is flooded with team members' notifications.

Cause

Owner fan-out by design β€” owners receive team members' alerts to maintain oversight. Configured in ROLE_DEFAULTS matrix.

Fix

Disable owner-fan-out per type in your preferences:

  • /settings β†’ Notifications β†’ for each noisy type, toggle off the channel(s)
  • Or: PUT /api/v1/notifications/preferences with specific overrides

You'll still see things in in-app inbox (filterable); other channels off.

Issue 6: Notification missing entirely

Symptoms

Expected notification didn't arrive in any channel.

Causes + fixes

Check preferences precedence (per notification-policy-engine.service.ts):

  1. Team-scoped override: admin may have disabled team-wide for this type. Fix: ask admin to re-enable
  2. User-scoped override: you disabled it for yourself. Fix: /settings β†’ Notifications β†’ enable
  3. Role default: your role has it off by default. Fix: explicit user override to enable
  4. Catalog default: notification type itself disabled in catalog (rare). Fix: not user-configurable

Decision IGNORE from policy engine = no delivery. To debug: check audit log or event_promotion table for the event_occurrence.

Issue 7: Telegram digest didn't arrive

Symptoms

Configured daily / weekly digest, expected at certain hour, didn't arrive.

Causes + fixes

  1. Daily / weekly toggle off β€” verify daily_digest_enabled / weekly_digest_enabled via GET /api/v1/telegram/preferences
  2. Wrong timezone β€” digest_timezone IANA string; verify against your actual TZ
  3. Wrong hour β€” daily_digest_hour (0-23) in user TZ; off-by-one common
  4. Dedup window hit β€” telegram_digest_log past 14 days; if you already received today's digest, won't re-send
  5. Bot inactive β€” telegram_link.is_active = false; re-link
  6. Cron didn't fire β€” system issue; contact admin to check cron health (lock ID 100011)

Issue 8: In-app inbox empty

Symptoms

Notification center shows no items even though you know events fired.

Causes + fixes

  1. Team filter mismatch β€” notification-inbox v2 is team-scoped; v1 is user-scoped. If UI shows v2 by default: switch team context or use v1
  2. All notifications archived β€” toggle filter to show archived
  3. All notifications read + filter is unread-only β€” toggle filter
  4. Notifications never created β€” events may have been IGNOREd by policy; check preferences

Issue 9: Receiving duplicate notifications

Symptoms

Same event triggers multiple notifications across channels (expected) OR multiple notifications of same type in same channel (unexpected).

Causes + fixes

  • Multi-channel by design: same event β†’ in-app + email + telegram if all enabled. Expected.
  • Owner + member fan-out: same event β†’ you (member) + your owner (separately). Expected.
  • Real duplicates same channel: grouping_key / cooldown_key should prevent. If happens: report bug

Issue 10: Wrong user receives notification

Symptoms

Notification arrived to a user it shouldn't (e.g. teammate's account event arrived to you, but you're not the owner).

Causes + fixes

  1. Wrong team_id β€” notification mis-targeted; report as bug with notification ID
  2. Mis-configured ownership β€” user.owner_id may be wrong; admin can verify
  3. Shared session β€” if you have access to teammate's data via super_admin role, may receive their notifications

Issue 11: Slack notifications stopped working

Symptoms

Slack worked initially, now stopped.

Causes + fixes

  1. Token revoked β€” workspace admin disabled Wevion app. Fix: re-install OAuth
  2. Channel archived β€” destination broken. Fix: re-configure destination
  3. Slack workspace migrated β€” install on new workspace
  4. Rate limit β€” temporary; Slack returns 429. Fix: wait + retry; should self-resolve

Issue 12: Notification preferences not saving

Symptoms

Toggle preference in UI but reverts on reload.

Causes + fixes

  1. API error β€” check browser console for PUT failure
  2. Role default re-applied β€” if you reset preferences, role default reverts. To override: explicit enabled: true/false per type
  3. Stale frontend cache β€” hard refresh
  4. Backend lag β€” wait a few seconds, refresh

Escalation

If none of the above match:

  1. Capture: notification type + expected channel + your role + timestamp + any error messages
  2. Check notification_inbox_item table state (admin)
  3. Check event_promotion table for decision (admin)
  4. Contact support with details

Common mistakes

  • Expecting mobile push β€” only web push (PWA / browser)
  • Expecting a general email digest β€” general alerts are per-event email; the only batched email is the Ad Fatigue digest (daily/weekly). Use Telegram digest for broader summaries
  • Disabling all in-app to "reduce noise" β€” in-app inbox is the audit source; keep on
  • Sharing Telegram bot link with teammates β€” link is per-user; each user must trigger their own
  • Not allowlisting noreply@wevion.ai β€” emails to spam

FAQ

Why is my Telegram bot silent?

Usually a preference or link issue. Wevion sets telegram_link.is_active = false if you blocked the bot or archived the chat β€” unblock, unlink, then re-link. Otherwise the specific alert_* type may be disabled in your preferences, or no events are firing. Check GET /api/v1/telegram/status for the is_active and linked flags.

Why do my Wevion emails land in spam?

Most often the sender isn't allowlisted. Allowlist noreply@wevion.ai in your provider, and mark a first email "Not spam" so future ones arrive normally. Corporate filters may block external automated mail β€” ask IT to allowlist the wevion.ai domain. Delivery then resumes without further changes.

Does Wevion support native mobile push notifications?

No. Wevion implements only web push via VAPID (PWA / browser), so there is no native mobile app push. If push isn't arriving, re-grant the browser permission and re-subscribe under /settings β†’ Notifications β†’ Push; an expired subscription (410/404) is hard-deleted by the push worker (deleteByEndpoint), not just deactivated. For mobile-friendly alerts, use Telegram instead.

Why did an expected notification never arrive in any channel?

Check preference precedence in Wevion's notification-policy-engine.service.ts: a team-scoped override, your own user override, a role default, or a catalog default may have it off. A policy decision of IGNORE means no delivery. Enable the type under /settings β†’ Notifications, or ask your admin to re-enable it team-wide.

As an owner, why am I flooded with my team's notifications?

This is owner fan-out by design β€” owners receive team members' alerts for oversight, configured in the ROLE_DEFAULTS matrix. To quiet it, open /settings β†’ Notifications and toggle off the noisy channels per type, or send specific overrides to /api/v1/notifications/preferences. You'll still see items in the in-app inbox.