-
-
Notifications
You must be signed in to change notification settings - Fork 406
Description
Odoo v18 Specification: Helpdesk Ticket Spam Handling
Objective
Implement a spam-handling workflow in Odoo Helpdesk to allow agents to mark tickets as spam. The workflow should mirror Zendesk’s spam handling:
- Marked tickets are moved to a separate "Suspended" queue.
- Emails from the spammed sender bypass the main helpdesk queue and instead land in the "Suspended" queue.
- Suspended tickets are auto-deleted after 30 days but can be reviewed before deletion.
Functional Requirements
1. Mark as Spam Action
-
Add a "Mark as Spam" button on Helpdesk ticket form view and list view.
-
When clicked:
-
The ticket is moved from its current team/stage into the "Suspended" queue.
-
The ticket’s
activeflag remains true until deleted (for review purposes). -
The email address of the ticket’s author/requester is added to a Spam Blocklist.
-
2. Suspended Queue
-
A new Helpdesk Team/Stage called "Suspended" is created.
-
Tickets in this stage:
-
Are excluded from the main Helpdesk pipeline views (Kanban, List, Dashboard counts).
-
Are only accessible under a dedicated Suspended Tickets menu item under Helpdesk.
-
Can be manually reviewed and either:
- Deleted immediately, or
- Restored to the main queue (via a button/tooltip: "Not Spam").
- If they click not spam, the dev must also have to unblock the user from the blocklist.
-
3. Incoming Email Handling
-
When a new email is received by the helpdesk:
-
If the sender email is in the Spam Blocklist, the system automatically creates the ticket in Suspended queue.
-
Otherwise, the ticket is created as usual in the default team pipeline.
-
4. Auto Deletion
-
A scheduled cron job runs daily:
-
Any ticket in the Suspended queue older than 30 days is permanently deleted.
-
Related messages/attachments are also deleted for cleanup.
-
5. User Permissions
-
Only users with Helpdesk Manager or Team Lead roles can mark/unmark tickets as spam.
-
Regular Helpdesk Agents can see suspended tickets but cannot restore or delete them.