IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mobiles Discussion :

Présentation des API d'Orange : Services mobiles et services vocaux pour le web [Tutoriel]


Sujet :

Mobiles

  1. #1
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut Présentation des API d'Orange : Services mobiles et services vocaux pour le web


    L'équipe de développement des API Orange vient de mettre à la disposition des lecteurs de developpez.com un tutoriel présentant l'utilisation de leurs API :
    Présentation des API d'Orange : Services mobiles et services vocaux pour le web

    Merci à eux et en particulier à climagne pour le travail accompli et l'enthousiasme qu'elle a mis à mettre cet article à notre disposition.

    Bien entendu, n'hésitez pas à poster à la suite vos remarques, interrogations, commentaires mais aussi encouragements.


  2. #2
    Membre régulier
    Profil pro
    developpeur
    Inscrit en
    Février 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : developpeur

    Informations forums :
    Inscription : Février 2006
    Messages : 69
    Points : 79
    Points
    79
    Par défaut
    Comment est facturée l'envoie de SMS ?
    1envoie de SMS = 1 crédit ?
    1 crédit = combien d'euro ?

    Ceci dit, cette API me parait bien intéréssant.

  3. #3
    Membre habitué

    Profil pro
    Inscrit en
    Juin 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 7
    Points : 134
    Points
    134
    Par défaut
    Citation Envoyé par EsCrOw Voir le message
    Comment est facturée l'envoie de SMS ?
    1envoie de SMS = 1 crédit ?
    1 crédit = combien d'euro ?
    Avec le même compte Orange API, vous pouvez utiliser toutes les API disponibles.
    Le nombre de crédits débités dépend de l'API utilisée.

    Chaque crédit vaut 0.01 € TTC.
    Un SMS vers la France coûte 10 crédits, un SMS vers l'international coûte 15 crédits.
    => Donc un SMS vers la France coûte 0.10 €

    Pour plus d'information, vous pouvez aller voir ce lien :
    http://api.orange.com/fr/api/sms-api/tarifs,1

    Citation Envoyé par EsCrOw Voir le message
    Ceci dit, cette API me parait bien intéréssant.

  4. #4
    Membre actif
    Inscrit en
    Juin 2005
    Messages
    578
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 578
    Points : 240
    Points
    240
    Par défaut
    Bonjour
    J'aimerais juste vous rappeler que vous avez oublié (ou fait exprès) de mentionner le code en JAVA qui permet de recevoir les sms.
    Très bon tuto en passant,ça m'aide énormément .
    Encore merci

  5. #5
    Membre habitué

    Profil pro
    Inscrit en
    Juin 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 7
    Points : 134
    Points
    134
    Par défaut
    Bonjour,

    Je peux vous fournir un exemple très simple de code JAVA pour recevoir les SMS.
    Mais je mettrai bientôt à disposition un lien pour récupérer des SDK en JAVA / .Net (C#) / PHP qui utilisent les API et qui fournissent des exemples de code plus complets dans ces 3 langages.

    Pour recevoir un sms, il faut créer une servlet :
    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    package com.orange.api.sms.sample;
     
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    import com.orange.api.sms.business.data.ReceiveSms;
     
    public class ReceiveSmsServlet extends HttpServlet {
     
        private static final long serialVersionUID = 1L;
     
        protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
     
            String content = request.getParameter("content");
            String from = request.getParameter("from");
            String api = request.getParameter("api");	
     
            if (content != null && !content.equals("")) {
     
                String response = "Received sms from " + from + ", api was : " + api + ", and content was : " +  content;
     
                String header="<?xml version=\"1.0\" encoding=\"UTF-8\" ?> \n";
                System.out.println(header + response);
                response.getOutputStream().print(header + response);
     
                response.setCharacterEncoding("UTF-8");
                response.setContentType("text/xml");
            }
        }
    }

    Bonne continuation avec les API.

  6. #6
    Membre actif
    Inscrit en
    Juin 2005
    Messages
    578
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 578
    Points : 240
    Points
    240
    Par défaut
    Merci beaucoup,je vais l'exploiter,et j'attends avec impatience votre lien concernant les SDK.
    Mais pour l'instant j'ai un problème concernant l'envoi de sms.J'ai pu avoir une clé d'accès avec un compte crédité de 200.
    J'ai créé une page jsp qui récupère un numéro de téléphone et le message à envoyer sur le mobile.
    Ensuite j'ai créé une servlet tout en essayant votre code d'envoi de sms.Çà nous donne ceci:

    Code JAVA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    import java.util.logging.Level;
    import java.util.logging.Logger;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.*;
    import java.net.*;
     
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.xpath.XPath;
    import javax.xml.xpath.XPathExpressionException;
    import javax.xml.xpath.XPathFactory;
     
    import org.w3c.dom.Document;
    import org.xml.sax.SAXException;
     
    /**
     *
     * @author Mo
     */
    public class EnvoiMessage extends HttpServlet {
     
     
     
     
     
        @Override
        protected void doGet(HttpServletRequest requete, HttpServletResponse reponse)
        throws ServletException, IOException {
            doPost(requete , reponse);
        } 
     
     
        @Override
        protected void doPost(HttpServletRequest requete, HttpServletResponse reponse)
        throws ServletException, IOException {
          reponse.setContentType("text/html");
     
     
            String phoneNumber = requete.getParameter("telephone");
            String message = requete.getParameter("message");
     
            System.out.println(phoneNumber);
            System.out.println(message);
     
    		String textMessage = URLEncoder.encode(message, "UTF-8");
    		String apiAccessKey = "a1234b56789";
    		String url = "http://sms.alpha.orange-api.net/sms/sendSMS.xml?id="
    				+ apiAccessKey + "&to=" + phoneNumber + "&content="
    				+ textMessage;
     
        // Send GET request
        URL client = new URL(url);
        URLConnection conn = client.openConnection();
        InputStream responseBody = conn.getInputStream();
     
    	// Convert in XML document
    	Document response = null;
            try
            {
                response = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(responseBody);
            } 
            catch (ParserConfigurationException ex)
            {
            }
            catch (SAXException ex)
            {
     
            }
    	responseBody.close();
    	// Xpath expression to get the status
    	XPath xPath = XPathFactory.newInstance().newXPath();
    	String status;
     
            try {
                status = xPath.evaluate("/response/status/status_msg", response);
                System.out.println("Status: " + status);
     
            }
            catch (XPathExpressionException ex)
            {
            }
    	// display status
     
     
     
            }
        }

    Bien entendu j'ai masqué ma clé

    Donc quand je clique sur le bouton "Envoyer" de ma page web,la servlet est invoquée,mais j'ai le message suivant :
    Status: Unauthorized destination
    Je ne reçois aucun message(j'essaie d'envoyer le sms sur mon de téléphone), et mon crédit est intact.

    Merci beaucoup

  7. #7
    Membre habitué

    Profil pro
    Inscrit en
    Juin 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 7
    Points : 134
    Points
    134
    Par défaut
    Bonjour,

    Votre code java est correct car vous arrivez à atteindre l'API qui vous renvoie un de ses messages :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Code : 441
    Message : unauthorised destination (destination non autorisée)
    Cela vient donc du numéro de téléphone que vous avez utilisé.
    Est-ce qu'il est bien au format international ?
    Exemple pour la France : 336xxxxxxxx.

    Est-ce que vous êtes bien dans la zone de couverture pour l'envoi de SMS ?

  8. #8
    Membre actif
    Inscrit en
    Juin 2005
    Messages
    578
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 578
    Points : 240
    Points
    240
    Par défaut
    Bonjour
    Je suis bien dans la zone de couverture,l'opérateur est Orange Sénégal (je suis à Dakar).
    J'ai essayé 2 formats de numéro,avec l'indicatif (+22177xxxxxxx),et sans l'indicatif (77xxxxxxx).
    Mais toujours rien.
    Au fait pour pouvoir envoyer ou recevoir des sms,dois-je héberger mon site?
    Merci

  9. #9
    Membre habitué

    Profil pro
    Inscrit en
    Juin 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 7
    Points : 134
    Points
    134
    Par défaut
    Ca n'a rien à voir avec votre site, et le fait qu'il soit hébergé ou pas.
    Pour l'instant, le problème c'est d'avoir une réponse correcte de l'API, quelque soit le langage ou le code.

    Donc pour tester votre numéro, il faudrait que vous copiez-collez cette URL dans un navigateur web, en mettant à jour les paramètres id, from, to et content.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://run.orangeapi.com/sms/sendSMS.xml?id=[votre_API_Access_Key]&from=[numéro_court_d'émission]&to=[numéro_de_téléphone]&content=[votre_message_à_envoyer]
    Le champ from devrait contenir dans votre cas le numero 447797805210.

    Plus de détails ici concernant tous les paramètres.

  10. #10
    Membre actif
    Inscrit en
    Juin 2005
    Messages
    578
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 578
    Points : 240
    Points
    240
    Par défaut
    On dirait que c'est une erreur de ma part au niveau de l'indicatif.En effet je ne dois pas mettre le "+" n'est ce pas?
    Sinon il me semble que le message est partie car j'ai "Status : OK", et j'ai perdu du crédit dans mon compte.Mais je ne l'ai toujours pas reçu,apparemment ça prend du temps.Je vous fais signe si ça vient.

  11. #11
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 486
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 486
    Points : 2 082
    Points
    2 082
    Par défaut
    Bonjour,

    Merci pour ces informations et ce tuto, c'est très intéressant.

    Par contre dans mon cas on me demande d'utiliser l'interface M2SMS pour réaliser des campagnes d'information multicanal en interne + routage sms. Bien que le flux d'entrée diffère un peu, j'aurais voulu savoir quelles sont les spécifications que le corps du mail doit respecter.

    En effet, depuis un client de messagerie je n'ai aucun souci de parsing côté Contact Everyone. Par contre depuis le workflow que je mets en place, j'ai l'impression que le base encoding du mail ou le mimetype le rend illisible puisque la passerelle me retourne une erreur "le contenu du mail est vide".

    Je n'ai trouvé nulle part de doc sur le format de mail à respecter.

  12. #12
    Membre du Club

    Profil pro
    Inscrit en
    Juin 2010
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 40
    Points : 68
    Points
    68
    Par défaut API fermé
    J'ai cliqué sur api.orange.com et on a :


    Cher client, chère cliente,

    comme annoncé le 5 mars 2013, Orange a décidé l'arrêt des services d'Orange API. Cet arrêt définitif a pris effet le 12 septembre 2013
    .

    Dommage ....

  13. #13
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2014
    Messages : 1
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    Je suis à la recherche d'une solution d'envoi et de réception de SMS depuis une application.

    Est-ce que quelqu'un a des informations sur la future mise à disposition par Orange d'une nouvelle version de son API ?

    Si vous utilisez ce genre de services, à qui faites vous appel ?

    J'ai trouvé beaucoup de solutions d'envoi de SMS et peu de solution d'envoi ET de réception. Je recherche une solution qui me permette envoi et réception vers et depuis toute l'europe.

    Jean-Christophe.

  14. #14
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2014
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2014
    Messages : 112
    Points : 65
    Points
    65
    Par défaut Envoi de SMS
    Bonjour,

    J'ai développé sous Access 2013 une application devant permettre l'envoi de SMS déclenchés manuellement (Gestion des présences ou absences d'élèves) en m'appuyant sur ce site .

    Les API d'Orange n'étant plus d'actualités depuis Février 2013, j'ai demandé à Orange des soltutions de remplacement à savoir

  15. #15
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2014
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2014
    Messages : 112
    Points : 65
    Points
    65
    Par défaut Bonjour,
    Ma question est la même que celle de mon prédécesseur : Comment envoyer un SMS via un abonnement Orange (SMS Pro Illimités ou Contact Everyone) depuis la disparition des API Orange.

    J'ai une appli sous Access 2013 qui me prépare un SMS et dispose d'un abonnement SMS Pro illimités. Quid de l'interface entre les deux, Orange ne sachant pas me répondre ???

    Pourtant aujourd'hui beaucoup de distributeurs de matériels utilisent ce genre d'application pour prévenir leurs clients de la disponibilité de leur commande.

    Merci d'avance

    Roland

  16. #16
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2014
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2014
    Messages : 112
    Points : 65
    Points
    65
    Par défaut
    Bonjour,

    Dans une application de gestion de présence des élèves d’une école, j’ai un formulaire F_SMS rempli automatiquement via une requête et qui regroupe les données que je souhaite envoyer par SMS à chaque parent des élèves concernés par une absence.
    Ces données sont :
    - Nom Utilisateur
    - Mot de passe
    - N° compte
    - Numéro de téléphone et texte à envoyer
    J’utilise un API Essendex
    http://developers.esendex.com/APIs/REST-API/REST
    qui me redirige vers un Formulaire HTML d’envoi (doublon avec F_SMS) que je n’arrive pas à interfacer avec la BDD. J’obtiens bien les deux premiers éléments (Nom Utilisateur et Mot de passe) mais pas les autres champs
    Existe ’il un code standard (vb6, PHP,…) qui me permette de réaliser ceci.
    Merci

    Roland

  17. #17
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2014
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2014
    Messages : 112
    Points : 65
    Points
    65
    Par défaut Bonjour,
    Bonjour,

    Peu de réponse sur ce sujet !!

    Alors comme mon soucis est résolu avec le concours compétent du Support Esendex, je viens poster le code sur ce forum au cas où.....


    Code VBA : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Private Sub BtnSend_Click()
    'reference Microsoft Forms 2.0 Object Library doit être ajoutée
     
        Dim mainURL As String
        Dim finalURL As String
        Dim objXML As Object
        Dim strResponse As String
     
        Dim Username As String, Password As String, Account As String, Recipient As String, Body As String
     
     
        'fill your data HERE
        'Username = "UsernameEssendex"
        Username = Form_F_SMS.Username.Value
        'Password = "Password Esendex"
        Password = Form_F_SMS.Password.Value
        'Account = "AccountEsendex"
        Account = Form_F_SMS.Account.Value
        'Recipient = "N° Tel"
        Recipient = Form_F_SMS.Recipient.Value
        'Body = "Message"
        Body = Form_F_SMS.Body.Value
     
     
        'mainURL
        mainURL = "https://www.esendex.com/secure/messenger/formpost/SendSMS.aspx?"
     
        'build URL - ne pas modifier
        finalURL = mainURL & "username=" & Username & "&password=" & Password & "&account=" & Account & "&recipient=" & Recipient & "&body=" & Body & " &plaintext=1"
     
        'set Post Url Object
        Set objXML = CreateObject("MSXML2.XMLHTTP")
     
        'open post url process
        objXML.Open "POST", finalURL, False
     
        'send message request
        objXML.send
     
        'retrieve response
        strResponse = objXML.responseText
     
        'display response (messageID)
        MsgBox strResponse
        'Ferme le Formulaire SMS
        DoCmd.Close acForm, "F_SMS"
     
    End Sub

    Cordialement

    Roland

  18. #18
    Expert éminent sénior

    Avatar de Francis Walter
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2012
    Messages
    2 315
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 2 315
    Points : 26 889
    Points
    26 889

  19. #19
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Novembre 2014
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Novembre 2014
    Messages : 112
    Points : 65
    Points
    65
    Par défaut Re
    Bonjour,

    Intéressant soit mais je n'ai rien vu sur l'envoi de SMS ??

  20. #20
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Octobre 2013
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Octobre 2013
    Messages : 20
    Points : 18
    Points
    18
    Par défaut
    Bonjour,

    je suis allé sur le site https://developer.orange.com/ mais quelle API faut-il sélectionner sur le site d'orange pour l'envoi de SMS pour la France?

    Dans le code suivant pour recevoir un SMS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://sms.alpha.orange-api.net/sms/sendSMS.xml?id=[votre_clé_d_identification]a&to=[numéro_destinataire]&content=[texte_du_message]
    quelle est la clé d'identification à mettre : la clé de Application ID, Client ID, Client secret, Authorization header du site ou un autre?

    Actuellement, aucune clé fonctionne !!!

    Quelqu'un peut-il me répondre?

    Cdlt

Discussions similaires

  1. Réponses: 0
    Dernier message: 06/09/2012, 10h35
  2. [Node.js] Présentation des API DataGen, redis-stream et Cushion
    Par vermine dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 06/09/2012, 10h35
  3. Réponses: 10
    Dernier message: 10/12/2010, 10h31
  4. mashups à base des API d'orange
    Par maryame dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 05/04/2008, 22h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo