Pages enfant
  • Esup-papercut

Vous regardez une version antérieure (v. /wiki/display/EsupPapercut/Esup-papercut) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 18) afficher la version suivante »

Présentation

Esup-papercut est une (petite) portlet JSR286 (donc nécessite un EsupPortail / uPortal V4 ou supérieur) affichant les informations du compte Papercut de l'utilisateur.

Papercut est un outil payant de gestion d'impressions. Il propose notamment une gestion de quotas d'impressions. 

En plus d'afficher le nombre d'impressions et le quota restant, esup-papercut peut permettre à l'utilisateur de recréditer son compteur Papercut, ce via un paiment Paybox.

Paybox est un service de paiement en ligne (commercial) permettant de se décharger de la procédure de paiement en ligne via cartes bancaires, e-carte bleues, comptes paypal et autres. 

Éléments requis

Pour fonctionner, esup-papercut requiert :

  • Un ENT EsupPortail / uPortal V4 ou supérieur
  • la solution Papercut 
    • que celle-ci soit installée et en production dans l'établissement, 
    • que celle-ci utilise des comptes dont les identifiants sont connus dans l'ENT, 
    • que son Web Service soit accessible depuis l'ENT - IP déclaré dans le back-end papercut et token d'authentification connu de esup-papercut
  • un compte paybox est requis si vous souhaitez proposer la fonctionnalité de paiement en ligne
    • des paramètres d'identification de ce compte doivent être renseignés dans esup-papercut
    • esup-papercut utilise l'intégration paybox version hmac (sans module cgi) - il faut donc un compte paybox avec un hmac de configuré.
      Actuellement (contrainte paybox, cf documentation paybox ManuelIntegrationPayboxSystem_V6.1_FR.pdf fin de la page 18) si vous avez un compte paybox utilisé par une application faisant de l'intégration paybox version "module cgi" (ancienne méthode d'intégration), vous ne pouvez pas utiliser celui-ci (il faudra ouvrir un compte paybox supplémentaire). 

Téléchargement / code source

https://github.com/EsupPortail/esup-papercut

Configurations

Papercut / Paybox

Le fichier src/main/resources/META-INF/spring/applicationContextEsupPapercut.xml permet de rentrer les configurations nécessaires à la fois à Papercut et Paybox.

esup-papercut peut être publiée plusieurs fois dans le portail avec des configurations différentes (un esup-papercut de test et un de production par exemple).
Aussi la préférence portlet paperCutContext (test par défaut dans portlet.xml) doit correspondre à une "key" de la "map" esupPaperCutServices dans src/main/resources/META-INF/spring/applicationContextEsupPapercut.xml

Configs paybox dans applicationContextEsupPapercut.xml

  • site : numéro de SITE paybox (7 chiffres)

  • rang : numéro de RANG paybox (2 chiffres)
  • identifiant : numéro d’identifiant Paybox (1 à 9 chiffres)
  • devise : numéro de la devise (978 pour l'euro)
  • reponseServerUrl: url utilisée pour construire à la fois 
    • l'url de callback donnée à paybox : en /esup-papercut/servlet/payboxcallback
    • l'url portail sur la portlet esup-papercut pour la redirection de l'utilisateur après paiement sur paybox
  • payboxActionUrls: urls d'appel pour effectuer les transactions paybox
    • en production, pensez à supprimer l'url de test de paybox en preprod-tpeweb
    • paybox propose plusieurs urls pour redonder leurs services ; esup-papercut utilise la première url qui répond pour la proposer à l'utilisateur (un test de connexion est effectué)
  • payboxServersIP : esup-papercut vérifie sur l'url de callback que le client correspond bien à une de ces IP (paybox)
  • derPayboxPublicKeyFile : clef publique de paybox permettant de décoder la signature envoyée par paybox
  • hmacKey : clef privée (secrète) du compte paybox permettant à esup-papercut de construire le hmac contenant les paramètres du paiement (site, rang, identifiant, devise, montant, url de callback, ...), celui-ci est envoyé avec les paramètres non cryptés (et dans un ordre bien défini) à paybox via le client (post http)

Configs papercut dans applicationContextEsupPapercut.xml

  • server : serveur papercut présentant un accès HTTP(S) pour appel du Web Service
  • port : port du serveur papercut présentant un accès HTTP(S) pour appel du Web Service
  • authToken : token (secret) partagé avec papaercut (configuration disponible dans papercut).

Les préférences portlet (issues de portlet.xml) permettent également de configuer : 

  • papercutUserUidAttr : attribut correspondant à l'identifiant de l'utilisateur dans papercut 
  • userEmail : non utilisé pour l'instant
  • paperCutContext : la configuration papercut/paybox à utiliser - voir paragraphe ci-dessus.
  • validatePayboxJustWithRedirection : permet de valider le paiement paybox via l'interraction navigateur client -> ENT (en plus de paybox -> ENT) : nous conseillons de le laisser à false en production.
  • esupPapercutAdmin : groupe de l'ENT ayant accès à l'historique des transactions de tous les utilisateurs. 
  • htmlHeader : texte html en entête de portlet
  • htmlFooter : texte html en "pied de page" de portlet
  • payboxMontantMin : montant minimum proposé pour paiement paybox
  • payboxMontantMax : montant maximum proposé pour paiement paybox
  • payboxMontantStep : intervalle de la barre de sélection du montant
  • payboxMontantDefaut  : montant proposé par défaut pour paiement paybox

Base de données

esup-papercut utilise une base de données pour stocker (historiser) l'ensemble des transactions effectuées par l'utilisateur.

La configuration est à effectuer dans src/main/resources/META-INF/spring/database.properties

La base créée, la construction de la table peut se faire en démarrant une première fois esup-papercut avec dans src/main/resources/META-INF/persistence.xml le paramètre hibernate.hbm2ddl.auto à create.
Une fois ce premier démarrage effectué et donc la table créée, remettez hibernate.hbm2ddl.auto à update (afin que la base ne soit pas écrasée à chaque redémarrage !). 

Copies d'écran

Documentations papercut - paybox

Paybox

http://www1.paybox.com/telechargement_focus.aspx?cat=3

Papercut 

Web Service API : http://www.papercut.com/products/ng/manual/apdx-tools-web-services.html 

A noter que le logiciel papercut embarque une documentation plus usuelle avec code d'exemple (php et java notamment) à l'appui dans 

 [app-path]/server/examples/webservices/

Présentation

Erreur de création de la macro 'viewpdf'

com.atlassian.confluence.macro.MacroExecutionException: com.atlassian.confluence.macro.MacroExecutionException: The viewfile macro is unable to locate the attachment "esup-papercut-presentation.pdf" on this page

Contacts

Merci de vous abonner et d'utiliser la liste mail "esup-utilisateurs" pour nous contacter (problèmes techniques notamment) :

https://listes.esup-portail.org/sympa/info/esup-utilisateurs

Crédits & Licence

Copyright (C) 2013 Esup Portail http://www.esup-portail.org
@Author (C) 2013 Vincent Bonamy <Vincent.Bonamy@univ-rouen.fr>

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
        http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

 

  • Aucune étiquette