Documentation du Dr FRAPPE

Ce wiki regroupe les résultats de mes expériences en informatique accumulés au cours de mes recherches sur le net.

Dans la mesure du possible, j'ai cité mes sources ; il en manque certainement… :-)

osTicket : un système de support par ticket

1. Introduction

2. Pré-requis

  1. Prérequis pour l’installation d’osTicket :
    • Serveur Web sous Windows ou Linux (IIS ou Apache)
    • PHP v5.3 ou supérieur
    • MySQL v5.0 ou supérieur
  2. Recommandé pour disposer de toutes les fonctionnalités :Installez les paquets php-gd,php-imap,php-xml,php-json,php-gettext,php-mbstring,php-intl,php-apcu
    ou en ligne de commande :
    $ sudo apt install php-gd php-imap php-xml php-json php-gettext php-mbstring php-intl php-apcu
    
  • php-xml pour l’envoi de mail en HTML et XML API
  • php-json améliore les performances
  • php-gettext améliore les performances
  • php-mbstring est fortement recommandé pour toutes les installations

3. Installation

3.1. Mise en place

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.

3.1.1. Passage en français

Via FTP, envoyez le fichier fr.phar vers le répertoire /support/include/i18n

3.1.2. Premier démarrage et vérifications

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

4. Configuration

4.1. Configuration de osticket

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 :

  • Vous pouvez ouvrir votre osticket par l'URL indiquée Votre URL d'osTicket: :
  • ou le panneau de contrôle par l'URL indiquée Votre panneau de contrôle personnel::

4.2. OsTicket : Time tracking (temps passé sur un ticket)

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 :

  • Le fichier texte contient les instructions d’installation.
  • Les deux répertoires contiennent les fichiers à inclure sur votre serveur web qui fait tourner osTicket.

Nous utiliserons les fichiers du répertoire Pre v1-10-4.

4.2.1. Requêtes SQL

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 :

Requetes
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.

4.2.2. Fichiers additionnels

Via FTP, envoyez les répertoires include et scp sur le serveur :

4.2.3. Activation des modules

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.

5. Utilisation

6. Désinstallation

7. Voir aussi


Basé sur « Article » par Auteur.

1)
Dézippez aussi l'archive zip contenue dans le premier dézippage
2)
par exemple via Filezilla