Application

NormSaaS est une solution en ligne de normalisation d’adresse postale qui utilise le format d’échange standard SOAP.

Ce WebService se réfère à une API afin d’envoyer et recevoir les adresses à traiter.

NormSaas est utilisé dans le cadre d’opérations de marketing direct, de Gestion de la Relation Client (Customer Relationship Management) ou encore de gestion commerciale (organisation de tournées ou de livraison).

LES BASES DU SAAS

  • Le mode SaaS. Il désigne une application, mise à disposition à distance par un prestataire, et accessible via un navigateur Web. Le mode SaaS permet de ne plus installer d’applications sur ses propres serveurs.
  • Le WebService. C’est un programme informatique permettant la communication et l'échange de données entre applications. C’est un ensemble de fonctionnalités basé sur le principe de demandes et réponses sur internet dont le protocole de communication est défini dans le cadre de la norme SOAP.
  • Le SOAP. Il s’agit d’un format d’échanges de données entre WebServices entre un client et un serveur ou entre deux serveurs qui permet de dialoguer et d’échanger des données en utilisant une nomenclature stricte.
  • L'API (Application Programming Interface). C’est une interface de programmation qui permet de délivrer à un partenaire un moyen d’échange de données au travers d’un WebService de type SOAP et REST.

EXEMPLE D'APPLICATION DU MODE SAAS

EXEMPLE D'INTÉGRATION

La société X a besoin d’envoyer 5000 catalogues sur une nouvelle base clients et souhaite optimiser l’envoi des PND.
Dans ce cadre-là, elle a besoin de normaliser cette nouvelle base.
L’équipe informatique de la société X peut très rapidement analyser chaque adresse de ce fichier en utilisant les outils mis à disposition par NormSaaS.

L’exemple ci-dessous illustre une méthode pour générer automatiquement les classes du Web Service :

					java -classpath "/lib/tools.jar"
					com.sun.tools.internal.ws.WsImport -p  -s
					
					https://www.normsaas.fr/addressProcessing/soap/v1.1/addressProcessor?wsdl
				

Le service web peut être consommé par un client Java par l'intermédiaire de classes générées par les outils de l'API JAX-WS. Pour générer automatiquement ces classes, il faut utiliser l'outil wsimport.

Il ne reste plus qu'à manipuler les classes générées comme dans l'exemple ci-après :

					public class NSaaSCliSample {
					public static void main(String[] args) throws NoSuchAlgorithmException,
					UnsupportedEncodingException
					{
					AddressIn adrIn = new AddressIn();
					AddressOut adrOut = new AddressOut();
					// WebService ticket to use
					String ticket = "ticketValue";
					// WebService user name
					String userName = "user@host.com";
					// WebService password
					String password = "passWord";
					// Generate random nonce
					SecureRandom random = new SecureRandom();
					String nonce = new BigInteger(32, random).toString(32);
					// Generate createdDate
					DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
					Date date = new Date();
					String createdDate = dateFormat.format(date);
					// Declare and initialize service call
					AddressProcessorService adrEngineService = new
					AddressProcessorService();
					AddressProcessor adrEngine = adrEngineService.getAddressProcessorPort();
					// Get data to process
					adrIn.setLine3("");
					adrIn.setPostCode("33160");
					// Compute digest
					String hashPass = SHA256(password);
					String digest = SHA256(hashPass + nonce + createdDate);
					// Call the Service
					adrOut = adrEngine.processAddress(adrIn, userName, digest, nonce,
					createdDate, ticket);
					// Exploit this results
					System.out.print("Return Code = " + adrOut.getReturnCode() + "\n");
					}
				
Lire la suite

EXEMPLES DE RETOURS RNVP

Les rejets

  • *R0* Champ Code Postal Vide
  • *R1* Impossible de reconstituer le couple postal / localité

Les litiges

  • *L0* Adresse à vérifier
  • *LA* Adresse à vérifier mais pratiquement certaine

Les acceptations

  • *000* Adresse sans modification fondamentale
  • *016* Le code postal a été forcé à partir du département et de la localité
Top