Tickets

Departments

Departments

Create a Department


menu.png

Firstly you want to select Departments on the left hand navigation.


You will see this page, we've already created a Sales department. In this tutorial we'll be creating the support department.

departments.png

Now you can click on Create department button, to start creating your department.

create_department.png

Department Name: The name of the department.

Description: You can enter a description here for the department this will be displayed under the name.

Department Slug: You can put the url to the department here, it is optional and it will generate a slug from the department name on creation.

Department Email Address: This is the email address for the department, this will be where the emails are from. This needs a valid domain in it.

Allow High Priority: Yes or No, if you select Yes, then your customers or guests can open a ticket with a Low, Medium, High or Emergency, or any other priorities you create in the Enum, otherwise it's just Low, Medium or any other priorities you've created which aren't "High Priority".

Who can open tickets: This setting sets whether it's
- Private shared link:- Shown to no-one, you can only access it via the link.
- Public:- Shown to everyone.
- Customers only:- Shown to just customers.

Is the department visible: Is the department disabled? Yes means no-one can access it. No means anyone can access it depending on the "Who can open tickets" setting above.

After you've clicked create, you will be able to see and use the department.

Tickets Overview


Tickets Overview

Opening a ticket

image.png

Firstly you want to select Support Departments on the left hand navigation.

 

 

 

Then you can click a support department you wish to open a ticket in:

Screenshot 2024-09-05 at 20.37.59.png

You will now see a form to fill in to create a ticket:

Screenshot 2024-09-05 at 20.41.22.png

Support: Is the name of the support department.

ETA: Is the estimate time of a response.

Subject: Your brief reason for the ticket.

CC: Any emails you wish to send a carbon COPY of the ticket too, remember they'll get access to the public side of the ticket to reply as-well as yourself.

Priority: Select the priority of the ticket, you can set this to Low, Medium, High, Emergency or any other pre-set priorities allowed.

Ticket Response: This is the ticket content itself, please provide as much detail in this ticket to help the agents assist you to the fullest.

IP Address: Your IP Address is recorded with the ticket to prevent abuse.

Tickets Overview

Viewing a ticket

When you're viewing a ticket you will see the following:

Screenshot 2024-09-05 at 20.52.44.png

Viewing Ticket: Will show you the subject of the ticket.

Customer: Shows you the currently assigned customer.
If the ticket is from a non customer, you can assign the ticket to a customer via the dropdown.
This is only shown to the Agents.

Screenshot 2024-09-05 at 20.52.54.png

Now if you're an Agent you can view the following section.
You can change the Department, Status, Priority of the ticket, as-well as assigning the ticket to an Agent.

If you're an Account manager for a customer, their tickets automatically get assigned to you. You can however change them to not assigned or to another agent if required.


Responses:

Customers show up in grey and the first ticket reply will show up with stars for the customer to rate you. If they rate you, they'll be a solid Yellow.

Screenshot 2024-09-05 at 21.46.58.png

Customer's replies are always on the left.

Agent replies are always on the right, in blue and don't show the IP Address.

Screenshot 2024-09-05 at 20.59.42.png

You can leave Notes for other agents, these don't show up for the customer. They are in Yellow just like the Agents and always on the right hand side.

Screenshot 2024-09-05 at 22.01.38.png

Screenshot 2024-09-05 at 20.53.19.png

Response Title: You can enter a subject for your response, this will be used instead of the ticket subject. This is optional and not required.

Response Type: If you're an Agent you get this option to either reply to the customer or leave a Private Note for your colleagues.

Response: This is where you can write your response to the ticket. Provide as much detail as you can to help.

Save: This submits the response.

Close: This closes the ticket and marks it as resolved.

Tickets Overview

Assigned To Me

Assigned to me section will show you all the tickets which are assigned to you in Ticaga.

Screenshot 2024-09-06 at 19.54.29.png

Email Piping

Email Piping

Configuration

Ticaga retrieves 10 emails every 2 minutes using a non-overlapping scheduling mechanism. This approach ensures that if an IMAP server experiences delayed response times, subsequent scheduled runs are skipped rather than initiating concurrent jobs. This design prevents excessive CPU load and eliminates the risk of duplicate email processing.

Connect via SSH using the username established during Ticaga installation. Our documentation uses ticaga or demo as example usernames for illustrative purposes. For security best practices, we recommend using a unique username, though the final choice is yours.

sudo su ticaga

Now we want to set-up the cronjob for Laravel's scheduler:

export EDITOR=nano;
crontab -e

First we set the editor to nano, this is the basic editor, you can use vi but in our option Nano is better.
Then we edit the crontab. 

Paste in the following cronjob:

* * * * * cd /var/www/ticaga && php artisan schedule:run >> /dev/null 2>&1

Ctrl + X and Y to save and close the editor.

To check that it's set to run, you can run the following command:

crontab -l

It'll output the above.

Email Piping

Set-up the accounts

This is the important step to pipe into Ticaga, you need to go to: 

/config/imap.php

Find:

/*
    |--------------------------------------------------------------------------
    | Available accounts
    |--------------------------------------------------------------------------
    |
    | Please list all IMAP accounts which you are planning to use within the
    | array below.
    |
    */
    'accounts' => [

        'default' => [// account identifier
            'host'  => 'localhost',
            'port'  => 993,
            'protocol'  => 'imap', //might also use imap, [pop3 or nntp (untested)]
            'encryption'    => 'ssl', // Supported: false, 'ssl', 'tls'
            'validate_cert' => true,
            'username' => 'root@example.com',
            'password' => '',
            'authentication' => null,
            'rfc' => 'RFC822', // If you are using iCloud, you might want to set this to 'BODY'
            'proxy' => [
                'socket' => null,
                'request_fulluri' => false,
                'username' => null,
                'password' => null,
            ],
            "timeout" => 30,
            "extensions" => []
        ],
    ],

Please do not modify the default entry, as it is not integrated with Ticaga and serves solely as a reference example. To add your own accounts, insert them immediately above line 31.

        'sales' => [
            'host' => 'mail.yourdomain.com',
            'port' => 993,
            'encryption' => 'ssl',
            'validate_cert' => true,
            'username' => 'sales@yourdomain.com',
            'password' => "your_secret_password",
            'authentication' => 'null',
        ],

        'support' => [
            'host' => 'mail.yourdomain.com',
            'port' => 993,
            'encryption' => 'ssl',
            'validate_cert' => true,
            'username' => 'support@yourdomain.com',
            'password' => "your_secret_password",
            'authentication' => 'null',
        ],

The username must match the department email address, however you can have more than one email pipe into a department.

So the final result looks like:

/*
    |--------------------------------------------------------------------------
    | Available accounts
    |--------------------------------------------------------------------------
    |
    | Please list all IMAP accounts which you are planning to use within the
    | array below.
    |
    */
    'accounts' => [

        'default' => [// account identifier
            'host'  => 'localhost',
            'port'  => 993,
            'protocol'  => 'imap', //might also use imap, [pop3 or nntp (untested)]
            'encryption'    => 'ssl', // Supported: false, 'ssl', 'tls'
            'validate_cert' => true,
            'username' => 'root@example.com',
            'password' => '',
            'authentication' => null,
            'rfc' => 'RFC822', // If you are using iCloud, you might want to set this to 'BODY'
            'proxy' => [
                'socket' => null,
                'request_fulluri' => false,
                'username' => null,
                'password' => null,
            ],
            "timeout" => 30,
            "extensions" => []
        ],
      
        'sales' => [
            'host' => 'mail.yourdomain.com',
            'port' => 993,
            'encryption' => 'ssl',
            'validate_cert' => true,
            'username' => 'sales@yourdomain.com',
            'password' => "your_secret_password",
            'authentication' => 'null',
        ],

        'support' => [
            'host' => 'mail.yourdomain.com',
            'port' => 993,
            'encryption' => 'ssl',
            'validate_cert' => true,
            'username' => 'support@yourdomain.com',
            'password' => "your_secret_password",
            'authentication' => 'null',
        ],
    ],

And email fetching will automatically start for the configured accounts, Amazing!