Si estás buscando una herramienta de ticketing, UVdesk es de código abierto (Open Source) esta basada en el framework PHP de Symfony por lo que es altamente personalizable para adaptarlo a tus necesidades.
Incluye la opción de base de conocimiento, cómo también gestión de usuarios, macros para respuestas guardadas y/o automáticas con flujos de trabajo. Así cómo por su puesto la opción de configurar el correo electrónico, configuración de grupos y prioridades de ticket.
Tiene extensiones desarrolladas para CMS cómo Joomla, Magento 2, Opencart, Prestashop, Shopify y WordPress. También hay aplicaciones para la integración con Facebook, Twitter, etc.
Requisitos oficiales recomendados
- Sistema Operativo: Linux o Windows (WAMP/XAMPP).
- Servidor Web: Apache2 o NGINX.
- Memoria RAM: 3 GB o más.
- Versión PHP: Recomendado entre 7.2 y 7.4.
- Procesador: Frecuencia de 1 Ghz o superior.
- Versión MySQL: 5.7.23 o superior.
- Versión Composer: Desde 1.6.5 o inferior a 2.0.X.
- PHP IMAP & PHP Mailparse.
Pasos previos e instalación de UVdesk
Para el artículo se utiliza la imagen de Ubuntu 20.04 LTS, pero previamente instalando y configurando NGINX con PHP con un certificado Let's Encrypt adquiriéndolo con Certbot para la instalación de UVdesk. En caso de que hayas utilizado la imagen LEMP puedes saltarte los pasos previos para la instalación de paquetes (comprobar que tengas todos los paquetes de PHP necesarios instalados), pasando al apartado de creación de la base de datos directamente y adaptar el procedimiento añadiendo un nuevo fichero site para NGINX e indicando la ruta del directorio.
Instalación de paquetes
En este artículo se explica cómo instalar Bludit, pero previamente instalando y configurando NGINX con PHP con un certificado Let's Encrypt adquiriéndolo con Certbot. Los pasos son los siguientes:
Actualiza los repositorios e instala las actualizaciones:
# apt update && apt upgrade
Instala los paquetes necesarios:
# apt install mariadb-server nginx php-cli php-fpm php-common php-mbstring php-swiftmailer php-gd php-xml php-json php-common php-gmp php-curl php-intl php-mbstring php-xmlrpc php-mysql php-imap php-mailparse php-cli php-cli certbot python3-certbot-nginx
Luego realiza la configuración de seguridad para la base de datos:
# mysql_secure_installation
Creación de base de datos
Para crear una base de datos para UVdesk podemos ejecutar el siguiente comando:
# mysqladmin -u root --verbose create uvdesk
Luego crea un usuario (modifica password por la contraseña deseada):
# mysql -u root --verbose -e "create user 'uvdesk'@'localhost' identified by 'password';"
Por último, asígnale los permisos en la base de datos y realiza un flush:
# mysql -u root --verbose -e "grant all on uvdesk.* to 'uvdesk'@'localhost' with grant option; flush privileges;"
Descarga y instalación de UVdesk
Accede al directorio temporal y descarga el fichero comprimido de la pagina oficial UVdesk:
# cd /tmp && wget https://cdn.uvdesk.com/uvdesk/downloads/opensource/uvdesk-community-current-stable.zip
Descomprime el fichero descargado (añadimos instalación previa de unzip):
# apt install -y unzip && unzip uvdesk-community-current-stable.zip
Crea el directorio y sincroniza el directorio web con la carpeta descomprimida:
# mkdir /var/www/uvdesk/ && rsync -rtv uvdesk-community-v*/ /var/www/uvdesk/
Edita el fichero de configuración de NGINX para el site:
# vi /etc/nginx/sites-available/default
Cambia el server_name del fichero por el registro del subdominio o dominio que apunte al servidor:
server_name uvdesk.ejemplo.com;
Modifica la ruta por el directorio público de uvdesk:
root /var/www/uvdesk/public/;
Añade en la línea index el index.php:
index index.php;
Modifica la línea try_files por:
try_files $uri $uri/ /index.php?$args;
También descomenta las líneas para el uso de PHP y denegar .htaccess. Quedando de esta forma:
# pass PHP scripts to FastCGI server
location ~ \.php$ {
# include snippets/fastcgi-php.conf;
include fastcgi.conf;
# fastcgi_index index.php;
# With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
# With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
fastcgi_param HTTPS on;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
Guarda los cambios y cambia la propiedad de todo el directorio Web recursivamente:
# chown -R www-data:www-data /var/www/uvdesk/
También asigna los permisos al directorio de forma recursiva:
# chmod -R 755 /var/www/uvdesk/
Reinicia el servicio web para recargar los cambios:
# systemctl restart nginx.service
Por último, en caso de querer utilizar SSL certificamos con Certbot:
# certbot --nginx --redirect -d uvdesk.ejemplo.com
Luego accede con el registro en un navegador Web y sigue los pasos para realizar la instalación con el wizard:
Por defecto no viene habilitado el idioma español, para activarlo edita el fichero:
# vi /var/www/uvdesk/config/packages/uvdesk.yaml
En la línea app_locales, añade el idioma:
app_locales: es|en|fr|it
Por último, también puedes deshabilitar la barra de debug de Symfony editando el siguiente fichero:
# vi /var/www/uvdesk/config/packages/dev/web_profiler.yaml
Dejando la línea toolbar en false:
toolbar: false
Adicionalmente, si quieres por defecto el idioma en español debes modificar el siguiente fichero:
# vi /var/www/uvdesk/config/packages/translation.yaml
Modifica en línea del default de "en" a "es" y posteriormente realiza una limpieza de cache:
# cd /var/www/uvdesk && php bin/console c:c
Una vez que hayas terminado de configurarlo, modifica el entorno de dev a prod en el fichero:
# vi /var/www/uvdesk/.env
Esperamos haberte ayudado con este tutorial. ¿Lo has probado? ¡Déjanos tus comentarios! 🙂
Recuerda, si tienes consultas sobre esta u otra cuestión relacionada con tus servidores en Clouding, no dudes en escribir a soporte@clouding.io ¡Estamos a tu lado para lo que necesites!