Developpez.com - PHP
X

Choisissez d'abord la catégorieensuite la rubrique :


Diffusion de messages et mobilité : la M-shoutbox

Date de publication : 22 avril 2010

Par Loïc Maurois
 

Tweets, updates, chat, et consorts sont devenus familiers et vraiment utiles pour rester en contact avec ses proches et son réseau. Mais en situation de mobilité, comment faire ? Cet article décrit une solution simple sous la forme d'une application PHP5 basée sur l'API SMS d'Orange. Il s'agit d'un diffuseur de messages par SMS que nous appelons la M-shoutbox.
src Télécharger les sources.

       Version PDF (Miroir)   Version hors-ligne (Miroir)
Viadeo Twitter Facebook Share on Google+        



I. La M-Shoutbox, qu'est-ce-que c'est ?
I-A. Exemple de discussion
I-B. Administration via SMS
II. En savoir plus sur le cœur de l'application
III. Conclusion


I. La M-Shoutbox, qu'est-ce-que c'est ?

D'une manière générale, une Shoutbox (anglicisme pour "boîte à discussion") est un système de messagerie instantanée, intégré dans une page Web qui permet aux internautes de laisser des messages et dialoguer sur le site Web.

La M-Shoutbox vous permet de contacter par SMS un ensemble de personnes qui sont inscrites dans votre shoutbox. Le producteur du message envoie un SMS comprenant un mot-clef identifiant, ainsi que le contenu du message, puis celui-ci est diffusé à l'ensemble des personnes inscrites dans la shoutbox.

Les personnes sont inscrites par le propriétaire de la M-shoutbox :


I-A. Exemple de discussion

John Smith décide d'envoyer un message au groupe configuré dans sa M-Shoutbox : il envoie un message au 31244 suivant le schéma <le mot-clef> <son message> :

Le serveur envoie le message à tous les contacts, il a au passage reconnu que le SMS provenait de John.

Chaque membre du groupe a reçu le message, les dialogueurs peuvent à leur tour répondre.

Jason Mac Lane répond immédiatement au message en suivant le même principe <le mot-clef> <son message> :


I-B. Administration via SMS

Grâce à son téléphone portable, John Smith peut administrer à distance la M-Shoutbox en envoyant de simples commandes par SMS comme ici :

Toutes ces actions peuvent également se faire par la page d'administration de l'application sur le serveur PHP.


II. En savoir plus sur le cœur de l'application

L'application repose sur quelques éléments très simples à assimiler, développés en PHP :

Le cœur de l'application réside toutefois dans l'appel à l'API SMS d'Orange. Voici la méthode qui effectue cet appel :

function sendSMS ($api_access_key, $from, $to, $message, $proxy) {
	$reponse = "";
	$today = date("j-m-y, H:i:s");
	
	$log_msg = "OUTPUT call to '".URL_SEND_SMS."'; id=[$api_access_key]; from=[$from]; to=[$to]; content=[$message]";
	SMSLogger::getInstanceAndLog($log_msg, "INFO", true, false);
	
	$url = URL_SEND_SMS."?id=$api_access_key&from=$from&to=$to&content=&$message";
	// Check Proxy
	if ( strlen($proxy) != 0 ) {
		// proxy
		$opts = array('http' => array('proxy' => $proxy, 'request_fulluri' => true));
		$contexte = stream_context_create($opts);
		$response = file_get_contents($url, false, $conteste);
	} else {
		// No proxy
		$response = file_get_contents($url);
	}
	// store response into a debug file
	SMSLogger::getInstanceAndLog(analyseStatusCode(XMLParser::GetHttpBodyStatusCode($response)), "INFO", false, true);
	return $response;
}
C'est un appel REST à l'URL d'envoi de SMS d'Orange, qui contient 4 paramètres : une clé d'identification Orange, le numéro court émetteur, le téléphone du destinataire, et le message. Pour utiliser les Orange API, vous devrez vous inscrire (gratuitement) sur le site de l'API Orange et récupérer votre clé d'identification. Vous bénéficierez lors de l'inscription de 20 SMS gratuits pour tester les APIs.

Pour en savoir plus, vous pouvez consulter un didactitiel sur slideshare.com qui vous guidera plus précisément dans la configuration et l'utilisation de la M-Shoutbox.


III. Conclusion

Pour tester la M-shoutbox, chargez simplement le package M-Shoutbox, installez le sur un serveur PHP 5, et rendez-vous sur l'URL d'administration de votre serveur, puis laissez-vous guider. Nous avons essayé de rendre la prise en main de l'application très simple, tant pour l'installation que pour l'utilisation. Vous pouvez utiliser cette application telle quelle sur vos serveurs, ou vous en inspirer pour l'enrichir ou l'intégrer à votre site. Il y a de nombreuses adaptations possibles, parmi lesquelles :

Il existe bien d'autres API Orange utiles au quotidien. Vous pouvez aussi facilement intégrer dans vos applications des appels téléphoniques, des conférences téléphoniques, des serveurs vocaux interactifs, etc. Pour en savoir plus, rendez-vous sur le site Orange.



               Version PDF (Miroir)   Version hors-ligne (Miroir)

Valid XHTML 1.0 TransitionalValid CSS!

Copyright © 2010 Loïc Maurois. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts. Droits de diffusion permanents accordés à Developpez LLC.

Contacter le responsable de la rubrique PHP