Service SMS-U |
|
|
Université de Paris 1 |
|
|
|
Manuel d'installation du Back Office |
L'application de Back office packagée se trouve dans le dossier /dist du projet.
Dézippez le contenue de la distribution la plus récente de esup-smsuapi dans un répertoire de travail.
Le paramétrage suivant est à effectuer dans le dossier ainsi créé.
Le back office nécessite un serveur de base de donnée MySQL en version 5.
Pour créer le schéma de base de donnée :
mysql -u root -p |
create database smsuapi ; |
Dans le fichier properties/config.properties, renseignez les paramètres relatifs à la base de donnée.
Il faut premièrement configurer le premier super utilisateur de l'application.
Pour ce faire, éditer le fichier «utils/database/populate_tables_esup-smsu-api.sql », puis modifier la ligne suivante
– Ajout du premier super administrateur |
Figure 1 : Fichier populate_tables_esup-smsu-api.sql
Il faut remplacer admin par le login de l'utilisateur qui sera le super administrateur.
A l'aide des scripts ant fournis avec le back office, créer les tables par la tache init-data
ant init-data |
Nb : Aucune table ne doit être présente dans le schéma smsuapi au moment de l'exécution de cette commande sous peine d'échec.
Nb : L'application étant lancée durant cette phase il faut que la configuration de l'application soit correcte avant de lancer la tache ant (cf chapitre 2.1.1)
Nb : Dû à un manque dans les classes appelées par la tâche init-data, il se peut que la tâche « ne rende pas la main » à la fin de son exécution. Ceci n'a pas d'impact sur les opérations effectuées.
Pour vérifier que les étapes précédentes se sont correctement déroulées :
mysql -u root -p |
use smsuapi ; |
show tables ; |
La liste des tables doit apparaître de la manière suivante :
------------------- |
|
Tables_in_smsuapi |
|
account |
|
application |
|
b_user |
|
b_user_admin |
|
b_vers_mana |
|
b_vers_mana_admin |
|
blacklist |
|
fonction |
|
institution |
|
role |
|
role_composition |
|
sms |
|
statistic |
|
user_bo_smsu |
|
Le back office se déploie en mode servlet.
Vérifier la configuration des fichiers :
L'application se lance par la tache ant start si le mode quick-start est paramétré dans le fichier build.properties :
ant start |
L'application peut être déployée dans un serveur d'applications existant, voir documentation du framework (http://www.esup-portail.org/pages/viewpage.action?pageId=1867791)
Deux fichiers de propriété permettent aux exploitants de paramétrer le Back Office : un fichier pour les paramètres généraux de l'application (config.properties) et un fichier pour les paramètres lié au broker (libmgs.properties).
Voici la liste des paramètres disponibles :
hibernate.connection.jdbc.url=jdbc:mysql://<host>:3306/smsuapi
Ce paramètre défini l'url de la base de donnée du back office.
hibernate.connection.jdbc.username=
Ce paramètre défini le login pour l'accès à la base de donnée du back office.
hibernate.connection.jdbc.password=
Ce paramètre défini le mot de passe pour l'accès à la base de donnée du back office.
hibernate.useJndi=false
Défini le mode d'accès à la base de donnée du back office.
sms.connector.olm.name=smsuapi
Ce paramètre défini le nom du connecteur OLM utilisé par l'application. Ce nom doit être identique à celui que l'on trouve dans le fichier libmgs.properties et notamment dans le champ libmgs.< name>.sid.
sms.connector.olm.propertyFile=/an/example/libmgs.properties
Ce paramètre défini le chemin d'accès vers le fichier contenant la configuration de la librairie MGS.
sms.connector.olm.olmSentStatusCode=0
Ce paramètre défini la valeur du statut envoyée par les acquittements d'OLM définissant un SMS transmis avec succès.
sms.connector.olm.olmErrorStatusCode=1
Ce paramètre défini la valeur du statut envoyée par les acquittements d'OLM définissant une erreur lors de la transmission d'un SMS.
sms.connector.olm.olmInvalidMSISDNCauseCode=10
Ce paramètre défini la valeur de la cause envoyée par les acquittements d'OLM définissant une erreur lors de la transmission d'un SMS du à un numéro invalide.
sms.connector.simulateSending=false
Ce paramètre sert à désactiver l'envoi effectif des messages au broker. Si à « true » alors aucun message ne sera envoyé au broker.
purge.sms.seniorityDay=90
Ce paramètre sert à définir la durée maximum (en jours) de conservation des SMS en base avant que ceux ci ne soient purgés.
purge.statistic.seniorityDay=365
Ce paramètre sert à définir la durée maximum (en jours) de conservation des statistiques en base avant que ceux ci ne soient purgés. Ces statistiques sont utilisés pour la création des rapports consolidés.
quartz.configFile.location=/an/example/smsuapi_quartz.properties
Ce paramètre défini le chemin d'accès vers le fichier de configuration de quartz.
quartz.buildStatisticsTrigger.cronExpression = 0 0 0 1 * ?
Ce paramètre défini l'expression cron qui est utilisée pour planifier la tache qui génère les statistiques nécessaires aux relevés consolidés.
quartz.purgeSmsTrigger.cronExpression = 0 0 3 1 * ?
Ce paramètre défini l'expression cron qui est utilisée pour planifier la tache qui purge les SMS.
quartz.purgeStatisticTrigger.cronExpression = 0 0 5 1 * ?
Ce paramètre défini l'expression cron qui est utilisée pour planifier la tache qui purge les statistiques.
Voici la liste des paramètres disponibles :
libmgs.smsuapi.sid=2421
L'identifiant unique de l'application (fourni par OLM)
libmgs.smsuapi.mode=sgs
Spécifie le mode de fonctionnement de la librairie (texte, voix, fax ...)
libmgs.smsuapi.mgs.messageUrl=https://sms.cvf.fr/cgi-bin/messages.cgi
Défini l'url à appeler pour envoyer des SMS.
libmgs.smsuapi.mgs.notifUrl=http://sms.cvf.fr/cgi-bin/notifications.cgi
Défini l'url à utiliser pour suivre les acquittements des SMS.
libmgs.smsuapi.https.keystore=/an/example/certificat.ks
Défini le chemin d'accès jusqu'au certificat utilisé pour communiquer avec OLM
libmgs.smsuapi.https.passwd=xxxxxxx
Défini le mot de passe du certificat
libmgs.smsuapi.log.type=file
Défini le type de logger utilisé par la librairie.
libmgs.smsuapi.log.file.path=/an/example/pushLibMGS.log
Défini le chemin d'accès du fichier de log utilisé par la librarie libMGS.
libmgs.smsuapi.advanced.notifTimeout=1
Défini la durée (en minute) avant que la connexion vers l'url de notification soit automatiquement fermée et ré-ouverte.
libmgs.smsuapi.timeout=15
Défini la durée (en seconde) du timeout.
Liste des paramètres :
org.quartz.dataSource.myDS.driver= org.gjt.mm.mysql.Driver
Défini le driver qui sera utilisé par quartz pour se connecter à la base de données.
org.quartz.dataSource.myDS.URL=jdbc:mysql://<host>/smsuapi
Défini l'adresse qui sera utilisée pour se connecter à la base de données.
org.quartz.dataSource.myDS.user = root
Défini le login a utiliser pour se connecter à la base de données.
org.quartz.dataSource.myDS.password = root
Défini le mot de passe a utiliser pour se connecter à la base de données
org.quartz.dataSource.myDS.maxConnections = 5
Défini le nombre de connections maximum qui peuvent être utilisées.
Les autres paramètres n'ont normalement pas à être modifiés, dans le cas contraire se référer à la documentation Quartz.
L'application de d'administration Back office packagée se trouve dans le dossier /dist du projet.
Dézippez le contenue de la distribution la plus récente de esup-smsuapiadmin dans un répertoire de travail.
Le paramétrage suivant est à effectuer dans le dossier ainsi créé.
L'administration du back office utilise la même base de données que celle du back office. Il n'y a donc pas de procédure d'installation de base de données pour l'administration du back office.
Le back office se déploie en mode portlet.
Vérifier la configuration des fichiers :
L'application se déploie par la tache ant deploy :
ant deploy |
Ajouter l'application dans le contexte du serveur du portail par le biais du fichier server.xml
<Server port="8007" shutdown="SHUTDOWN"> |
Figure 2 : Fichier server.xml
Il faut également modifier la configuration du connecteur http du portail, également par son fichier server.xml. il faut ajouter le paramètre emptySessionPath="true"
<!-- Define a non-SSL HTTP/1.1 Connector on port 8080 --> |
Figure 3 : Fichier server.xml
Ce paramètre permet à la servlet de téléchargement de fonctionner correctement.
Le reste du déploiement est conforme à un déploiement portlet dans le portail esup.
La portlet d'administration du back office se déploie par le biais du gestionnaire de canaux.
La configuration utilisée est la suivante :
Figure 4 : Intégration de la portlet au portail
Un fichier de propriété permet aux exploitants de paramétrer l'administration du Back Office.
Voici la liste des paramètres disponibles :
hibernate.connection.jdbc.url=jdbc:mysql://<host>:3306/smsuapi
Ce paramètre défini l'url de la base de donnée du back office
hibernate.connection.jdbc.username=root
Ce paramètre défini le login pour l'accès à la base de donnée du back office
hibernate.connection.jdbc.password=xxxx
Ce paramètre défini le mot de passe pour l'accès à la base de donnée du back office
hibernate.useJndi=false
Défini le mode d'accès à la base de donnée du front office.
auth.portal.uidAttribute=false
Défini le nom de l'attribut définissant l'uid.
cas.url=https://<host>:<port>/cas
Défini l'adresse du serveur cas.