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