Customer -> New Ticket, filter queue based on ticket type

Moderator: crythias

Locked
Nicsoft
Znuny newbie
Posts: 53
Joined: 12 Aug 2010, 14:58
Znuny Version: 2.4
Location: Stockholm
Contact:

Customer -> New Ticket, filter queue based on ticket type

Post by Nicsoft »

Hello!

In the Customer Web -> New Ticket I want the queues to be filtered based on what ticket type the customer has selected. I have managed to get the similar thing to work where the service list is filtered based on what queue the customer chose, but this on I stay without luck so far.

Here is my ACL:

Code: Select all

----------------
# Filter Queues

$Self->{TicketAcl}->{'ACL-Customer-Ticket-9'} = {
        Properties => {Frontend => {Action =>
                ['CustomerTicketMessage']},  },
        # hide the queues's for types
                PossibleNot => {Queue =>
                        ['[RegExp]::','[RegExp]^*']  }
};

$Self->{TicketAcl}->{'ACL-Name-10'} = {
                     # match properties

Properties => {Frontend =>
     {Action => ['CustomerTicketMessage']},
             # current ticket match properties
             Ticket => { Type => ['RfC']  },
             },

    Possible => {
         Queue =>  ['[RegExp]^Change Queue Several Nines']
                   },
};

----------------
The queues are never hidden and not filtered after ticket type has been chosen.

Please advice.

Thanks in advance!
Nicsoft
Znuny newbie
Posts: 53
Joined: 12 Aug 2010, 14:58
Znuny Version: 2.4
Location: Stockholm
Contact:

Re: Customer -> New Ticket, filter queue based on ticket typ

Post by Nicsoft »

Bouncing on this one. Anyone having any solution for this?

I have managed to hide all queues removing everything in properties like this:

Code: Select all

$Self->{TicketAcl}->{'ACL-hide-queues'} = {
		Properties => { 
//Empty
},
        # hide the queues's for types
                PossibleNot => {Ticket => { Queue =>  
		    ['[RegExp]^*'] },
  
  },
};
But I cannot present the queues I would like to after the type is selected. This is where I want it to happen, no effect. If I remove the row I have marked with "#This has no effect", the queue is always visible. Hence, I assume that the problem is the matching properties in some way.

Code: Select all

$Self->{TicketAcl}->{'ACL-show-change-queu-for-rfc'} = {
    Properties => {Frontend => {Action => ['CustomerTicketMessage']},
             Type => { Name => ['RfC'],}, #This has no effect
    },
    Possible => { Ticket => {
         Queue => ['Change Queue Several Nines'] 
    },
  },
};
I have also tried removing "Frontend => {Action => ['CustomerTicketMessage']},". Also, I tried "Ticket" instead of "Type".

Is this possible at all and if it is, then how? If not, don't hesitate if you feel like explaining why.

Thanks!
crythias
Moderator
Posts: 10170
Joined: 04 May 2010, 18:38
Znuny Version: 5.0.x
Location: SouthWest Florida, USA
Contact:

Re: Customer -> New Ticket, filter queue based on ticket typ

Post by crythias »

If only you could think of this in reverse terms (queue is the type or category of tickets and type is a sub of the queue, or even a subqueue...)
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
Nicsoft
Znuny newbie
Posts: 53
Joined: 12 Aug 2010, 14:58
Znuny Version: 2.4
Location: Stockholm
Contact:

Re: Customer -> New Ticket, filter queue based on ticket typ

Post by Nicsoft »

Thank you for your answer!

Not sure I'm following what you are saying. Could I match the queue-properties and then filter what types that I should present but not the other way around (the way I want it)? If that's the case, I guess it's not possible to achieve what I want, is it? (I have gotten info about how to do this, but never managed to get it work, perhaps it was never possible...).

Side-question: can I read about the logic behind ACL somewhere? Of course I've found this http://doc.otrs.org/2.2/en/html/c1883.html and this http://doc.otrs.org/2.2/en/html/c1883.html. But it doesn't say anything about the logic behind.
crythias
Moderator
Posts: 10170
Joined: 04 May 2010, 18:38
Znuny Version: 5.0.x
Location: SouthWest Florida, USA
Contact:

Re: Customer -> New Ticket, filter queue based on ticket typ

Post by crythias »

The logic appears to be on the page(s) that you posted. Essentially, when the screen loads with a given ticket, it checks the ticket's (or agent's) existing status and parses that against an ACL. Based upon what the ACL allows or doesn't allow determines what the next action that can be applied (by an agent) to the ticket. Specifically, there is no code that is provided by OTRS to change what is displayed onChange.

I have provided a way that *certain* things can be displayed on change of Queue http://forums.otrs.org/viewtopic.php?f=60&t=8032 ...
It does work, and isn't terribly hard to implement.
OTRS 6.0.x (private/testing/public) on Linux with MySQL database.
Please edit your signature to include your OTRS version, Operating System, and database type.
Click Subscribe Topic below to get notifications. Consider amending your topic title to include [SOLVED] if it is so.
Need help? Before you ask
Locked