5 min read

AutoFlow Overview

Automate workflows and processes with CommFlow's powerful AutoFlow automation engine.

AutoFlow Overview#

AutoFlow is CommFlow's workflow automation engine. Create automated workflows that save time and ensure consistency across your team.

What is AutoFlow?#

AutoFlow lets you automate repetitive tasks:

  • Triggers - Events that start workflows
  • Conditions - Rules that filter when to run
  • Actions - What happens automatically
  • Workflows - Complete automation sequences

Key Concepts#

How AutoFlow Works#

┌─────────────┐    ┌─────────────┐    ┌─────────────┐
│   TRIGGER   │ → │  CONDITION  │ → │   ACTION    │
│ (Event)     │    │ (If/Then)   │    │ (Do this)   │
└─────────────┘    └─────────────┘    └─────────────┘
  1. Trigger fires when something happens
  2. Condition checks if criteria are met
  3. Action executes if conditions pass

Example Workflow#

WHEN: New ticket created
IF: Priority is "Urgent" AND Category is "Support"
THEN:
  - Assign to Support Team
  - Send Slack notification
  - Add "urgent" label

Getting Started#

Accessing AutoFlow#

  1. Click AutoFlow in the sidebar
  2. View existing workflows
  3. Create new automations
  4. Monitor activity

Creating Your First Workflow#

  1. Click New Workflow
  2. Name your workflow
  3. Select a trigger
  4. Add conditions (optional)
  5. Add actions
  6. Save and activate

Workflow Builder#

Interface Overview#

┌─────────────────────────────────────────────────────────┐
│ Workflow: Auto-assign Urgent Tickets         [Save]     │
├─────────────────────────────────────────────────────────┤
│                                                         │
│  ┌─ TRIGGER ─────────────────────────────────────────┐  │
│  │ 📥 When ticket is created                         │  │
│  └───────────────────────────────────────────────────┘  │
│                    ↓                                    │
│  ┌─ CONDITION ───────────────────────────────────────┐  │
│  │ If priority = "Urgent"                            │  │
│  │ AND status = "Open"                               │  │
│  └───────────────────────────────────────────────────┘  │
│                    ↓                                    │
│  ┌─ ACTIONS ─────────────────────────────────────────┐  │
│  │ ✓ Assign to "Support Lead"                        │  │
│  │ ✓ Send notification to #support                   │  │
│  │ ✓ Add label "needs-attention"                     │  │
│  └───────────────────────────────────────────────────┘  │
│                                                         │
│  [+ Add Step]                                           │
└─────────────────────────────────────────────────────────┘

Building Workflows#

  1. Start with a trigger - What kicks off the workflow?
  2. Add conditions - When should it run?
  3. Define actions - What should happen?
  4. Test - Run a test to verify
  5. Activate - Turn it on

Triggers#

Available Triggers#

ModuleTriggers
InboxTicket created, updated, assigned, resolved
Team ChatMessage sent, channel created, member joined
Live SupportChat started, chat ended, visitor action
TaskFlowTask created, moved, completed, overdue
DataFortFile uploaded, shared, deleted

Trigger Configuration#

Each trigger has specific settings:

Ticket Created:

- All tickets
- Specific inbox only
- From specific channel
- With specific priority

Conditions#

Condition Types#

TypeExample
EqualsPriority = "High"
ContainsSubject contains "urgent"
Is emptyAssignee is empty
Is not emptyEmail is not empty
Greater thanResponse time > 1 hour
Less thanMessages < 5

Combining Conditions#

Use AND/OR logic:

IF:
  (Priority = "Urgent" OR Priority = "High")
  AND
  (Status = "Open")
  AND
  (Assignee is empty)

Condition Groups#

Create complex logic:

IF:
  Group 1 (ANY):
    - VIP customer
    - Enterprise plan
  AND
  Group 2 (ALL):
    - New ticket
    - No response yet

Actions#

Available Actions#

CategoryActions
AssignmentAssign to user, team, round-robin
StatusChange status, priority, labels
NotificationSend email, Slack, in-app
CommunicationSend reply, internal note
IntegrationWebhook, API call
DataUpdate fields, create record

Action Examples#

Send Notification:

To: #support-urgent channel
Message: "🚨 Urgent ticket from {{customer.name}}: {{ticket.subject}}"

Auto-Reply:

To: Customer
Subject: Re: {{ticket.subject}}
Body: "Thanks for reaching out! We've received your message and will respond within 2 hours."

Action Variables#

Use dynamic data in actions:

VariableValue
{{ticket.subject}}Ticket subject line
{{customer.name}}Customer's name
{{customer.email}}Customer's email
{{assignee.name}}Assigned agent name
{{timestamp}}Current date/time

Workflow Management#

Workflow List#

View all workflows:

ColumnDescription
NameWorkflow name
StatusActive/Inactive
TriggerWhat starts it
RunsTimes executed
Last RunMost recent execution

Activating/Deactivating#

  1. Find workflow in list
  2. Click toggle switch
  3. Status changes immediately

Editing Workflows#

  1. Click workflow name
  2. Modify trigger, conditions, or actions
  3. Save changes
  4. Changes apply to new events

Duplicating Workflows#

Create similar workflows:

  1. Click ... menu
  2. Select Duplicate
  3. Modify as needed
  4. Save with new name

Deleting Workflows#

  1. Click ... menu
  2. Select Delete
  3. Confirm deletion

Note: Deleted workflows cannot be restored.

Testing Workflows#

Manual Testing#

Test before activating:

  1. Open workflow
  2. Click Test
  3. Provide sample data
  4. See what would happen
  5. Verify results

Test Mode#

Run in test mode:

  1. Enable Test Mode
  2. Workflows log actions without executing
  3. Review logs
  4. Disable test mode when ready

Workflow Logs#

See execution history:

Workflow: Auto-assign Urgent Tickets
─────────────────────────────────────
Jan 15, 10:30 AM - SUCCESS
  Trigger: Ticket #1234 created
  Condition: Passed (priority = urgent)
  Actions:
    ✓ Assigned to Sarah
    ✓ Sent notification
    ✓ Added label

Jan 15, 9:15 AM - SKIPPED
  Trigger: Ticket #1233 created
  Condition: Failed (priority = normal)

Common Workflows#

Auto-Assignment#

Automatically assign tickets:

WHEN: Ticket created
IF: Subject contains "billing"
THEN: Assign to Billing Team

SLA Escalation#

Escalate before SLA breach:

WHEN: Ticket SLA at 80%
IF: Priority = "High"
THEN:
  - Notify manager
  - Add "sla-risk" label

Welcome Messages#

Greet new customers:

WHEN: Chat started
IF: Visitor is new
THEN: Send welcome message

Task Notifications#

Notify on task changes:

WHEN: Task moved to "Review"
IF: Has assignee
THEN: Notify assignee to review

Out of Hours#

Handle after-hours messages:

WHEN: Ticket created
IF: Outside business hours
THEN:
  - Send auto-reply
  - Add "after-hours" label

Best Practices#

Workflow Design#

  1. Start simple - Build basic workflows first
  2. Test thoroughly - Always test before activating
  3. Use clear names - Descriptive workflow names
  4. Document purpose - Add descriptions
  5. Review regularly - Audit workflows periodically

Performance#

  1. Be specific - Narrow conditions prevent unnecessary runs
  2. Avoid loops - Don't trigger workflows that trigger themselves
  3. Limit actions - Keep actions focused
  4. Monitor logs - Check for errors

Common Mistakes#

  • Too broad triggers - Runs on too many events
  • Missing conditions - Affects wrong items
  • Circular workflows - Action triggers same workflow
  • Too many actions - Overwhelming notifications

Plan Availability#

AutoFlow is available as an add-on:

FeatureIncluded
WorkflowsUnlimited
TriggersAll available
ActionsAll available
Logs30-day history
TestingFull test mode

Next Steps#

Was this page helpful?

Let us know if you found what you were looking for.