OTRS en dos departamentos distintos

Post Reply
Vanessa
Znuny newbie
Posts: 10
Joined: 18 Jun 2012, 12:19
Znuny Version: 3.1.2
Real Name: Vanesa

OTRS en dos departamentos distintos

Post by Vanessa »

Hola, he implementado otrs en la empresa para el departamento de it, de una manera sencilla, grupos, colas, respuestas, servicios. etc

el cliente solicita asistencia de IT, a través de la herramienta seleccionando el tipo de solicitud (que por ahora solo hay una), y la cola a la que perteneces, pero el servicio se lo asigna el agente, ya que es mas especifico.

ahora quiero utilizar esta herramienta para otro departamento totalmente distinto al de IT, con sus propios grupos, colas, respuestas, servicios. etc, el problema surge cuando seleccionamos el tipo de solicitud, existe alguna manera de que cuando seleccione un tipo de solicitud se muestren las colas que corresponden a ese departamento.
lo que quiero decir es que si como cliente selección tipo 1, me lleve a it, y si selecciono tipo 2 me lleve a las colas del otro departamento.

muchas gracias y un saludo.

Vane_otrs
miguelmz
Znuny wizard
Posts: 370
Joined: 17 Nov 2011, 17:46
Znuny Version: 6.0.10
Real Name: Miguel
Company: SIA
Location: Madrid, Spain.

Re: OTRS en dos departamentos distintos

Post by miguelmz »

Hola Vanesa,

Como eres nueva, no te vamos a crucificar... hoy, pero este subforo es para explicar pequeñas modificaciones (o no tan pequeñas) para realizar mejoras que OTRS estandar no ofrezca.

Para este tipo de cuestiones dirigete mejor al subforo de Ayuda.

Ahora bien, a lo que preguntas dispones de ACL
http://faq.otrs.org/otrs/public.pl?Acti ... ;ItemID=68

o modificacion perl para llevarlo a cabo.
viewtopic.php?f=84&t=14522

Un saludo.
We want OTRS certifications in Spain!!

Check out my free addons! :mrgreen:
Vanessa
Znuny newbie
Posts: 10
Joined: 18 Jun 2012, 12:19
Znuny Version: 3.1.2
Real Name: Vanesa

Re: OTRS en dos departamentos distintos

Post by Vanessa »

gracias por tu respuesta, y perdon por escribir aqui .. =) era mi primera vez..

pero lo que yo queria era relacionar un tipo de ticket "new incident" con determinadas colas. dependiendo el tipo de ticket que indique, me muestre unas colas o otras. y por lo que lei esto lo que hace es asignar un servicio segun la cola que se seleccione.

deberia hacerlo asi igualmente?

saludos.
miguelmz
Znuny wizard
Posts: 370
Joined: 17 Nov 2011, 17:46
Znuny Version: 6.0.10
Real Name: Miguel
Company: SIA
Location: Madrid, Spain.

Re: OTRS en dos departamentos distintos

Post by miguelmz »

Hola Vanesa,

Tanto el desplegable de tipos de Ticket como el de Colas son cargados en su totalidad. Esta es una buena ocasion para explicarte un poco de como funciona el Javascript y Perl aqui, perdon por el sermon:

Al seleccionar un nuevo ticket telefonico, email o desde frontal agente por debajo estamos ejecutando una serie de perls con mismo nombre que sus "Action" que aparecen en sus respectivas url en el directorio /otrs/Kernel/Modules/.
Estos perl ejecutan consultas sobre la configuracion que tengas definida a la hora de crear un ticket ( tipos ticket, colas disponibles, campos libres ), a este apartado lo llamaremos PRE-Presentacion. La PRE-Presentacion recolecta dicha informacion con un policia llamado ACL definidas en /otrs/Kernel/Config.pm.
En funcion de si esta o no permitido por esas ACL pasara a su siguiente etapa que llamaremos para nosotros Construccion.

En la Construccion el perl tirara contra su homologo (del mismo nombre) dtl en /otrs/Kernel/Output/HTML/Standard. Este dtl es una plantilla basada en HTML y caracteristicas por 2 Hashes: QData y Data (Un Hash global de otrs y otro local del propio perl que lo llama). Pues bien, en el momento de la construccion toda aquella informacion recolectada por el perl y guardada en keys de un determinado hash es sustituida en el dtl creando tu HTML. En esta creación influyen tambien 2 perl mas que generalmente no se tocan para estas modificaciones: Layout.pm y LayoutTicket.pm en /otrs/Kernel/System.

Una vez construido estamos en la fase de presentacion de la pagina, equivalente a ver tu pagina para crear el ticket. Esto quiere decir que en Tu caso, al no saber en ese momento si el agente, cliente seleccionara un tipo u otro, no podemos limitar las colas y por tanto nos apareceran todos los tipos de tickets y colas permitidas para ese usuario.

Para solventar estos casos entra en accion el Javascript. Esta fase la llamaremos AJAX, en la fase de construccion en los dtl se describen una serie de funciones AJAX y tipicas de Javascript estandares. Tu puedes modificar estos trozos de codigo Javascript del dtl para realizar aquellas cosas que mas te interesan. Como por ejemplo, en tu caso, dispones nada mas contruir la pagina d etodos los elementos pero puedes con Javascript ocultar selecciones al entrar en la pagina y por cada uno de los desplegables realizar bucles que te habiliten dichos desplegables, los renombren, modifiquen, etc.

En cuanto a la segunda parte de la fase AJAX, dispones de los propios AJAX, son funciones de actualizacion de campos parciales sobre determinados desplegables y formularios que al seleccionar recargan posteriores elementos. El ejemplo mas claro es como se recargan valores basicos al seleccionar un servicio y ver sus sla asociados. Estos AJAX estan definidos en /otrs/var/httpd/htdocs/skins/Agent/default/css y son una buena forma de actualizar tus campos obligando una recoleccion de datos posterior, pero tienen de pega que muchas funcionalidades estan escritas sobre un mismo modulo ActionCommon y debes tener mucho cuidado al renombrar AJAX para no repercutir otras areas con condiccionales de Action del url por ejemplo.

Ya conoces un ejemplo de fase construccion: viewtopic.php?f=84&t=14522

¿Que opciones tienes?, a mi modo de ver, si son 2 grupos totalmente distintos sobre la misma aplicacion podrias separar los tipos radicalmente. Crear una segunda via de entrada, 1 new phone ticket para un grupo y otro new phone ticket para otro por ejemplo. Una vez implementado dispondrias 2 enlaces a esta funcion pero con distinto nombre y con ACL podrias capar uno en un tipo y el otro en el otro tipo, sin necesidad de tocar codigo a bajo nivel. Tienes un ejemplo de como realizarlo en la documentacion devel que viene por defecto al descomprimir otrs ( /otrs/development).

Si no, a tocar Javascript y AJAX :lol:

Ya te dije que esto era para detallar como hacer cosas, asi que vamos a darle uso a tu post.

Un saludo.
We want OTRS certifications in Spain!!

Check out my free addons! :mrgreen:
Post Reply