Recevoir des SMS en javascript

Recevoir des SMS en javascript - HTML/CSS - Programmation

Marsh Posté le 06-03-2011 à 09:20:18    

Ce code présente comment recevoir des SMS dans un code javascript. Il repose sur une API d'SFR permettant de recevoir les SMS envoyes par des lignes SFR. De nombreuses API sont disponibles sur http://api.sfr.fr
 
Un fichier php, permet de déclencher les appels javascript vers le domaine des web services SFR et de protéger l'identifiant développeur d'un affichage du source javascript.
 
Il est possible de tester ce fichier en ouvrant http://hhoareau.free.fr/JQuerySFRAPI/index.htm et en envoyant gratuitement des SMS au 6010 depuis une ligne SFR commencant par #js#.
 

Code :
  1. <?php
  2. //ce fichier 'ajaxProxy.php' permet  
  3. //  - de contourner la règle de securite du javascript sur l'unicite de domaine
  4. //  - de proteger l'identifiant SFR API de l'affichage du source javascript
  5. //
  6. //ajaxProxy.php et les fichiers html hebergeant les fichiers javascrit doivent
  7. //imperativement etre sur le meme domaine.
  8. header("Content-Type: text/xml" );
  9. define("DEVTOKEN","0f0dfc69f4a3e15c4272edfa8af941ea" );
  10. //TOKEN généré à titre de demonstration par SFR,
  11. //il est conseiller de vous inscrire
  12. //sur api.sfr.fr pour obtenir votre propre token
  13. $url=$_GET['url'];
  14. if ( substr($url, 0, 7) == 'http://' ) {
  15. //s'il s'agit du domaine SFR API, on insère le token développeur
  16. if( substr($url,7,13) == 'ws.red.sfr.fr' ){
  17.  $url=$url."&token=".DEVTOKEN;
  18.  $url=str_replace("?&","?",$url);
  19. }
  20. //Ouverture du web service, l'hébergeur peut ne pas supporter  
  21. //fopen. cUrl peut être une alternative.  
  22. $handle = fopen($url, "rb" );
  23. while ( !feof($handle) ) {echo fread($handle, 8192);}
  24.    fclose($handle);
  25. }
  26. ?>
  27. <!-- le fichier index.html affiche les SMS envoyes gratuitement au 6010 commencant par #js# -->
  28. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  29. <html>
  30. <head>
  31. <!--  ici on inclu la librairie jQuery simplifiant les appels AJAX -->
  32. <script type="text/javascript" src="jquery-1.5.min.js"></script>
  33. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  34. <title>Javascript (JQuery) et SFR API</title>
  35. </head>
  36. <body>
  37. Pour voir apparaitre le message SMS : '#js# test' au 6010
  38. <script>
  39. const url_proxy="ajaxProxy.php";
  40. //l'usage d'un timer permet de scruter la file d'attente des SMS
  41. setInterval(function() {
  42.     $.getJSON(url_proxy+"?url=http://ws.red.sfr.fr/red-ws/red-b2c/resources/event/consume?responseType=json"
  43.       ,function(data){
  44.        //si un SMS arrive, le code de la structure data passe a 11,  
  45.        //voir sur api.sfr.fr le detail de la structure
  46.        if(data.redEvent.eventCode==11)
  47.         document.write("Mesage recu = "  + data.redEvent.eventMessage+"<br>" );
  48.        }
  49.       );
  50.     }
  51.   ,5000);
  52. </script>


 
Si vous avez d'autres idées ...
 
 

Reply

Marsh Posté le 06-03-2011 à 09:20:18   

Reply

Marsh Posté le 07-03-2011 à 20:03:39    

Ca sent la vieille pub foireuse... Il n'y a meme pas de question...

Reply

Marsh Posté le 07-03-2011 à 22:23:00    

Le but est de faire connaitre les API SFR. Certaines sont payantes mais d'autres sont gratuites comme celle de cet exemple : la réception de SMS. Disons qu'il y a plus agressif comme pub ;-).

Reply

Marsh Posté le 08-03-2011 à 00:25:13    

C'est un forum d'entraide, pas de promotion. Tes intentions sont louables, mais elles n'ont rien a faire ici...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed