Contact Everyone® Manuel utilisateur Web Services (API) SOMMAIRE 1 Introduction 4 2 Présentation du Web Service MultiDiffusionWS 4 3 Utilisation du Web Service MultiDiffusionWS coté client 5 3.1 WSDL - Le contrat d’interface entre le client et le serveur 5 3.2 Prérequis environnement applicatif pour l’accès à L'API de Contact Everyone 6 3.3 Exigences de sécurité pour l’accès à l'API de Contact Everyone 7 3.3.1 Authentification 7 3.3.2 Confidentialité 7 3.3.3 Intégrité du contenu 7 3.3.4 Garanties du respect de la vie privée 7 3.4 Modalités pour Mise en place d'un accès à l'API de Contact Everyone 8 4 Tests de mise en service 9 4.1 Principe 9 4.2 Tests de connexion 9 5 Descriptifs des méthodes de L’API 10 5.1 Multidiffusion 10 5.1.1 Récupérer un ensemble d’informations concernant le compte client et valider le custID 10 5.1.2 Envoi d'un message multimédia 11 5.1.3 Envoi d'un message multimédia étendu 15 5.1.4 Ajout d’une pièce jointe à la demande de diffusion 17 5.1.5 Récupérer le résumé du compte rendu d’une ou plusieurs diffusions 18 5.1.6 Récupérer le compte rendu détaillé d’une ou plusieurs diffusions 20 5.1.7 Lister les listes de destinataires 22 5.1.8 Créer une liste de diffusion 23 5.1.9 Modifier une liste de diffusion 24 5.1.10 Supprimer une liste de diffusion 25 5.1.11 Stopper la diffusion d’un message 26 5.1.12 Récupération des MO (Mobile Originated) 27 5.1.13 Récupération des MO24s (Mobile Originated 24h) 29 5.2 Provisioning 30 5.2.1 Créer un nouveau diffuseur 30 5.2.2 Modifier un diffuseur 33 5.2.3 Supprimer un diffuseur 34 5.2.4 Retrouver les informations d’un diffuseur 35 5.2.5 Changer le mot de passe d’un diffuseur 37 6 Gestion des erreurs 38 6.1 sur les pièces jointes 38 6.2 Gestion des autres erreurs : erreur 901 38 7 Concept des données manipulées 39 7.1 Liste des destinataires (en entrée de sendMessage) 39 7.2 Liste de comptes rendus résumés de la diffusion de messages (en sortie de WSResultReport) 41 7.3 Liste de comptes rendus détaillés de la diffusion de messages (en sortie de WSListFullResultReport) 42 7.3.1 Exemples flux XML retourné 44 7.3.2 Codes retour du diagnostic 45 7.4 Tableau de descripteurs de listes de destinataires (en sortie de WSListDescriptor) 48 8 ANNEXES 49 8.1 Exemples flux XML 49 8.1.1 Exemple de flux XML pour l’appel de la méthode sendMessage 49 8.1.2 Exemple de flux XML pour l’appel de la méthode sendAdvancedMessage 51 8.1.3 Exemple de flux XML pour l’appel de la méthode listResults 53 8.1.4 Exemple de flux XML pour l’appel de la méthode stopMessage 54 8.1.5 Appel de la méthode createDispatcher 54 8.1.6 Retour suite à l’Appel de la méthode createDispatcher : 55 8.1.7 Retour suite à l’Appel de la méthode createDispatcher en cas d’erreur : 55 8.1.8 Appel de la méthode removeDispatcher : 56 8.1.9 Retour suite a l’appel de la méthode removeDispatcher 56 8.2 Personnalisation des messages 57 8.2.1 Variables prédéfinies 57 8.2.2 Personnalisation des variables 57 Introduction Le but de ce document est de fournir un guide à l’utilisation de l’API web service MultiDiffusionWS mis en œuvre pour le service Contact Everyone. Les destinataires de cette documentation sont des développeurs, éditeurs de logiciel, intégrateurs de service qui pourront intégrer la fonction de diffusion multimédia à leur application en fédérant les différents services offerts par le web service MultiDiffusionWS (sous condition d’avoir souscrit à l’option API web service). Présentation du Web Service MultiDiffusionWS Ce Web Service offre les services suivants : Multidiffusion ▪ Récupération de la version du Web Service et s'assurer que l'authentification du client à base de certificat se déroule correctement, ▪ Information sur la configuration du compte client. ▪ Diffusion d’un message, ▪ Diffusion de message avancé (différé, avec paramétrage durée, …), ▪ Résultats de diffusion, ▪ Résultats détaillés de diffusion (par destinataires), ▪ Gestion des listes de destinataires (listage, création, modification et suppression). Les listes de destinataires ainsi définies peuvent être utilisées pour une diffusion activée manuellement via l'interface Web de Contact Everyone. ▪ Stopper la diffusion d’un message ▪ Récupération des MO, Mobile Originated (option SMS+) ▪ Récupération des « Réponses sms » (option) Provisioning ▪ Ajout d’un nouveau diffuseur ▪ Modification d’un diffuseur existant ▪ Suppression d’un diffuseur existant ▪ Récupération des informations d’un diffuseur ▪ Changement du mot de passe d’un diffuseur Utilisation du Web Service MultiDiffusionWS coté client 1 WSDL - Le contrat d’interface entre le client et le serveur Les informations nécessaires coté client d’un web service sont condensées dans le WSDL (Web Service Description Layer). Ce WSDL décrit notamment les méthodes exposées du web service, les paramètres entrants et sortant de chaque méthode ainsi que son URL d’accès. Multidiffusion : il peut être récupéré à l’adresse suivante : https://www.api-contact-everyone.fr.orange- business.com/ContactEveryone/services/MultiDiffusionWS?wsdl Provisioning : il peut être récupéré à l’adresse suivante : https://www.api-contact-everyone.fr.orange- business.com/ContactEveryone/services/Provisioning?wsdl Le message « cette connexion n’est pas certifiée » peut apparaitre dans le navigateur car le certificat racine est auto-signé. Extrait du WSDL pour la méthode sendMessage(wsMessage) : 1. la méthode 2. le paramètre entrant 3. le paramètre sortant 4. l’ URL d’accès : 2 Prérequis environnement applicatif pour l’accès à L'API de Contact Everyone Orange Business Services s'est assuré de l'interopérabilité de son Web Service avec les moteurs de Web Services pour les solutions Java Axis (Environnement J2EE) et .NET (Microsoft). A noter que nous proposons et recommandons d'utiliser la librairie Axis (moteur de Web Services) au dessus des serveurs d'application J2EE tels que WebSphere, WebLogic, Jonas ou Tomcat. Il est également possible, dans un autre environnement supportant l'approche Web Service, de générer les classes/proxys permettant l'appel du Web Service à partir du contrat d'interface WSDL fourni. Afin d'assurer au mieux la compatibilité avec les différents environnements de développements récents du marché, Orange Business Services s'est assuré de la validité de son contrat d'interface WSDL du Web Service Contact Everyone au moyen des derniers tests d'interopérabilité WS-I. En dernier recours, pour des environnements plus anciens n'offrant pas la possibilité de faire tourner un moteur Web Services compatible avec les standards WS-I, il sera alors nécessaire de développer un applicatif intermédiaire de médiation entre l'applicatif client et le Web Service de Contact Everyone. Ce cas de figure (composant intermédiaire de médiation) peut également être mis en œuvre pour réaliser un accès centralisé au Web Service de Contact Everyone par plusieurs applicatifs clients (cf schéma ci-dessous). [pic] Figure 1 : Mise en œuvre d'un serveur de médiation pour accès à l'API du Web Service pour le service Contact Everyone 3 Exigences de sécurité pour l’accès à l'API de Contact Everyone Des mécanismes de protection permettant de garantir l'authentification, la confidentialité, l'intégrité du contenu et le respect de la vie privée, qui sont des exigences essentielles du point de vue de Orange Business Services, sont mis en œuvre pour l'accès par les applicatifs clients externe à Contact Everyone via son API Web Service. 1 Authentification Deux possibilités d’authentification sont offertes, une authentification par certificat SSL ou une authentification par identifiant / mot de passe. Authentification par certificat  Orange Business Services a choisi de mettre en place un système à base d'Authentification forte (par certificat client). Ces certificats sont attribués lors de la création du compte. Lorsqu’un applicatif souhaite entreprendre des actions via l'API, il doit s'authentifier en présentant le certificat qui lui a été délivré. Une authentification par certificat ne permet pas de différencier les diffuseurs d’un compte client dans les statistiques.  Authentification par identifiant / mot de passe Dans le but de pouvoir différencier les diffuseurs d’un compte client qui auraient diffusés depuis l’API, il est possible de s’authentifier en passant l’identifiant et le mot de passe du diffuseur (identique à l’interface Web) dans l’entête SOAP du flux XML envoyé à Contact Everyone. Il sera ainsi possible de visualiser les diffusions effectuées par chaque diffuseur dans les statistiques.  Remarque : En JAVA, il est nécessaire également d’utiliser le certificat contacteveryone.jks (fournit avec le kit de certificat) qui contient la clé publique de l’autorité de confiance qui a créé le certificat. Il ne permet pas de s’authentifier mais simplement d’autoriser la connexion avec le serveur de Contact Everyone. 2 Confidentialité Les données échangées sur Internet entre l'applicatif et le Web Service ne circulent pas en clair. Le dialogue entre l'applicatif et le Web Service est chiffré et s'effectue en HTTPS basé sur SSL (Secure Socket Layer). 3 Intégrité du contenu Le protocole de communication SSL vérifient l’intégrité des données transmises et assurent que les données ne soient pas corrompues. 4 Garanties du respect de la vie privée De par le cadre juridique français et notre sensibilité d'opérateur téléphonique le respect de la vie privée est au cœur de nos préoccupations sur cette offre de service de Contact Everyone. Le service est conçu pour mettre en œuvre de façon très fine des stratégies de diffusion qui s'adaptent aux exigences du contexte client et aux préférences des destinataires à joindre. 4 Modalités pour Mise en place d'un accès à l'API de Contact Everyone Lors de la configuration d'un accès à l'API Web Service de Contact Everyone pour un applicatif client, les éléments suivants sont mis en place : Un certificat pour le compte client est généré et délivré au partenaire intégrateur ou au client. Ce certificat a pour objectif de permettre à l'applicatif client de s'authentifier auprès du Web Service du service Contact Everyone. Un identifiant de compte client est produit et également remis au partenaire intégrateur ainsi que les paramètres d'accès et le manuel utilisateur de l'interface web standard de Contact Everyone. A ce compte client sont rattachées des stratégies de diffusion. Les stratégies doivent être ensuite désignées par leur nom dans le fichier de configuration lors des diffusions de messages. Elles sont modifiables via l'interface Web du service ; Il est à noter qu’en cas d’indisponibilité de Contact Everyone, il revient à la charge du client de réémettre les envois via l’API. Attention : un changement de nom client au niveau de l’IHM doit se traduire par la demande d’un nouveau certificat. Sinon le certificat ne sera plus reconnu et les diffusions par l’API ne se réaliseront plus. Tests de mise en service 1 Principe L’API de Contact Everyone permet - de gérer des diffusions sur les media de type mail, sms, vocal et/ou fax. - de gérer les diffuseurs 2 Tests de connexion Le test de connexion se fait par la méthode « about » • Installation des certificats Java ou .Net • Configurer les clients Java ou .Net. L’URL d’accès au service API est la suivante : https://www.api-contact-everyone.fr.orange- business.com/ContactEveryone/services/MultiDiffusionWS • Effectuer le test de connectivité avec la méthode about Paramètres d'entrée : aucun Paramètres en sortie : |Paramètre de sortie |Type |Description | |aboutReturn |Chaîne |API Webservice de l’offre CEO | Descriptifs des méthodes de L’API 1 Multidiffusion 1 Récupérer un ensemble d’informations concernant le compte client et valider le custID • méthode getAccountInformation. Paramètres en entrée : |Paramètre|Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne |Nom du compte client ou|Oui |32 caractères | | | |numéro de contrat | |maximum | Paramètres en sortie : |Paramètre de sortie |Type |Description | |custId |Chaîne |Nom du compte client. | |archiveTime |Chaîne |Délai d'archivage des messages | | | |en jour. | |status |Chaîne |Le statut de l'espace du | | | |client. | | | |Valeurs possibles : | | | |actif, inactif (suspendu), | | | |supprimé(résilié). | |strategy |Tableau de |Stratégie accessible pour le | | |chaîne |compte. | Remarque : Le custId correspond au nom du compte client ou au numéro de contrat (3 lettres + 6 chiffres). Il est possible de le vérifier dans l’onglet « Gestion », « mon compte » ou dans l’entête du mail « Kit de livraison » qui vous a été envoyé avec votre mot de passe : [pic] Exceptions : Lorsqu’un problème survient dans l’utilisation du web service, un code d’erreur est retourné pour aider à identifier le problème. |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |SoapHeaderCredentia| | |ls | |Erreur du gestionnaire de Multi-Diffusion (900). |- | 2 Envoi d'un message multimédia • méthode sendMessage. Paramètres d'entrée : |Paramètre |Description |Type |Requis |Contraintes | |d'entrée | | | | | |custId |Nom du compte |Chaîne |Oui |32 caractères maximum | | |client ou numéro de| | | | | |contrat | | | | |orgName |Paramètre inutilisé| |Non | | | |dans Contact | | | | | |Everyone : ne pas | | | | | |renseigner | | | | |sendProfiles |Liste des |Chaîne |Oui | | | |destinataires. |Voir ex | | | | | |ci-après | | | |from |Alias du mail si | |Non |40 caractères maximum | | |renseigné , sinon | | | | | |l’alias est le nom | | | | | |du compte client. | | | | |to |Paramètre inutilisé| |Non | | | |dans Contact | | | | | |Everyone : ne pas | | | | | |renseigner | | | | |subject |Sujet du message |Chaîne |Oui (*) |256 caractères maximum | | |(pour media de type| | | | | |mail). | | | | |content |Contenu détaillé du|Chaîne |Oui (*) |100 000 caractères | | |message(pour media | | |maximum excepté pour le | | |de type fax, mail, | | |média vocal car limité à | | |vocal). | | |1500 caractères | |resumeContent |Résumé du message |Chaîne |Oui (*) |160 caractères maximum | | |(pour media de type| | |(459 si option SMS LONG) | | |sms). | | | | |strategy |Désignation d'une |Chaîne |Oui |32 caractères maximum | | |des stratégies de | | | | | |diffusion du compte| | | | | |client. | | | | * : Les paramètres subject, content, resumeContent sont requis selon le type de media indiqué en colonne Description Un exemple de liste de destinataires : cette liste ne comporte qu’un destinataire avec 2 média mail et sms. DUDRET François ID_Profile1 personnal_messaging francois.dupont@orange.com mail personnal_mobile 0612345678 tel sms Il faut s’assurer que l’entête XML comporte bien : encoding="ISO-8859- 1" . Un PROFILE_LIST peut contenir plusieurs PROFILE. Un PROFILE peut contenir des champs personnalisés tels que : - Cc : Liste des adresses des destinataires en copie d’un mail séparées par un point virgule. - Cci : Liste des adresses des destinataires en copie cachée d’un mail séparées par un point virgule. Ces champs ne seront pris en compte que dans le cas d’un mail. Ils ne sont en aucun cas obligatoires. L’ensemble des Cc + Cci est limité à 10. Exemple : Un exemple de liste de destinataires : cette liste ne comporte qu’un destinataire avec personnalisation. DUDRET François ID_Profile1 CC adresseCc1@orange.com;adresseCc2@orange.com CCI adresseCci1@orange.com;adresseCci2@orange.com ... Un TERMINAL_GROUP peut contenir plusieurs TERMINAL. TERMINAL_NAME peut prendre plusieurs valeurs : - mail | personnal_messaging | email - office | home | phone1 => correspondant au téléphone fixe 1 - phone2 => correspondant au téléphone fixe 2 - personnal_fax - personnal_mobile | professional_mobile | mobile1 => on doit trouver pour cette balise MEDIA_TYPE_GROUP, celle-ci permet d'orienter l'utilisation du mobile soit pour le vocal (tel) soit pour le sms (sms), soit pour les deux. - mobile2 => correspondant au téléphone mobile 2 Paramètres en sortie : WSSendReport |Paramètre de sortie |Type |Description | |WSSendReport |msgId |Chaîne |Identifiant de diffusion.| Remarque : l'association message à diffuser / média(s) de réception du destinataire est fixée par la stratégie. L'autorisation de diffusion 'vocale' 'sms' 'email' 'fax' ne peut être gérée que via l'IHM web de Contact Everyone en paramétrant les différentes stratégies de votre compte client. Remarque PHP : Pour le développement en PHP, il est important de renseigner le paramètre d’entrée fullContenu (n’apparaissant pas dans le tableau ci-dessus) à true. De plus, il est conseillé de passer le paramètre sendProfiles en chaîne de caractères et non d’utiliser un fichier XML. Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |Diffusion impossible car dépasse votre quota (111) |custId | |valable uniquement pour un compte de démo | | |La liste des destinataires est manquante (200). |sendProfiles | |La liste des destinataires n’est pas valide (201). |sendProfiles | |Le nom des champs de personnalisation ne doit pas |sendProfiles | |dépasser 30 caractères (202). | | |La valeur des champs de personnalisation ne doit pas |sendProfiles | |dépasser 256 caractères (203). | | |Le nom d'un terminal de la liste des destinataires n'est |sendProfiles | |pas valide (cf. page 41) (210) | | |Le nombre de destinataires en copie et/ou copie cachée |sendProfiles | |est supérieur au maximum autorisé (10). Paramètre : | | |Personalization (CC/CCI) (250) | | |L'email n'est pas valide. Paramètre : Personalization (CC|sendProfiles | |ou CCi – adresse invalide) (251) | | |La stratégie de diffusion est manquante (300). |sendProfiles | |La stratégie de diffusion n'est pas valide pour le compte|sendProfiles | |client (301). | | |Diffusion impossible car elle dépasserait votre seuil |sendProfiles | |bloquant de SMS (302) | | |Le message à diffuser est manquant (400) |strategy | |Le champ content est anormalement vide pour la stratégie |custId, strategy | |de diffusion (401). | | |Le champ resumeContent est anormalement vide pour la |resumeContent | |stratégie de diffusion (402) | | |Le champ subject est anormalement vide pour la stratégie |subject | |de diffusion (403) | | |Le sujet du message n'est pas valide (413). |content, | |Le contenu du message n'est pas valide (414). |resumeContent | |Le résumé du message n'est pas valide (415). |content | | | | | | | | | | 3 Envoi d'un message multimédia étendu • méthode sendAdvancedMessage. Paramètres d'entrée : |Paramètre |Description |Type |Requis|Contraintes | |d'entrée | | | | | |custId |Nom du compte client ou |Chaîne |Oui |32 caractères | | |numéro de contrat | | |maximum | |orgName |Paramètre inutilisé dans | |Non | | | |Contact Everyone : ne pas | | | | | |renseigner. | | | | |sendProfiles |Liste des destinataires. |Chaîne |Oui | | | | |Voir ex dans| | | | | |sendMessage | | | |from |Alias du mail si | |Non |40 caractères | | |renseigné , sinon l’alias | | |maximum | | |est le nom du compte | | | | | |client. | | | | |to |Paramètre inutilisé dans | |Non | | | |Contact Everyone : ne pas | | | | | |renseigner | | | | |subject |Sujet du message (pour |Chaîne |Oui |256 caractères | | |media de type mail). | |(*) |maximum | |content |Contenu détaillé du message|Chaîne |Oui |100 000 caractères | | |(pour media de type | |(*) |maximum | | |fax,mail, vocal). | | | | |resumeContent |Résumé du message(pour |Chaîne |Oui |160 caractères | | |media de type sms). | |(*) |maximum | | | | | |(459 si option SMS | | | | | |LONG) | |mailReplyTo |Adresse e-mail de retour |Chaîne |Non |128 caractères | | | | | |maximum et format | | | | | |email | |telReplyTo |Numéro présenté |Chaîne |Non |10 chiffres maximum,| | | | | |format national | | | | | |français | |smsReplyTo |Nom émetteur sms |Chaîne |Non |11 caractères | | |personnalisé (souscription | | |maximum | | |option nécessaire, valeur | | | | | |par défaut) | | | | |faxReplyTo |Pour usage ultérieur |Chaîne |Non |Non utilisé | |strategy |Désignation d'une des |Chaîne |Oui |32 caractères | | |stratégies de diffusion du | | |maximum | | |compte client. | | | | |startCall |Date de début de diffusion |Calendar |Non |Cf. remarques | | | | | |ci-après | |validityPeriod|Durée de validité de la |Chaîne |Non |Cf. remarques | | |diffusion | | |ci-après | * : Les paramètres subject, content, resumeContent sont requis selon le type de media indiqué en colonne Description Remarque : l'association message à diffuser / média(s) de réception du destinataire est fixée par la stratégie. L'autorisation de diffusion 'vocale' 'sms' 'email' 'fax' ne peut être gérée que via l'IHM web de Contact Everyone en paramétrant les différentes stratégies de votre compte client. - La date de début de diffusion est une date précise. Si cette date de début n'est pas renseignée alors il s'agit d'une diffusion immédiate. Dans le cas où elle est fournie, la différence entre la date courante et la date de début doit être comprise entre 1 minute et 90 jours. C'est-à- dire qu'elle doit être supérieure à la date courante + 1 minute et ne doit dépasser date courante + 90 jours. - La diffusion peut être différée d’un minimum d’une minute soit 60000 ms et d’un maximum d’un an soit 776000000 ms (90 jours). Le Type correspond à un Calendar . - La durée de validité d'une diffusion est exprimée en relatif par rapport à l'heure de prise en compte de la requête de diffusion. Le format correspond à une chaîne désignant le nombre de minutes de la durée de validité. La durée de validité d'une diffusion doit être comprise entre 60 minutes (1 heure) et 4320 minutes (3 jours). Par défaut si le paramètre n'est pas renseigné la durée de validité est fixée à 240 minutes (4 heures) ; Paramètres en sortie : WSSendReport |Paramètre de sortie |Type |Description | |WSSendReport |msgId |Chaîne |Identifiant de diffusion.| Exceptions : Les exceptions de la méthode sendMessage sont également applicables et ne sont pas recopiées ici. Seules les exceptions spécifiques à sendAdvancedMessage sont listées ci-dessous. |Description et code |Paramètres d'entrée| |L’email de retour n’est pas valide (416) |mailReplyTo | |Le téléphone de retour n’est pas valide (417) |telReplyTo | |Le fax de retour n’est pas valide (419) |faxReplyTo | |La date différée n’est pas valide (en dehors des |startCall | |valeurs autorisées min : date courante + 1 minute, max| | |date courante + 90 jours) (420) | | |La durée de validité n’est pas valide (min 2H, max |validityPeriod | |72H). (421) | | 6 Ajout d’une pièce jointe à la demande de diffusion Certaines medias peuvent s’accompagner de fichiers binaires pour leur envoie. L’ajout de pièces jointes dans un email, d’un fichier audio pour une diffusion vocale ou d’un document pour un fax. Ces fichiers ne sont pas stockées dans la structure d’envoi de données mais au niveau de la trame SOAP. Les méthodes varies d’un langage, d’un environnement, d’une bibliothèque voire d’une version à l’autre. Il n’est donc pas possible de donner un descriptif commun d’usage. On notera toutefois la présence fréquente d’une méthode addAttachement Exemple de code java / Axis FileDataSource file = new FileDataSource("C/repertoire/exemple.txt"); DataHandler data = new DataHandler(file); AttachmentPart attachmentPart = new AttachmentPart(data); attachmentPart.setContentId("mdws-attached/exemple.txt"); myStubService.addAttachment(attachmentPart); myStubService.sendMessage(myMessage); Chaque fichier attaché est désigné par un identifiant dont le nom est normalisé comme suit : mdws-audio/nom.ext pour un fichier audio. Lié au media vocal. msws-attached/nom.ext pour un fichier autre. Les pièces jointes sont limitées en nombre et en taille en fonction du media utilisé. Exceptions : Les exceptions suivantes sont applicables aux méthodes ’sendMessage’ et ‘sendAdvancedMessage’’ uniquement dans le cas d’ajout de pièces jointes. |Description et code lié aux pièces jointes |Paramètres d'entrée| |La taille de la pièce jointe audio dépasse la taille |audioFile | |maximum autorisée (500). | | |Le nombre de pièce jointe audio dépasse le nombre maximum|audioFile | |admis maximum 1 pièce jointe audio (501). | | |La taille de la pièce jointe autre dépasse la taille |attachedFile | |maximum autorisée (520). | | |Le nombre de pièce jointe autre dépasse le nombre maximum|attachedFile | |admis maximum 1 pièce jointe autre (521). | | |Le nombre de pièces jointes dépasse le seuil autorisé qui|audioFile, | |est de 2 (551) |attachedFile | |Le fichier audio doit avoir une extension autoriséé |audioFile | |(.wav) (552). | | |La pièce jointe a une extension non autorisée (553) |attachedFile | |La pièce jointe n’est pas valide (554) |audioFile ou | | |attachedFile | Remarque : si une requête comporte plusieurs pièces jointes portant le même nom, celle-ci sera refusée pour pièce jointe non valide. 7 Récupérer le résumé du compte rendu d’une ou plusieurs diffusions suivant un filtre permettant de désigner ces diffusions. ▪ méthode listResults. Paramètres en entrée : |Paramètre |Type |Description |Requis |Contrainte| |d'entrée | | | |s | |custId |Chaîne |Nom du compte client ou |Oui |32 | | | |numéro de contrat | |caractères| | | | | |maximum | |msgIds |Tableau |Liste des identifiants |Liste des | | | |de Chaîne|pour les diffusions |identifian| | | | |demandées. |ts | | | | | | | | | | | |ou | | | | | | | | | | | |Le filtre | | | | | |(au | | | | | |minimum | | | | | |une date | | | | | |de début) | | |from | |Paramètre inutilisé dans | | | | | |Contact Everyone : ne pas | | | | | |renseigner. | | | |to | |Paramètre inutilisé dans | | | | | |Contact Everyone : ne pas | | | | | |renseigner. | | | |dateBegin |Date |Une date précise de | | | | | |diffusion ou la date de | | | | | |début dans le cas d'une | | | | | |plage calendaire de | | | | | |diffusion. | | | |dateEnd |Date |La date de fin dans le cas| | | | | |d'une plage calendaire de | | | | | |diffusion. | | | |status |Chaîne |Le statut de diffusion. | | | Remarques : - S'il existe à la fois une liste d'identifiants et un filtre de sélection, seule la liste des identifiants est prise en compte ; - L'applicatif client peut spécifier dans le filtre de sélection soit une date précise en utilisant le paramètre dateBegin soit une plage calendaire en utilisant les paramètres dateBegin et dateEnd. En conséquence, il n'est pas possible d'utiliser seul le paramètre dateEnd. Dans le cas où le seul le paramètre dateEnd est renseigné alors le filtre est considéré comme vide. - La précision des dates utilisées pour le filtre se limite à la minute. - On peut ajouter au filtre de recherche le statut de(s) diffusion(s). La liste des libellés des statuts des campagnes est INSERTED_IN_DATABASE, SENT_TO_NOTILUS, RUNNING, REJECTED, CANCELED, COMPLETED, FAILED_NOTILUS, CANCELING, PARTIALLY_SENT_TO_NOTILUS, FAILED_CANCEL. Les statuts REJECTED, CANCELED, COMPLETED sont des statuts finaux. [pic] Paramètres en sortie : |Paramètre de |Type |Description | |sortie | | | |reports |Tableau de |Une liste de résumés de comptes | | |ResultReport |rendus de la diffusion de messages.| | | |La description d’un résumé de | | | |compte rendu est fournie dans la | | | |section. | Remarques : - Dans le cas où aucun message ne correspond aux critères de sélection fournis, le compte rendu retourné correspondra à une liste vide. - Tant que la diffusion d’un message n’est pas achevée, le compte rendu n’est qu’une capture à un moment donné de l’état de diffusion et doit être redemandé ultérieurement pour bénéficier des éventuelles évolutions. Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |Le filtre de sélection est manquant (600). |custId | |Il n'existe pas d'identifiant ou de filtre de recherche |custId | |(601). | | |Le ou les identifiants fournis ne sont pas connus pour le|DName, custId | |compte client (602). | | |Le statut n'est pas valide (603). | | |La date de début de recherche doit être renseigée (604). | | | |msgIds,custId | | |status | 8 Récupérer le compte rendu détaillé d’une ou plusieurs diffusions suivant un filtre permettant de désigner ces diffusions. ▪ méthode listFullResults. Paramètres en entrée : |Paramètre |Type |Description |Requis |Contrainte| |d'entrée | | | |s | |custId |Chaîne |Nom du compte client ou |Oui |32 | | | |numéro de contrat | |caractères| | | | | |maximum | |msgIds |Tableau |Liste des identifiants |Liste des | | | |de Chaîne|pour les diffusions |identifian| | | | |demandées. |ts | | | | | | | | | | | |ou | | | | | | | | | | | |Le filtre | | | | | |(au | | | | | |minimum | | | | | |une date | | | | | |de début | | |Fi|from | |Paramètre inutilisé dans | | | |lt| | |Contact Everyone : ne pas | | | |re| | |renseigner. | | | | |to | |Paramètre inutilisé dans | | | | | | |Contact Everyone : ne pas | | | | | | |renseigner. | | | | |dateBegin|Date |Une date précise de | | | | | | |diffusion ou la date de | | | | | | |début dans le cas d'une | | | | | | |plage calendaire de | | | | | | |diffusion. | | | | |dateEnd |Date |La date de fin dans le cas| | | | | | |d'une plage calendaire de | | | | | | |diffusion. | | | | |status |Chaîne |Le statut de diffusion. | | | A la différence de la méthode ListResult, la méthode ListFullResult permettant d’obtenir le compte rendu détaillé qui contient en plus la liste des destinataires. Remarques : - S'il existe à la fois une liste d'identifiants et un filtre de sélection, seule la liste des identifiants est prise en compte ; - L'applicatif client peut spécifier dans le filtre de sélection soit une date précise en utilisant le paramètre dateBegin soit une plage calendaire en utilisant les paramètres dateBegin et dateEnd. En conséquence, il n'est pas possible d'utiliser seul le paramètre dateEnd. Dans le cas où le seul le paramètre dateEnd est renseigné alors le filtre est considéré comme vide. - La précision des dates utilisées pour le filtre se limite à la minute. - On peut ajouter au filtre de recherche le statut de(s) diffusion(s). La liste des libellés des statuts des campagnes est INSERTED_IN_DATABASE, SENT_TO_NOTILUS, RUNNING, REJECTED, CANCELED, COMPLETED, FAILED_NOTILUS, CANCELING, PARTIALLY_SENT_TO_NOTILUS, FAILED_CANCEL. Les statuts REJECTED, CANCELED, COMPLETED sont des statuts finaux. Paramètres en sortie : |Paramètre de |Type |Description | |sortie | | | |fullReports |Tableau de |Une liste de comptes rendus | | |FullResultReport|détaillés de la diffusion de | | | |messages. La description d'un | | | |compte rendu est fournie dans la | | | |section 7.3 | Tableau 1 : Liste des paramètres de sortie pour le cas d'utilisation Remarques : - Tant que la diffusion d'un message n'est pas achevée, le compte rendu n'est qu'une capture à un moment donné de l'état de la diffusion et doit être redemandé ultérieurement pour bénéficier des éventuelles évolutions ; - Dans certains cas, le compte rendu détaillé peut retourner une liste des destinataires vide. Ce cas peut par exemple arriver lors d'un appel qui a échoué ; - Dans le cas où aucun message ne correspond aux critères de sélection fournis, le compte rendu retourné correspondra à une liste vide.  Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |Le filtre de sélection est manquant (600). |custId | |Il n'existe pas d'identifiant ou de filtre de recherche |custId | |(601). | | |Le ou les identifiants fournis ne sont pas connus pour le|DName, custId | |compte client (602). | | |Le statut n'est pas valide (603). | | |La date de début de recherche doit être renseigée (604). | | | |msgIds,custId | | |status | | | | Nota : après une diffusion, on appliquera l’algorithme suivant pour récupérer l’état de la diffusion Pour avoir tous les états définitifs des appels, il est impératif que la diffusion soit dans un état final ( COMPLETED, REJECTED ou CANCELED ). Le listFullResults est, dans ce cas, totalement probant. Si le listFullResults est lancé avant, vous n'aurez que des résultats partiels. Le délai moyen de mise à jour du journal (et donc des diffusions ) est de 4- 5 minutes environ.   En conséquence, l'algorithme doit être le suivant :   1 ) lancement de la diffusion 2 ) tempo de 5 minutes 3 ) lancement de listResults pour obtenir le statut de la diffusion 4 ) si statut final          lancement de listFullResults et récupération des états et diagnostics de chaque appel          fin 5 ) sinon          tempo de 1 minute          retour en 3 6 ) fin Les listResults ou listFullResults peuvent être lancés pour une liste de diffusions ( liste de msgIds 1000 maximum ). Cela permet d’éviter les trop nombreuses requêtes vers le serveur API. 13 Lister les listes de destinataires • méthode getListDescriptors. Paramètres d'entrée : |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne |Nom du compte client ou |Oui |32 caractères | | | |numéro de contrat | |maximum | Paramètres en sortie : |Paramètre de |Type |Description | |sortie | | | |listDescriptors |Tableau de |Un tableau de descripteurs de | | |listDescriptor |listes de destinataires. La | | | |description d'un descripteur de | | | |liste de destinataires est fournie| | | |dans la section 7.4. | Remarques : Dans le cas où un compte client ne possède aucune liste de destinataires, le Web Service retournera une liste vide. Post-conditions • Récupération par l'applicatif client du tableau des listes de destinataires Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | | | | | | | 14 Créer une liste de diffusion • méthode addListDescriptor. Paramètres d'entrée : |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne |Nom du compte client ou |Oui |32 | | | |numéro de contrat | |caractères | | | | | |maximum | |list |WSListDescrip|Constitué de listName : |Oui | | | |tor |32 caractères maximum, | | | | | |listDescription : 1024 | | | | | |caractères maximum | | | |sendProfiles|Chaîne |Liste des destinataires. |Oui | | Paramètres en sortie : |Paramètre de sortie |Type |Description | |listId |Chaîne |Identifiant de la liste | Remarques : L'identifiant de la liste désigne une liste de manière unique pour un compte client donné. Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |La liste des destinataires est manquante (200). |sendProfiles | |La liste des destinataires n’est pas valide (201). |sendProfiles | |Le nom des champs de personnalisation ne doit pas |sendProfiles | |dépasser 30 caractères (202). | | |La valeur des champs de personnalisation ne doit pas |sendProfiles | |dépasser 256 caractères (203). | | |Le nom d'un terminal de la liste des destinataires n'est |sendProfiles | |pas valide (cf. page 41) (210) | | |Le nom de la liste de destinataires existe déjà (232). |sendProfiles | |La description détaillée de la liste de destinataires est|sendProfiles | |manquante (240). | | |La description détaillée de la liste de destinataires |sendProfiles | |n'est pas valide (241). | | |La description détaillée de la liste de destinataires |listName de list | |existe déjà (242). | | |Erreur du gestionnaire de Multi-Diffusion (900). |listDescription de | | |list | | |listDescription de | | |list | | |listDescription de | | |list | | |list | 17 Modifier une liste de diffusion • méthode modifyListDescriptor Paramètres d'entrée : |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne |Nom du compte client ou |Oui |32 caractères | | | |numéro de contrat | |maximum | |list |WSListDes|Constitué de |Oui | | | |criptor |listId : caractères | | | | | |numériques | | | | | |listName : 32 caractères| | | | | |maximum, | | | | | |listDescription : 1024 | | | | | |caractères maximum | | | |sendProfiles |Chaîne |Liste des destinataires.|Oui | | Remarques : - L'identifiant de la liste désigne une liste de manière unique pour un compte client donné ; - L'intitulé de la liste fourni remplace l'intitulé existant ; - La description détaillée de la liste fournie remplace la description détaillée existante ; - La liste de destinataires fournie annule/remplace en totalité la liste de destinataires existante ; - Un applicatif client ne peut modifier que les listes importées avec le même CustId. Paramètres en sortie : • Aucun Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |La liste des destinataires est manquante (200). |sendProfiles | |La liste des destinataires n’est pas valide (201). |sendProfiles | |Le nom des champs de personnalisation ne doit pas |sendProfiles | |dépasser 30 caractères (202). | | |La valeur des champs de personnalisation ne doit pas |sendProfiles | |dépasser 256 caractères (203). | | |Le nom d'un terminal de la liste des destinataires n'est |sendProfiles | |pas valide (cf. page 41) (210) | | |Le nom de la liste de destinataires est manquant (230). |listName de list | |Le nom de la liste de destinataires n'est pas valide |listName de list | |(231). | | |Le nom de la liste de destinataires existe déjà (232). |listName de list | |La description détaillée de la liste de destinataires est|listDescription de | |manquante (240). |list | |La description détaillée de la liste de destinataires |listDescription de | |n'est pas valide (241). |list | |La description détaillée de la liste de destinataires |listDescription de | |existe déjà (242). |list | |Erreur du gestionnaire de Multi-Diffusion (900). |list | | | | | | | | | | 19 Supprimer une liste de diffusion • méthode removeListDescriptor. Paramètres d'entrée : |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne |Nom du compte client ou |Oui |32 caractères | | | |numéro de contrat | |maximum | |listId |Chaîne |Identifiant de la liste |Oui |caractères | | | | | |numériques | Remarques : - L'identifiant de liste désigne une liste de manière unique pour un compte client donné ; - Un applicatif client ne peut supprimer que les listes importées avec le même CustId. Paramètre en sortie : • Aucun Exceptions : |Description |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |L’identifiant de la liste de destinataires est manquant |listId | |(220). | | |L’identifiant de la liste de destinataires n’est pas |listId | |valide (221). | | |L’identifiant de la liste de destinataires n’est pas |listId, custId | |associé à votre compte client (222). | | | | | | | | | | | 21 Stopper la diffusion d’un message • utiliser la méthode stopMessage. Paramètres d'entrée : |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne |Nom du compte client ou |Oui |32 caractères | | | |numéro de contrat | |maximum | |idMessage |int |Identifiant du message |Oui | | Remarques : - L'identifiant de message désigne un message de manière unique pour un compte client donné ; - Un applicatif client ne peut supprimer que les messages avec le même CustId. Paramètres en sortie : WSSendReport |Paramètre de sortie |Type |Description | |WSSendReport |msgId |Chaîn|Identifiant de | | | |e |diffusion. | Exceptions : |Description |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |L’identifiant du message n’est pas connu pour le compte |idMessage | |client (602). | | | | | | | | | | | 22 Récupération des MO (Mobile Originated) • utiliser la méthode listMOs. Paramètres d'entrée : |Paramètre |Type |Description |Requis |Contraint| |d'entrée | | | |ess | |dateBegin |Date |Une date précise de |Le filtre | | | | |réception ou la date de |(au | | | | |début dans le cas d'une |minimum | | | | |plage calendaire de |une date | | | | |réception. |de début) | | |dateEnd |Date |La date de fin dans le cas| | | | | |d'une plage calendaire de | | | | | |réception. | | | |shortNumber |Chaîne |Numéro court | | | |primaryKeyWord |Chaîne |Mot Clé primaire | | | |secondaryKeyWord|Chaîne |Mot Clé secondaire | | | Remarques : - L'applicatif client peut spécifier dans le filtre de sélection soit une date précise en utilisant le paramètre dateBegin soit une plage calendaire en utilisant les paramètres dateBegin et dateEnd. En conséquence, il n'est pas possible d'utiliser seul le paramètre dateEnd. Dans le cas où le seul le paramètre dateEnd est renseigné alors le filtre est considéré comme vide. - La précision des dates utilisées pour le filtre est de l’ordre de la seconde. Paramètres en sortie : |Paramètre de |Type |Description | |sortie | | | |WSResultsMO |Tableau de |Un tableau de MO du compte client | | |WSResultMO | | Un tableau de WSResultMO est une collection WSResultMO pour le compte client. Le WSResultMO est défini par les caractéristiques suivantes : |Nom attribut |Type |Description | |WSRe|receiveDate |Date |Date et heure de réception du MO | |sult| | | | |MO | | | | | |shortNumber |Chaîne |Numéro court | | |primaryKeyword |Chaîne |premier mot clé | | |secondaryKeyword |Chaîne |second mot clé | | |alias |Chaîne |Un alias ou le N° de mobile de | | | | |l’émetteur si SID dédié | | |message |Chaîne |Le sms réponse | | |campaignName |Chaine |Nom de la campagne de diffusion | | | | |associée à la réception du MO | Remarques : - Dans le cas où aucun message ne correspond aux critères de sélection fournis, le compte rendu retourné correspondra à une liste vide. Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |Le filtre de sélection est manquant (600). | | |La date de début de recherche doit être renseignée (604).| | |Le compte client n’a pas de configuration pour cette |shortNumber | |requête (700) |primaryKeyWord | | |secondaryKeyWord | 24 Récupération des MO24s (Mobile Originated 24h) • utiliser la méthode listMO24s. Paramètres d'entrée : |Paramètre |Type |Description |Requis |Contraint| |d'entrée | | | |ess | |dateBegin |Date |Une date précise de |Le filtre | | | | |réception ou la date de |(au | | | | |début dans le cas d'une |minimum | | | | |plage calendaire de |une date | | | | |réception. |de début) | | |dateEnd |Date |La date de fin dans le cas| | | | | |d'une plage calendaire de | | | | | |réception. | | | Remarques : - L'applicatif client peut spécifier dans le filtre de sélection soit une date précise en utilisant le paramètre dateBegin soit une plage calendaire en utilisant les paramètres dateBegin et dateEnd. En conséquence, il n'est pas possible d'utiliser seul le paramètre dateEnd. Dans le cas où le seul le paramètre dateEnd est renseigné alors le filtre est considéré comme vide. - La précision des dates utilisées pour le filtre est de l’ordre de la seconde. Paramètres en sortie : |Paramètre de |Type |Description | |sortie | | | |WSResultMO24 |Tableau de |Un tableau de MO24 du compte client| | |WSResultMO24 | | Un tableau de WSResultMO24 est une collection WSResultMO24 pour le compte client. Le WSResultMO24 est défini par les caractéristiques suivantes : |Nom attribut |Type |Description | |WSRe|messageMo |Chaîne |Le sms réponse | |sult| | | | |MO24| | | | | |number |Chaîne |Numéro court | | |receiveDateMo |Date |Date et heure de réception du MO | | |wsResultsMt24 |Tableau de |Une liste de messages MT à | | | |wsResultMt2|l’origine du Message MO avec leur | | | |4 |date de réception | | | | | | Remarques : - Dans le cas où aucun message ne correspond aux critères de sélection fournis, le compte rendu retourné correspondra à une liste vide. Exceptions : |Description et code |Paramètres d'entrée| |Votre applicatif client n’est pas authentifié (100). |DName, | | |soapHeaderCredentia| | |ls | |La date de début de recherche doit être renseignée (604).| | |La date de fin de recherche doit être renseignée (605). | | |Erreur du Web Service du Service de Multi-Diffusion, | | |option SMS24 pour listMO24 non disponible (902) | | 2 Provisioning 1 Créer un nouveau diffuseur • méthode createDispatcher Paramètres d'entrée : [pic] |Nom |Type |Description |Requis|Contraintes | |custId |Chaîne |Nom du compte client ou|Oui |32 caractères | | | |numéro de contrat | |maximum | | | |(CVOnnnnnn) | | | |Be|login |Chaîne |Identifiant du |Oui |256 caractères | |an| | |diffuseur | |maximum | |Di| | | | |doit être unique | |sp| | | | | | |at| | | | | | |ch| | | | | | |er| | | | | | | |firstname |Chaîne |Prénom du diffuseur |Oui |32 caractères | | | | | | |maximum | | |lastname |Chaîne |Nom du diffuseur |Oui |64 caractères | | | | | | |maximum | | |status |Chaîne |Activation du compte |Non |0 : activé | | | | | | |1 : désactivé | | | | | | |2 : supprimé | | |language |Chaîne |Langue du diffuseur |Non |fr : Français | | | | | | |en : Anglais | | |address |Chaîne |Adresse du diffuseur |Non |256 caractères | | | | | | |maximum | | |zipCode |Chaîne |Code postal du |Non |32 caractères | | | | |diffuseur | |maximum | | |city |Chaîne |Ville du diffuseur |Non |64 caractères | | | | | | |maximum | | |codeCountry |Chaîne |Pays du diffuseur |Non |Doit correspondre à| | | | | | |un nom de pays | | | | | | |valide | | |thresholdSms |Entier |Seuil mensuel de SMS |Non |Une valeur négative| | | | | | |désactive le seuil.| | |thresholdMail |Entier |Seuil mensuel de mail |Non | | | |thresholdFax |Entier |Seuil mensuel de Fax |Non | | | |thresholdVocal |Entier |Seuil mensuel de |Non | | | | | |messages vocaux | | | | |thresholdMms |Entier |Seuil mensuel de MMS |Non | | | |smsThresholdType|Booléen|Type de seuil pour le |Non |true : seuil | | | | |média SMS | |bloquant | | | | | | |false : seuil | | | | | | |indicatif | | |phone1 |Chaîne |Numéro de téléphone |Oui* |Doit correspondre à| | | | |fixe 1 | |un numéro de | | | | | | |téléphone valide | | | | | | |* : au moins un des| | | | | | |5 numéros doit être| | | | | | |renseigné | | |phone2 |Chaîne |Numéro de téléphone |Oui* | | | | | |fixe 2 | | | | |mobile1 |Chaîne |Numéro de téléphone |Oui* | | | | | |mobile 1 | | | | |mobile2 |Chaîne |Numéro de téléphone |Oui* | | | | | |mobile 2 | | | | |fax |Chaîne |Numéro de fax |Oui* | | | |mail |Chaîne |adresse mail du |Oui |256 caractères | | | | |destinataire | |maximum | | | | | | |Doit correspondre à| | | | | | |une adresse mail | | | | | | |valide | | | | | | |(nom@fournisseur.co| | | | | | |m par exemple) | Remarques : • Pour les différents seuils, la valeur que vous fournissez correspond au nombre maximal d’envoi que le diffuseur est autorisé à envoyer chaque mois. Si vous ne souhaitez pas mettre de seuil, spécifiez une valeur négative (-1 par exemple). • Lorsque certains champs facultatifs ne sont pas renseignés, l’application utilisera les valeurs par défaut suivantes : |Paramètre d'entrée|Valeur par défaut| |status |0 (actif) | |language |fr | |codeCountry |France | |smsThresholdType |false  | | |(indicatif) | Paramètres en sortie : [pic] |Nom |Type |Description | |BeanDispatcherResponse|login |chaîne |identifiant du diffuseur | | |password |chaîne |mot de passe associé au | | | | |login du diffuseur | Remarques : • Assurez-vous de conservez le mot de passe retourné : il est conservé de manière cryptée dans notre base de données et nous ne pourrions vous le rappeler en cas de perte. Exceptions : [pic] |Code |Description (message) |Paramètres | | | |concernés | |100 |Votre applicatif client n’est pas authentifié |DName, | | | |SoapHeaderCredentia| | | |ls | |1000 |Le format du login n'est pas valide |login | |1002 |Le login est déjà utilisé |login | |1003 |Le login est une chaîne vide |login | |1004 |Le login est "NULL" |login | |2000 |Le nom est une chaîne vide ou dépassant 64 |lastname | | |caractères | | |2001 |Le nom est "NULL" |lastname | |2002 |Le prénom est une chaîne vide ou dépassant 32 |firstname | | |caractères | | |2003 |Le prénom est "NULL" |firstname | |2004 |La valeur du statut n’est pas valide |status | |2005 |L'adresse dépasse 256 caractères |adress | |2006 |Le code postal dépasse 32 caractères |zipCode | |3000 |Le nom pays n'est pas reconnu |codeCountry | |3001 |La langue est inconnue |language | |3002 |L’adresse mail dépasse 256 caractères |mail | |3003 |L’adresse mail n’set pas valide |mail | |3004 |L'adresse mail est "NULL". |mail | |3005 |Le nom de la ville dépasse 64 caractères. |city | |3006 |Pas de numéro de téléphone valide. |phone1, mobile1 ou | | | |fax | |3007 |Le numéro de téléphone n’est pas valide. |phone1, phone2, | | | |mobile1 ou mobile2 | |3008 |Le numéro de fax n’est pas valide. |fax | |4000 |Problème lors de la sauvegarde du diffuseur. | | |4001 |Problème lors de la sauvegarde des seuils. | | |9001 |Erreur du webservice de gestion des diffuseurs | | 3 Modifier un diffuseur • méthode modifyDispatcher Paramètres d’entrée : Les paramètres d’entrée sont identiques à ceux de la méthode createDispatcher, référez-vous au paragraphe 5.2.1. Remarques : • Le login ne peut pas être modifié : c’est le champ qui permet d’identifier le diffuseur à modifier. • Les valeurs précédentes des autres champs ne sont pas conservées : si un champ n’est pas spécifié lors de la modification, les valeurs par défaut lui sont appliquées. Il est donc important de renseigner l’ensemble des champs, même ceux dont vous ne souhaitez pas changer la valeur. Vous pouvez utiliser la méthode retrieveDispatcher décrite page 36 pour retrouver ces informations. Par exemple : si vous ne précisez pas de numéro de fax qu’il était précédemment renseigné, il n’y aura plus de numéro de fax associé au diffuseur après modification. • Lors de la modification d’un diffuseur, la valeur courante de chaque seuil est conservée (sauf si le seuil est désactivé). Paramètres en sortie : Aucun Exceptions : [pic] En plus des exceptions communes avec la méthode createDispatcher indiquées au paragraphe 5.2.1, les codes d’erreur suivants peuvent survenir : |Code |Description (message) |Paramètres | | | |concernés | |100 |Votre applicatif client n’est pas authentifié |DName, | | | |SoapHeaderCredentia| | | |ls | |4002 |Problème lors de la modification du diffuseur | | |4003 |Le diffuseur associé au login spécifié n’a pas |login | | |été trouvé | | |4005 |Les seuils du diffuseur n’ont pas pu être | | | |retrouvés | | 4 Supprimer un diffuseur • utiliser la méthode removeDispatcher Paramètres d’entrée : [pic] |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne |Nom du compte client|Oui |32 caractères | | | |ou numéro de contrat| |maximum | | | |(CVOnnnnnn) | | | |login |Chaîne |Identifiant du |Oui |256 caractères | | | |diffuseur | |maximum | | | | | |doit être unique | Remarques : • Toutes les informations relatives au diffuseur sont supprimées, il n’est pas possible d’y accéder après suppression. Paramètres en sortie : Aucun Exceptions : |Code |Description (message) |Paramètres | | | |concernés | |100 |Votre applicatif client n’est pas authentifié |DName, | | | |SoapHeaderCredentia| | | |ls | |4003 |Le diffuseur associé au login spécifié n’a pas |login | | |été trouvé | | |4004 |Problème lors de la suppression du diffuseur | | |9001 |Erreur du webservice de gestion des diffuseurs | | | | | | | | | | | | | | 5 Retrouver les informations d’un diffuseur • méthode retrieveDispatcher Paramètres d’entrée : [pic] |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne|Nom du compte |Oui |32 caractères | | | |client ou numéro | |maximum | | | |de contrat | | | | | |(CVOnnnnnn) | | | |login |Chaîne|Identifiant du |Oui |256 caractères | | | |diffuseur | |maximum | | | | | |doit être unique | Remarques : • Cette méthode peut être utilisée en vu de conserver les informations d’un diffuseur lors de la modification de celui-ci Paramètres en sortie : [pic] |Nom |Type |Description | |Be|login |Chaîne |Identifiant du diffuseur | |an| | | | |Di| | | | |sp| | | | |at| | | | |ch| | | | |er| | | | | |firstname |Chaîne |Prénom du diffuseur | | |lastname |Chaîne |Nom du diffuseur | | |status |Chaîne |Activation du compte | | |language |Chaîne |Langue du diffuseur | | |address |Chaîne |Adresse du diffuseur | | |zipCode |Chaîne |Code postal du diffuseur | | |city |Chaîne |Ville du diffuseur | | |codeCountry |Chaîne |Pays du diffuseur | | |thresholdSms |Entier |Seuil mensuel de SMS | | |thresholdMail |Entier |Seuil mensuel de mail | | |thresholdFax |Entier |Seuil mensuel de Fax | | |thresholdVocal |Entier |Seuil mensuel de messages | | | | |vocaux | | |thresholdMms |Entier |Seuil mensuel de MMS | | |smsThresholdType|Booléen|Type de seuil pour le | | | | |média SMS | | |phone1 |Chaîne |Numéro de téléphone fixe 1| | |phone2 |Chaîne |Numéro de téléphone fixe 2| | |mobile1 |Chaîne |Numéro de téléphone mobile| | | | |1 | | |mobile2 |Chaîne |Numéro de téléphone mobile| | | | |2 | | |fax |Chaîne |Numéro de fax | | |mail |Chaîne |adresse mail du | | | | |destinataire | Exceptions : |Code |Description (message) |Paramètres | | | |concernés | |100 |Votre applicatif client n’est pas authentifié | DName, | | | |SoapHeaderCredentia| | | |ls | |4003 |Le diffuseur associé au login spécifié n’a pas |login | | |été trouvé | | |4005 |Les seuils du diffuseur n’ont pas pu être | | | |retrouvés | | |9001 |Erreur du webservice de gestion des diffuseurs | | | | | | | | | | 7 Changer le mot de passe d’un diffuseur • méthode changeDispatcherPassword Paramètres d’entrée : [pic] |Paramètre |Type |Description |Requis |Contraintes | |d'entrée | | | | | |custId |Chaîne|Nom du compte |Oui |32 caractères | | | |client ou numéro | |maximum | | | |de contrat | | | | | |(CVOnnnnnn) | | | |login |Chaîne|Identifiant du |Oui |256 caractères | | | |diffuseur | |maximum | | | | | |doit être unique | Paramètres en sortie : [pic] |Nom |Type |Description | |BeanDispatcherResponse|login |chaîne |identifiant du diffuseur | | |password |chaîne |mot de passe associé au login | | | | |du diffuseur | Remarques : • Assurez-vous de conservez le mot de passe retourné : il est conservé de manière cryptée dans notre base de données et nous ne pourrions vous le rappeler en cas de perte. Exceptions : |Code |Description (message) |Paramètres | | | |concernés | |100 |Votre applicatif client n’est pas authentifié |DName, | | | |SoapHeaderCredentia| | | |ls | |4003 |Le diffuseur associé au login spécifié n’a pas |login | | |été trouvé | | |4000 |Problème lors de la sauvegarde du diffuseur. | | Gestion des erreurs 1 sur les pièces jointes Exceptions : |Description |Paramètres d'entrée| |La taille de la pièce jointe audio dépasse la taille |audioFile | |maximum autorisée : 1Mo (500). | | |Le nombre de pièce jointe audio dépasse le nombre maximum|audioFile | |admis (maximum 1 pièce jointe audio). (501). | | |La taille de la pièce jointe autre dépasse la taille |attachedFile | |maximum autorisée : 1Mo (520) | | |Le nombre de pièce jointe dépasse le nombre maximum admis|attachedFile | |(maximum 1 pièce jointe autre) (521) | | |Le nombre de pièce(s) jointe(s) dépassent le seuil |audioFile ou | |autorisé (maximum 2) (551) |attachedFile | |Le fichier audio doit avoir une extension autorisée | | |(.wav) (552). | | |La pièce jointe à une extension non autorisée (553). | | |La pièce jointe n'est pas valide. Paramètre : audioFile |audioFile ou | |ou attachedFile (554). |attachedFile | |Celui-ci doit avoir la forme suivante : | | |mdws-audio/{name.ext} ou mdws-attached/{name.ext} | | |où {name.ext} est le nom de la pièce jointe | | | | | |Pour un fichier word "test.doc" la PJ doit être nommée :| | |"mdws-attached/test.doc" | | |Pour un fichier audio "test.wav" la PJ doit être nommée :| | |"mdws-audio/test.wav" | | Précision sur les formats de fichiers autorisés ou interdits : extension de fichier vocal autorisée : .wav extensions de fichiers joints non autorisées  pour les diffusions de mail : .ade,.adp,.app,.asp,.asx,.bas,.bat,.cer,.chm,.cmd,.com,.cpl,.crt,.csh,.exe,. fxp,.hlp,.hta,.inf,.ins,.isp,.js,.jse,.ksh,.lnk,.mda,.mdb,.mdt,.mdw,.mde,.md z,.msc,.msi,.msp,.mst,.ops,.pcd,.pif,.prf,.prg,.pst,.reg,.scf,.scr,.sct,.shb ,.shs,.tmp,.url,.vb,.vbe,.vbs,.vsmacros,.vss,.vst,.vsw,.ws,.wsc,.wsf,.wsh extensions autorisées de fichiers joints aux diffusions de fax : .pdf,.txt,.doc,.docx,.xls,.xlsx,.tif,.tiff,.jpg,.jpeg,.htm,.html,.ppt,.pptx, .rtf 2 Gestion des autres erreurs : erreur 901 L’erreur 901 est l’exception par défaut. Concept des données manipulées Nous présentons ici les concepts de données manipulés par Contact Everyone. Certaines caractéristiques servent pour initier une diffusion de message, d'autres n'ont de sens que pour présenter les résultats de diffusion. 1 Liste des destinataires (en entrée de sendMessage) |Nom attribut |Type |Description | |Liste des destinataires | |Dest|destId |Chaîne |Identifiant du destinataire | |inat| | |(identifiant unique, cf. | |aire| | |ci-dessous) | | |destName |Chaîne |Nom du destinataire (64 caractères| | | | |maximum, tronqué si plus de 64 | | | | |caractères) | | |destForeName |Chaîne |Prénom du destinataire (32 car. | | | | |maximum, tronqué si plus de 32 | | | | |caractères) | | |Liste de terminaux utilisés pour le destinataire | | |Termi|name |Chaîne |Nom du terminal (énumération : cf.| | |nal | | |ci-dessous) | | | |addr |Chaîne |Adresse du terminal ( adresse mail| | | | | |ou num.tel ) | | | |Liste des média disponibles sur le terminal | | | |Me|type |Chaîne |Type de média (énumération : | | | |di| | |mail_html, mail, tel, fax, sms) | | | |a | | | | Identifiant du destinataire (champ destId) Pour assurer le bon fonctionnement de la Diffusion et de son suivi, le champ destId doit systématiquement être unique. Ce champ destId est de type ID (dérive de  NCName et doit être unique). Cela implique qu'il doit commencer par une lettre ou le caractère '_' et n'accepte pas le caractère ':' (cf. spécifications XML Schéma : http://www.w3.org/TR/1999/REC-xml-names-19990114/#NT-NCName). |[4]|NCName |::= |(Letter | '_') (NCNameChar)* |/*An XML Name, | | | | | |minus the ":" */ | |[5]|NCNameChar|::= |Letter | Digit | '.' | '-' | | | | | || '_' | CombiningChar | | | | | || Extender | |   Exemple d'identifiants de destinataire erronés : 2ListeApp (l'identifiant commence par un chiffre), App:Profiles (le caractère ':' n'est pas accepte). Exemple d'identifiants de destinataire valides :   App-Profiles, IDProfile1. Enumération des noms de terminaux (champ Terminal.name) - mail | personnal_messaging | email - office | home | phone1 => correspondant au téléphone fixe 1 - phone2 => correspondant au téléphone fixe 2 - personnal_fax - personnal_mobile | professional_mobile | mobile1 => on doit trouver pour cette balise MEDIA_TYPE_GROUP, celle-ci permet d'orienter l'utilisation du mobile soit pour le vocal (tel) soit pour le sms (sms), soit pour les deux. - mobile2 => correspondant au téléphone mobile 2 Les adresses des terminaux doivent suivre les syntaxes suivantes : •         Tel fixe, tel mobile, fax (10 chiffres) : [0-9]{10,10} •         Tel ou Fax International : ^[+][1-9]{1,3}[0-9]{6,19} •         Email : ([\-\w_.'+])+@(([\-\w])+\.)+([\w]{2,4})   i.e : un numéro français pourra être de la forme 06nnnnnnnn ou +336nnnnnnnn ( 02nnnnnnnn ou +332nnnnnnnn ) un numéro international de la forme + (ind pays) (num tel) ex :+324nnnnnnnnnnn Les expressions régulières fournies suivent la syntaxe de Perl. La liste des destinataires correspond à une chaîne de caractères représentant le flux XML pour cette liste de destinataires. Nous donnons ci-dessous un exemple de flux XML attendu : Remarque : Dans les exemples xml, les couleurs n’ont pas de signification et ne sont utilisées que pour faciliter la lecture. Dupond Martine ID_Profile1 personnal_messaging martine.dupond@domicile.tm.fr mail Dupond Martine ID_Profile2 home 0123456789 tel 2 Liste de comptes rendus résumés de la diffusion de messages (en sortie de WSResultReport) Une liste de résumés de compte rendus est une collection de résumés de compte rendus de diffusion de messages. Le résumé de compte rendu de résultat de la diffusion d'un message est défini par les caractéristiques suivantes : |Nom attribut |Type |Description | |custId |Chaîne |Nom du compte client ou numéro de | | | |contrat | |orgName |Chaîne |Identifiant de l'organisation ou | | | |du service émetteur (non utilisé) | |Mess|msgId |Chaîne |Identifiant message généré | |age | | | | | |from |Chaîne |Alias ou adresse e-mail émetteur | | | | |du message (pour retour mail). | | | | |(non utilisé) | | |to |Chaîne |Alias destinataires. (non utilisé)| | |subject |Chaîne |Sujet du message. | | |content |Chaîne |Contenu détaillé du message. | | | | |(archivé pendant 3 mois). | | |resumeContent |Chaine |Resumé du message. (archivé | | | | |pendant 3 mois). | | |audioFileName |Chaîne |Nom de la pièce jointe audio (si | | | | |alimenté lors de l'envoi). | | | | |(archivé pendant 3 mois). | | |attachedFileName |Chaîne |Nom de la pièce jointe autre (si | | | | |alimenté lors de l'envoi). | | | | |(archivé pendant 3 mois). | | |status |Chaîne |Status de diffusion du message | | | | |(énumération : CREATED, SCHEDULED,| | | | |RUNNING, COMPLETED, CANCELED, | | | | |REJECTED, FAILED_NOTILUS, | | | | |SENT_TO_NOTILUS, | | | | |INSERTED_IN_DATABASE). | | |Date |Date |Date et heure de demande de | | | | |diffusion ou la date de | | | | |programmation différée. | |strategy |Chaîne |Nom de la stratégie. | |nbProfiles |Chaîne |Le nombre de destinataires dans la| | | |liste des destinataires fournie | | | |lors de l'envoi de message. | La seule différence (de taille) entre un résumé de compte rendu (en sortie de WSResultReport) et un compte rendu détaillé de la diffusion de messages (en sortie de WSFullResultReport), est que le résumé de compte rendu ne contient pas la liste des destinataires (et donc aussi les informations de déroulement de la diffusion par média). cf algorithme § 5.1.6 3 Liste de comptes rendus détaillés de la diffusion de messages (en sortie de WSListFullResultReport) Une liste de comptes-rendus détaillés est une collection de comptes-rendus détaillés de diffusion de messages. Le compte-rendu détaillé de résultat de la diffusion d'un message est défini par les caractéristiques suivantes : |Nom attribut |Type |Description | |custId |Chaîne |Nom du compte client ou numéro de | | | |contrat | |orgName |Chaîne |(non utilisé). | |Mess|msgId |Chaîne |Identifiant message généré | |age | | | | | |from |Chaîne | (non utilisé). | | |to |Chaîne | (non utilisé) | | |subject |Chaîne |Sujet du message. | | |content |Chaîne |Contenu détaillé du message. | | | | |(archivé pendant 3 mois) | | |resumeContent |Chaine |Résumé du message. (archivé | | | | |pendant 3 mois) | | |audioFileName |Chaîne |Nom de la pièce jointe audio (si | | | | |alimenté lors de l'envoi). | | | | |(archivé pendant 3 mois) | | |attachedFileName |Chaîne |Nom de la pièce jointe autre (si | | | | |alimenté lors de l'envoi). | | | | |(archivé pendant 3 mois) | | |status |Chaîne |Status de diffusion du message | | | | |(énumération : CREATED, SCHEDULED,| | | | |RUNNING, COMPLETED, CANCELED, | | | | |REJECTED, FAILED_NOTILUS, | | | | |SENT_TO_NOTILUS, | | | | |INSERTED_IN_DATABASE). | | |date |Date |Date et heure de demande de | | | | |diffusion ou la date de | | | | |programmation différée. | |strategy |Chaîne |Nom de la stratégie appliquée | |nbProfiles |Chaîne |Le nombre de destinataires dans la| | | |liste des destinataires fournie | | | |lors de l'envoi de message | |Liste des destinataires où les champs média ont été mis à jour par | |rapport au déroulement de la diffusion. | |Dest|destId |Chaîne |Identifiant du destinataire | |inat| | | | |aire| | | | | |destName |Chaîne |Nom du destinataire | | |destForeName |Chaîne |Prénom du destinataire | | |Liste de terminaux utilisés pour le destinataire | | |Termi|name |Chaîne |Nom du terminal (énumération : cf.| | |nal | | |section 7.1) | | | |addr |Chaîne |Adresse du terminal | | | |Liste des appels (call) effectués sur les média rattachés au | | | |terminal | | | |Call |type |Chaîne |Type de média (énumération : | | | |Media| | |mail_html, mail, tel, fax, sms) | | | | |res |Chaîne |Résultat de diffusion pour le | | | | | | |média issu de l'adaptateur | | | | |diag |Chaîne |Diagnostic complémentaire | | | | | | |(spécifique diffuseur[1]) | | | | |date |Date |Date/heure de l’enregistrement de | | | | | | |l'accusé de réception | Enumération des résultats de messages (champ Media.res) Les états possibles de résultats pour un appel vers un unique terminal : SCHEDULED : appel planifié UNSCHEDULED : appel pas encore planifié FAILED : appel échoué SUCCEEDED : appel réussi STOPPED : appel arrêté (suite à une commande ARRETER) TIMED_OUT : absence de réponse du diffuseur concerné Il est important de noter que le compte rendu détaillé peut dans certains cas ne pas avoir de données pour la liste des destinataires. Ce cas peut par exemple arriver lors d'un appel qui a échoué. cf algorithme § 5.1.6 1 Exemples flux XML retourné La liste des destinataires (attribut WSFullResultReport) correspond à une chaîne de caractères représentant le flux XML pour cette liste de destinataires. Nous donnons ci-dessous un exemple de flux XML retourné : , ID_Profile1 Dupond Martine personnal_messaging martine.dupond@domicile.tm.fr mail SUCCEEDED 000|Mail transmis au serveur : smtp- relais.contact-everyone.fr 2004-08- 12T14:58:00.000+02:00 ID_Profile2 Dupond Martine home 0123456789 tel SUCCEEDED 000|Message lu;* 2004-08- 12T14:58:00.000+02:00 Autre exemple de flux XML suite à un appel vocal avec aboutement: 10532894 phone1 numéro du destinataire 000|Message abouté(11);*123 2007-07-25 16:46:20.682 SUCCEEDED tel 00.00.39 2 Codes retour du diagnostic |Code |Description | |000 |Appel en succès (tous médias) | |001 |Erreur inconnue. | |002 |Erreur du gestionnaire de diffusion | |006 |Appel annulé | |999 |Message non remis pendant la durée de validité de la | | |campagne | |Vocal | |100 |Numéro incorrect ou format du numéro demandé incorrect | |101 |Destinataire occupé | |102 |Pas de réponse du destinataire | |103 |Numéro non attribué | |104 |Destinataire non atteint | |105 |Destinataire non atteint | |107 |Destinataire non atteint | |109 |Message non lu | |110 |Message non lu entièrement | |111 |Message non acquitté | |112 |Message déposé sur répondeur | |113 |Fax détecté | |150 |Message non abouté | |190 |File d'attente opérateur pleine | |SMS | |201 |Numéro incorrect ou format du numéro demandé incorrect | |202 |Carte SIM pleine | |203 |Ce mobile ne peut pas recevoir de SMS | |204 |SMS non remis | |205 |SMS non remis | |206 |SMS non remis | |207 |SMS non remis | |208 |Hors zone de couverture | |209 |Mobile occupé ou carte SIM pleine | |210 |Numéro bloqué | |211 |Numéro de mobile non attribué | |212 |Erreur opérateur | |213 |Numéro non conforme | |214 |Pas d'accusé de réception opérateur | |215 |STOP demandé par le destinataire | |Fax | |301 |Numéro incorrect ou format du numéro demandé incorrect | |304 |Fax non remis | |305 |Fax non remis | |307 |Fax non remis | |308 |Fax non remis | |309 |Numéro invalide ou format incorrect | |310 |Réponse vocale | |311 |Ligne occupée | |312 |Pas de réponse | |313 |Pas de porteuse | |314 |Problème réseau | |Mail | |401 |Mail non remis : format de l’adresse invalide | |402 |Désinscription demandée par le destinataire | |405 |Mail non remis | |406 |Mail non remis | |407 |Mail non remis | |408 |Mail envoyé au serveur SMTP | |409 |Mail avec AR non ouvert | |410 |Autre statut pour l'adresse | |411 |Mauvaise adresse de la boite aux lettres de destination | |412 |Mauvaise adresse du système de destination | |413 |Mauvaise syntaxe dans l'adresse de la boite aux lettres | | |de destination | |414 |Adresse ambiguë pour la boite aux lettres de destination | |415 |Adresse de la boite aux lettres de destination valide | |416 |La boite aux lettres a bougé | |417 |Mauvaise syntaxe pour l'adresse de la boite au lettre de | | |l'expéditeur | |418 |Mauvaise adresse du système de l'expéditeur | |420 |Statut de boite aux lettres autre ou indéfini | |421 |La boite aux lettres ne fonctionne pas; elle n'accepte | | |pas de messages | |422 |Boite aux lettres pleine | |423 |La longueur du message dépasse la limite | |424 |Problème d'accroissement de la liste de diffusion | |430 |Statut du système email autre ou indéfini | |431 |Le système email est plein | |432 |Le système n'accepte pas de message du réseau | |433 |Le système n'implémente pas les fonctionnalités | | |sélectionnées | |434 |Message trop grand pour le système | |440 |Statut autre ou indéfini du réseau ou du routage | |441 |Pas de réponse du serveur | |442 |Mauvaise connexion | |443 |Echec du serveur de routage | |444 |Impossibilité de router | |445 |Réseau encombré | |446 |Boucle de routage détectée | |447 |Temps de livraison expiré | |450 |Statut de protocole autre ou indéfini | |451 |Commande invalide | |452 |Erreur de syntaxe | |453 |Trop de destinataires | |454 |Arguments de commande invalides | |455 |Mauvaise version du protocole | |460 |Erreur de média autre ou indéfinie | |461 |Média non supporté | |462 |Conversion demandée et interdite | |463 |Conversion demandée et non supportée | |464 |Conversion avec perte effectuée | |465 |La conversion n'a pas réussi | |470 |Statut de sécurité autre ou indéfini | |471 |Livraison interdite, message refusé | |472 |Accroissement de la liste de diffusion interdite | |473 |Conversion de sécurité requise mais impossible | |474 |Fonctionnalités de sécurité non supportées | |475 |Echec du cryptage | |476 |Algorithme de cryptage non supporté | |477 |Echec sur l'intégrité du message | |500 |Mail non remis | |510 |Autre statut pour l'adresse | |511 |Mauvaise adresse de la boite aux lettres de destination | |512 |Mauvaise adresse du système de destination | |513 |Mauvaise syntaxe dans l'adresse de la boite aux lettres | | |de destination | |514 |Adresse ambiguë pour la boite aux lettres de destination | |515 |Adresse de la boite aux lettres de destination valide | |516 |La boite aux lettres a bougé | |517 |Mauvaise syntaxe pour l'adresse de la boite au lettre de | | |l'expéditeur | |518 |Mauvaise adresse du système de l'expéditeur | |520 |Statut de boite aux lettres autre ou indéfini | |521 |La boite aux lettres ne fonctionne pas; elle n'accepte | | |pas de messages | |522 |Boite aux lettres pleine | |523 |La longueur du message dépasse la limite | |524 |Problème d'accroissement de la liste de diffusion | |530 |Statut du système email autre ou indéfini | |531 |Le système email est plein | |532 |Le système n'accepte pas de message du réseau | |533 |Le système n'implémente pas les fonctionnalités | | |sélectionnées | |534 |Message trop grand pour le système | |540 |Statut autre ou indéfini du réseau ou du routage | |541 |Pas de réponse du serveur | |542 |Mauvaise connexion | |543 |Echec du serveur de routage | |544 |Impossibilité de router | |545 |Réseau encombré | |546 |Boucle de routage détectée | |547 |Temps de livraison expiré | |550 |Statut de protocole autre ou indéfini | |551 |Commande invalide | |552 |Erreur de syntaxe | |553 |Trop de destinataires | |554 |Arguments de commande invalides | |555 |Mauvaise version du protocole | |560 |Erreur de média autre ou indéfinie | |561 |Média non supporté | |562 |Conversion demandée et interdite | |563 |Conversion demandée et non supportée | |564 |Conversion avec perte effectuée | |565 |La conversion n'a pas réussi | |570 |Statut de sécurité autre ou indéfini | |571 |Livraison interdite, message refusé | |572 |Accroissement de la liste de diffusion interdite | |573 |Conversion de sécurité requise mais impossible | |574 |Fonctionnalités de sécurité non supportées | |575 |Echec du cryptage | |576 |Algorithme de cryptage non supporté | |577 |Echec sur l'intégrité du message | 4 Tableau de descripteurs de listes de destinataires (en sortie de WSListDescriptor) Un tableau de descripteurs de listes de destinataires est une collection de descripteurs de listes de destinataires. Un descripteur de liste de destinataires est défini par les caractéristiques suivantes : |Nom attribut |Type |Description | |listId |Chaîne |Identifiant d'un liste accessible | | | |par le Web Service. | |listName |Chaîne |Nom d'une liste accessible par le | | | |Web Service. | |listDescription |Chaîne |Description de la liste accessible| | | |par le Web Service. | Remarque : L'identifiant de la liste désigne une liste de manière unique pour un compte client donné. ANNEXES 1 Exemples flux XML 1 Exemple de flux XML pour l’appel de la méthode sendMessage Les paramètres client sont en rouge. login mot de passe Corps du mail, fax, vocal custId (non utilisée) false Corps du SMS <?xml version="1.0" encoding="ISO-8859- 1"?> <PROFILE_LIST> <PROFILE> <DEST_NAME>dupont</DEST_NAME> <DEST_FORENAME>jean</DEST_FORENAME> <DEST_ID>ID1</DEST_ID> <TERMINAL_GROUP> <TERMINAL> <TERMINAL_NAME>personnal_messaging</TERMINAL_NAME> <TERMINAL_ADDR>jean.dupont@orange- ftgroup.com</TERMINAL_ADDR> <MEDIA_TYPE_GROUP> <MEDIA_TYPE>mail</MEDIA_TYPE> </MEDIA_TYPE_GROUP> </TERMINAL> <TERMINAL> <TERMINAL_NAME>office</TERMINAL_NAME> <TERMINAL_ADDR>0123456789</TERMINAL_ADDR> <MEDIA_TYPE_GROUP> <MEDIA_TYPE>tel</MEDIA_TYPE> </MEDIA_TYPE_GROUP> </TERMINAL> <TERMINAL> <TERMINAL_NAME>personnal_mobile</TERMINAL_NAME> <TERMINAL_ADDR>0612354678</TERMINAL_ADDR> <MEDIA_TYPE_GROUP> <MEDIA_TYPE>sms</MEDIA_TYPE> </MEDIA_TYPE_GROUP> </TERMINAL> </TERMINAL_GROUP> </PROFILE> </PROFILE_LIST> Strategie utilisée Sujet du mail (non utilisée) 2 Exemple de flux XML pour l’appel de la méthode sendAdvancedMessage login Mot de passe Corps de texte du mail, fax, vocal custId Numéro de fax (non utilisée) false (non utilisée) Corps de texte SMS <?xml version="1.0" encoding="ISO-8859- 1"?> <PROFILE_LIST> <PROFILE> <DEST_NAME>DUPONT</DEST_NAME> <DEST_FORENAME>Jean</DEST_FORENAME> <DEST_ID>id_2</DEST_ID> <TERMINAL_GROUP> <TERMINAL> <TERMINAL_NAME>mobile1</TERMINAL_NAME> <TERMINAL_ADDR>0607153514</TERMINAL_ADDR> <MEDIA_TYPE_GROUP> <MEDIA_TYPE>sms</MEDIA_TYPE> </MEDIA_TYPE_GROUP> </TERMINAL> </TERMINAL_GROUP> </PROFILE> </PROFILE_LIST> Numéro de téléphone de retour pour SMS 2007-01-17T17:26:14.060Z (date de début de filtre) strategie Sujet du mail Numéro de téléphone pour retour vocal (non utilisée) false false false false false false 3 Exemple de flux XML pour l’appel de la méthode listResults login mot de passe custId Id du message1 Id du message2 4 Exemple de flux XML pour l’appel de la méthode stopMessage login mot de passe custId id du message 5 Appel de la méthode createDispatcher Les paramètres client sont en rouge. compteclient@orange- ftgroup.com monmdp NOM DU COMPTE MartinDupont Martin Dupond 6 rue du Recteur 14000 Caen france fr 0637252525 0237252525 MartinDupont@orange.fr 0 10 100 234 -1 200 true 6 Retour suite à l’Appel de la méthode createDispatcher : MartinDupont spz?8N 7 Retour suite à l’Appel de la méthode createDispatcher en cas d’erreur : soapenv:Server.generalException 1002 API Web Service Contact Everyone 1002 Un utilisateur avec le login "MartinDupont" existe déjà. Web Service Provisioning fr.ft.dps.contacteveryone.webservice s.server.provisioning.exception.ProvisioningException ID401459 8 Appel de la méthode removeDispatcher : compteclient@orange- ftgroup.com monmdp NOM DU COMPTE MartinDupont 10 Retour suite a l’appel de la méthode removeDispatcher 2 Personnalisation des messages 1 Variables prédéfinies Il est possible de personnaliser vos messages à partir des données envoyées par l’intermédiaire du sendProfiles. Ainsi, il est possible d’utiliser les variables suivantes : - Nom du destinataire renseigné entre les balises et - Prénom du destinataire renseigné entre les balises et - Adresse du terminal du destinataire renseignée entre les balises et Elles pourront être affichées/appelées dans le contenu du message à partir des variables suivantes (respectivement) : - - - Remarque : Les balises doivent être fermantes. 2 Personnalisation des variables Il est aussi possible de créer des champs personnels. Pour cela dans le sendProfiles, au même nœud que , ou , il suffit d'insérer les balises suivantes : Nom du champ Valeur associée au champ Ensuite, dans le corps de texte du message, il suffit de rappeler vos variables comme ceci : . (ATTENTION : La balise doit être fermante!) Remarques : La valeur du champ doit être au maximum de 256 caractères. Le nom du champ de personnalisation ne doit pas dépasser 30 caractères ni contenir de caractères accentués ou spéciaux. Voici ci-dessous un exemple de sendProfile :   DUPONT Antoine id_1 EXPEDITEUR Jean DUBOIS personnal_fax 0231000000 fax ----------------------- [1] Les différentes informations disponibles sur le diagnostic d'un appel dépendent fortement du terminal et donc du diffuseur utilisé lors de cet appel. Il n'y a pas de formalisme établi pour ce type d'information. ----------------------- Serveur de médiation Web Service Contact Everyone Applicatif client 1 Applicatif client 2 Code retour Temps d’aboutement Touches saisies : *,1 ,2 et 3 Durée totale de l’appel ----------------------- Page 58 sur 58