Workflow: Manual Zulip Automation

Workflow Details

Download Workflow
{
    "id": 4,
    "name": "Zammad Open Tickets",
    "nodes": [
        {
            "name": "On clicking 'execute'",
            "type": "n8n-nodes-base.manualTrigger",
            "position": [
                -40,
                340
            ],
            "parameters": [],
            "typeVersion": 1
        },
        {
            "name": "Ticket Filtering",
            "type": "n8n-nodes-base.function",
            "notes": "Filter tickets by status.",
            "position": [
                400,
                460
            ],
            "parameters": {
                "functionCode": "let newTickets = 0\nlet openTickets = 0\nlet pendingReminder = 0\nlet pendingClose = 0\n\nfor (let i = 0; i < items.length; i++) {\n  const ticket = items[i]\n  if (ticket.json.state_id === 1) {\n    newTickets++\n  }\n  if (ticket.json.state_id === 2) {\n    openTickets++\n  }\n  if (ticket.json.state_id === 3) {\n    pendingReminder++\n  }\n  if (ticket.json.state_id === 7) {\n    pendingClose++\n  }\n}\n\nreturn [{\n  json: {\n    \"new\": newTickets,\n    open: openTickets,\n    pendingReminder: pendingReminder,\n    pendingClose: pendingClose\n  }\n}];"
            },
            "executeOnce": true,
            "notesInFlow": true,
            "typeVersion": 1
        },
        {
            "name": "List Tickets",
            "type": "n8n-nodes-base.zammad",
            "notes": "Get all tickets.",
            "position": [
                200,
                460
            ],
            "parameters": {
                "resource": "ticket",
                "operation": "getAll",
                "returnAll": true
            },
            "credentials": {
                "zammadTokenAuthApi": {
                    "id": "7",
                    "name": "Zammad Token Auth account"
                }
            },
            "notesInFlow": true,
            "typeVersion": 1
        },
        {
            "name": "Notify for Standup",
            "type": "n8n-nodes-base.zulip",
            "notes": "Sends a summary to customer support stream.",
            "position": [
                580,
                460
            ],
            "parameters": {
                "topic": "=tickets",
                "stream": "=customer support",
                "content": "=:ticket: Support Tickets Summary:\n* Open: {{$node[\"Ticket Filtering\"].json[\"open\"]}}\n* New:{{$node[\"Ticket Filtering\"].json[\"new\"]}}\n* Pending Close {{$node[\"Ticket Filtering\"].json[\"pendingClose\"]}}\n* Pending Reminder {{$node[\"Ticket Filtering\"].json[\"pendingReminder\"]}}",
                "operation": "sendStream"
            },
            "credentials": {
                "zulipApi": {
                    "id": "1",
                    "name": "Zulip n8n Bot"
                }
            },
            "executeOnce": true,
            "notesInFlow": true,
            "typeVersion": 1
        },
        {
            "name": "Standup Cron",
            "type": "n8n-nodes-base.cron",
            "notes": "Daily stand-up open days.",
            "position": [
                -40,
                560
            ],
            "parameters": {
                "triggerTimes": {
                    "item": [
                        {
                            "mode": "custom",
                            "cronExpression": "0 30 8 * * 1-5"
                        }
                    ]
                }
            },
            "executeOnce": true,
            "notesInFlow": true,
            "typeVersion": 1
        }
    ],
    "active": true,
    "settings": [],
    "connections": {
        "List Tickets": {
            "main": [
                [
                    {
                        "node": "Ticket Filtering",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Standup Cron": {
            "main": [
                [
                    {
                        "node": "List Tickets",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "Ticket Filtering": {
            "main": [
                [
                    {
                        "node": "Notify for Standup",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        },
        "On clicking 'execute'": {
            "main": [
                [
                    {
                        "node": "List Tickets",
                        "type": "main",
                        "index": 0
                    }
                ]
            ]
        }
    }
}
Back to Workflows

Related Workflows

Webhook Graphql Automate Webhook
View
Respondtowebhook Webhook Automate Webhook
View
Dynamic Form with AI
View
GitLab MR Auto-Review & Risk Assessment
View
Process
View
Extractfromfile HTTP Automation Webhook
View
Telegram Automate Triggered
View
Manual Postgres Automate Triggered
View
[2/2] KNN classifier (lands dataset)
View
Clickup Respondtowebhook Create Webhook
View