Get Started

Filters & Pages

Two modules under the Manage menu: the Ticket Filters rules engine and the editable site Pages (landing, thank-you, offline, registration, banner).

The Manage Menu

The top-level Manage menu in the staff control panel has two sub-items:

Ticket Filters

Filters are if-this-then-that rules that run against every incoming ticket — from the portal, email, or API. They can:

Creating a Filter

  1. Go to Deskuss → Manage → Ticket Filters
  2. Click Add New Filter
  3. Pick the target — New Tickets (default) or New Replies
  4. Add conditions (see below)
  5. Add actions (see below)
  6. Set execution order (lower runs first; use increments of 10)
  7. Save

Rule Conditions

Each condition has a field, operator, and value. Conditions within a filter are ANDed. For OR logic, create multiple filters.

FieldOperatorsNotes
Subjectcontains, equals, regex, starts-with, ends-withCase-insensitive
Bodycontains, equals, regexPlain-text body, HTML stripped
From emailequals, contains, regex, ends-withUse ends-with @domain.com to match an organization
From nameequals, contains, regex
To emailequals, ends-withUseful for "incoming to tickets@ vs billing@"
Priorityequals, in listlow, normal, high, emergency
Departmentequals, in listBy ID or name
Custom fieldequals, contains, in list, empty, not-emptyField-name selector is dynamic
Sourceequalsweb, email, api, phone

Filter Actions

Each filter can fire multiple actions. They run in the order listed — put destructive ones (Reject, Mark as Spam) before constructive ones (Set Priority, Notify).

ActionEffect
RejectDrop the ticket entirely. Optionally send a rejection email.
Mark as SpamHidden from queues; no staff alert; tagged for review.
Set DepartmentRoute to a specific department.
Set PriorityOverride the priority.
Set StatusForce a non-default status.
Assign to StaffAssign to a specific agent.
Assign to TeamAssign to a team.
Set SLAOverride the SLA plan.
Send Auto-ResponseSend a canned reply to the customer.
Send AlertSend an internal alert.
Add Internal NoteAppend a staff-only note to the ticket.

Filter Order

Filters run from lowest order number to highest. The first matching filter fires its actions. By default, processing stops there ("stop on first match"). To run multiple filters on the same ticket, enable Continue processing on match in the filter's settings.

Example Filters

Route all @enterprise-customer.com tickets to a senior agent

Target:    New Tickets
Condition: From email ends-with "@enterprise-customer.com"
Action:    Assign to staff "Sarah Lee"
Action:    Set priority = High
Action:    Set SLA = "Enterprise (1h response)"
Order:     20

Reject spam with common phrases

Target:    New Tickets
Condition: Body regex "/(viagra|crypto airdrop|click here to claim)/i"
Action:    Mark as Spam
Order:     30

Force high priority on outage reports

Target:    New Tickets
Condition: Subject contains "outage" OR subject contains "down" OR body contains "completely offline"
Action:    Set priority = Emergency
Action:    Add internal note "Customer reported outage — confirm and escalate"
Order:     25

Testing a Filter

Before going live, test the filter:

  1. Open the filter
  2. Click Test
  3. Paste a sample subject, body, and sender
  4. Deskuss simulates the filter pipeline and tells you which filter would match and what actions would fire

For end-to-end testing, submit a real ticket from a test email account. Check the system log for filter matches and confirm the actions behaved as expected.

Email-Loop Prevention

If your From address matches the address you're polling or piping, every reply triggers a new notification which triggers a new ticket. The fix:

  1. Set a different From address for outgoing email than for incoming (e.g., outgoing from support@, incoming to tickets@)
  2. Add the From address to a Reject filter with reason "self-loop"
  3. Empty the queue and start fresh

Site Pages

The Manage → Pages module lets you edit the text content shown on the client portal — landing, thank-you, offline, registration, and banner pages. No coding required.

The Editable Pages

PageWhat it showsDefault content
LandingThe portal's home page — buttons to open a ticket and check status, plus optional intro text"Welcome to the Support Center"
Thank-youShown right after a customer submits a new ticket"We've received your ticket and will respond shortly"
OfflineShown when the helpdesk is set to offline mode"The support center is temporarily unavailable"
RegistrationShown on the sign-up form, above the fields"Create an account to track your tickets"
BannerTop-of-portal announcement (e.g., for scheduled maintenance)(empty by default)

Editing a Page

  1. Go to Deskuss → Manage → Pages
  2. Click the page you want to edit
  3. Edit the content in the rich-text editor
  4. Save

The page accepts a constrained subset of HTML: h1h3, p, ul/ol, strong, em, a, img, and a custom <deskuss-search> tag that renders the KB search box.

Resetting a Page

To restore the default content of any page:

  1. Open the page in the editor
  2. Click Reset to Default
  3. Confirm

Adding a New Page

You can add a new editable page beyond the five defaults. Useful for custom legal notices, FAQ pages, or anything else that needs to live on the portal.

  1. Click Add New Page
  2. Set the page's URL slug (e.g., terms)
  3. Write the content
  4. Save

New pages are accessible at /deskuss/pages/{slug}.

Page content is plain HTML, not WordPress pages. Pages in the Manage → Pages module are stored in Deskuss's own {prefix}dk_content table, not in WordPress's wp_posts. They're rendered by Deskuss's own templates, not your theme's. This means you can use any WordPress theme and the pages will look the same.

HTML & CSS Restrictions

For security, the page editor strips:

For visual customization beyond the constrained HTML, edit your theme's stylesheet to target the relevant Deskuss classes. See the Theming section of the troubleshooting guide for the most useful selectors.