$ sudo apt install php-gd php-imap php-xml php-json php-gettext php-mbstring php-intl php-apcu
Téléchargez la dernière version d’osTicket sur le site officiel : https://osticket.com/download/ :
Enregistrez l’archive téléchargée où vous voulez, dézippez-la sur votre ordinateur 1) et envoyez le contenu du dossier upload sur votre serveur (via ftp).
Vous pouvez renommer ce dossier en support (par exemple).
L’idéal est de créer un sous-domaine du type support.monsite.tld qui pointe vers votre dossier support.
Via FTP, envoyez le fichier fr.phar vers le répertoire /support/include/i18n
Ouvrez votre navigateur et aller à l’adresse : http://monsite.tld/support/setup/ ou http://support.monsite.tld.
Si tout se passe bien, vous devriez tomber sur cette page qui affiche un aperçu des prérequis et de ce qui est activé ou non sur votre serveur.
Éventuellement, installez ce qui manque et re-testez.
Lorsque vous êtes prêt, cliquez sur Poursuivre
Une page prévient que le fichier de configuration est manquant :
Rien de grave, il faut simplement renommer 2) le fichier include/ost-sampleconfig.php en include/ost-config.php.
Une fois le fichier renommé, cliquez sur Poursuivre
On se retrouve maintenant sur l’écran de configuration des paramètres du CMS :
Ajoutez vos informations
Paramètres système | ||
---|---|---|
Nom du helpdesk | ||
Courriel par défaut | ||
Langue principale | français | |
Administrateur système | ||
Prénom | ||
Nom | ||
Adresse e-mail | ||
Nom d'utilisateur | ||
Mot de passe | ||
Paramètres de base de données | ||
Préfixe des tables MySQL | ost_ | |
Nom d'hôte MySQL | localhost | |
Base de données MySQL | ost | |
Nom d'utilisateur MySQL | root | |
Mot de passe MySQL |
et cliquez sur Installer maintenant
Nommez la base ost
Si vous avez le message d'erreur :
Informations de connexion à la base de données Impossible de se connecter au serveur MySQL : Access denied for user 'root'@'localhost' (using password: YES), voir 4.1. Débloquer root
Le message suivant s'affiche :
Profitez-en pour faire les modifications proposées : via FTP, changez les propriétés du fichier include/ost-config.php :
Notez les urls indiquées ou imprimez la page :
Cette fonctionnalité permet de suivre le temps passé sur un ticket.
On peut noter le temps passé sur chaque ticket et l’incrémenter à chaque intervention sur le même sujet, ce qui permet de facturer précisément le temps passé.
L’idée est de donc d’implémenter une solution permettant de noter le temps passé sur chaque ticket, pour que je puisse exporter le temps passé en fin de mois sur chaque client dans mon logiciel de facturation.
Une entreprise a créé le module osTicket_v1-10-xx_TimeTracking, gratuit et open source.
Téléchargez ce module sur la page https://www.strobe-it.co.uk/payg/opensource/ :
Dé-compressez cette archive : elle contient un fichier et deux répertoires :
Nous utiliserons les fichiers du répertoire Pre v1-10-4.
Vous allez d’abord devoir apporter des modifications sur la base de données d’osTicket. Un lot de requête à effectuer est proposé dans le fichier texte.
Nous utiliserons Adminer : une interface web pour gérer les BDD SQL.
Choisissez la base de données ost et sélectionnez Requête SQL.
lancez les requêtes indiquées dans le fichier texte de l'archive téléchargée :
INSERT INTO ost_list ( name , name_plural , sort_mode , masks , type , notes , created , updated ) VALUES ('Time Type', 'Time Types', 'SortCol', '13', 'time-type', 'Time Spent plugin list, do not modify', NOW(), NOW()); INSERT INTO `ost_list_items` (`list_id`, `status`, `value`, `sort`) SELECT ost_list.id, 1, 'Telephone', 1 FROM ost_list WHERE `name`='Time Type'; INSERT INTO `ost_list_items` (`list_id`, `status`, `value`, `sort`) SELECT ost_list.id, 1, 'Email', 2 FROM ost_list WHERE `name`='Time Type'; INSERT INTO `ost_list_items` (`list_id`, `status`, `value`, `sort`) SELECT ost_list.id, 1, 'Remote', 3 FROM ost_list WHERE `name`='Time Type'; INSERT INTO `ost_list_items` (`list_id`, `status`, `value`, `sort`) SELECT ost_list.id, 1, 'Workshop', 4 FROM ost_list WHERE `name`='Time Type'; INSERT INTO `ost_list_items` (`list_id`, `status`, `value`, `sort`) SELECT ost_list.id, 1, 'Onsite', 5 FROM ost_list WHERE `name`='Time Type'; INSERT INTO ost_config (`namespace`, `key`, `value`, `updated`) VALUES ('core', 'isclienttime', 0, now()), ('core', 'isthreadtime', 0, now()), ('core', 'isthreadtimer', 0, now()), ('core', 'isthreadbill', 0, now()), ('core', 'isthreadbilldefault', 0, now()), ('core', 'istickethardware', 0, now()); ALTER TABLE ost_thread_entry ADD COLUMN time_spent INT( 11 ) UNSIGNED NOT NULL DEFAULT '0' AFTER type; ALTER TABLE ost_thread_entry ADD COLUMN time_type INT( 11 ) UNSIGNED NOT NULL DEFAULT '0' AFTER time_spent; ALTER TABLE ost_thread_entry ADD COLUMN time_bill INT( 11 ) UNSIGNED NOT NULL DEFAULT '0' AFTER time_type;
Une fois le lot de requêtes lancé, vous devez obtenir un résultat OK pour chaque requête.
Sur le panneau d’administration, dans Paramètres vous trouvez un nouveau menu Temps.
Dans ce menu, vous pourrez activer différents points de fonctionnement de votre nouveau module.