Recevoir des SMS en Perl
Sur cette page, vous pourrez apprendre comment utiliser votre application Perl pour recevoir des messages SMS. Cet exemple de code source Perl est capable de collecter les messages entrants depuis la passerelle SMS et de les utiliser dans l'application. Il effectue cette opération en utilisant des requêtes HTTP. Ce guide montre à quel point il est facile de créer une application Perl et de l'exécuter sur votre ordinateur. Alors, commençons dès maintenant.
Qu'est-ce qu'une API SMS Perl ?
L'API SMS Perl permet d'envoyer des messages SMS depuis un programme écrit en Perl. Elle utilise des requêtes HTTP et une communication chiffrée SSL pour transmettre la demande d'envoi de SMS à la passerelle SMS.
Prérequis
Recevoir des SMS en Perl
- Ouvrez Notepad
- Copiez-collez l'exemple de code de cette page
- Enregistrez le fichier sous ReceiveSMS.pl
- Ouvrez Ozeki SMS Gateway et sélectionnez la connexion HTTP Server
- Ouvrez le formulaire HTML de la connexion HTTP Server
- Envoyez quelques messages de test
- Ouvrez l'Invite de commandes
- Tapez 'perl ReceiveSMS.pl' dans l'Invite de commandes et appuyez sur Entrée
L'exemple de code ci-dessous est libre d'utilisation dans votre propre solution ou application et vous pouvez le modifier si vous le souhaitez. Le code exemple peut collecter les messages depuis la passerelle SMS et les utiliser dans l'application Perl. Si vous souhaitez tester l'exemple, suivez simplement les instructions étape par étape ci-dessous ou regardez la vidéo qui montre clairement toutes les étapes à effectuer pour exécuter l'exemple SMS Perl.
#!/usr/bin/perl use strict; use warnings; use XML::Simple; use Data::Dumper; require HTTP::Request; require LWP::UserAgent; sub main { my $username = "john"; my $password = "Xc3ffs"; my $httpUrl = "https://127.0.0.1:9508/"; my $folder = "inbox"; my $limit = "3"; my $sendString = $httpUrl."api?action=receivemessage&username=" .$username."&password=".$password."&folder=" .$folder."&limit=".$limit ."&messagedata=&afterdownload=delete"; print "Sending html request: ".$sendString."\n\n"; my $request = HTTP::Request->new(GET => $sendString); my $ua = LWP::UserAgent->new ( ssl_opts => { verify_hostname => 0 }, ); my $response = $ua->request($request); print "Http response received :\n"; DisplayMessages($response->content) } main(); sub DisplayMessages { my $data = XMLin(@_); my $sender = ""; my $text = ""; if($data->{data}->{message} eq 'No more messages.') { print "The inbox is empty!"; return; } if (ref($data->{data}->{message}) eq 'ARRAY') { foreach my $value (@{ $data->{data}->{message} }) { $sender = $value->{originator}; $text = $value->{messagedata}; DisplayMessage($sender,$text); } } else { $sender = $data->{data}->{message}->{originator}; $text = $data->{data}->{message}->{messagedata}; DisplayMessage($sender,$text); } } sub DisplayMessage { print $_[0].": ".$_[1]."\n"; }
Étape 1 - Ouvrir Notepad
La première chose à faire pour compléter ce guide est de créer le fichier Perl que vous devez exécuter pour voir comment il récupère les messages SMS depuis la passerelle SMS. Donc, à ce stade, vous devez ouvrir l'application Notepad sur votre ordinateur pour pouvoir créer le fichier Perl. Pour cela, comme dans la Figure 1, cliquez sur son icône sur le bureau.
Étape 2 - Copier le code source Perl de cette page
Ensuite, vous devez récupérer le code source Perl de cette page pour l'utiliser sur votre ordinateur. Alors, remontez simplement jusqu'à la section de l'exemple de code et sélectionnez tout le code source. Ensuite, comme vous pouvez le voir dans la Figure 2, vous devez le copier dans votre presse-papiers. Cela peut être fait en appuyant sur Ctrl+C sur votre clavier.
Après avoir copié le code source Perl de cette page, vous devez le placer dans un document texte. Pour ce faire, allez simplement dans l'application Bloc-notes que vous avez ouverte précédemment, et comme vous pouvez le voir sur la Figure 3, appuyez sur Ctrl+V sur votre clavier pour coller l'intégralité du code source dans le document texte.
Étape 4 - Enregistrez le texte sous forme de fichier Perl
Le code source est maintenant placé dans le document texte, mais il n'a pas encore le bon format de fichier. Mais ce n'est pas un problème, vous pouvez le résoudre facilement avec le Bloc-notes. Sélectionnez simplement l'option 'Enregistrer sous', et ici, après avoir donné un nom au fichier, utilisez l'extension de fichier '.pl' comme le démontre la Figure 4. Si vous cliquez sur 'Enregistrer', le fichier sera enregistré dans le bon format Perl dont vous aurez besoin pour l'exécuter plus tard.
Étape 5 - Envoyez quelques messages de test
Après avoir configuré le fichier Perl, vous avez besoin de quelques messages dans votre dossier de réception. Pour terminer le test rapidement, vous pouvez simuler des messages entrants avec la connexion HTTP Server dans SMS Gateway. Si vous n'avez pas encore configuré cette connexion, vous pouvez voir comment configurer une connexion HTTP Server. Ouvrez donc SMS Gateway, et sélectionnez la connexion HTTP Server. Dans le menu de la connexion, ouvrez le formulaire HTML (Figure 5). Ici, vous pouvez écrire quelques messages dans SMS Gateway en définissant le destinataire sur 'Ozeki'.
Étape 6 - Ouvrez l'Invite de commandes
Pour exécuter le code Perl, vous avez besoin de l'Invite de commandes car elle offre un moyen simple d'exécuter le code. Tout d'abord, ouvrez l'Explorateur de fichiers et naviguez jusqu'au dossier où vous avez enregistré votre fichier Perl. Ici, comme vous pouvez le voir sur la Figure 6, tapez 'cmd' dans l'Explorateur de fichiers. Si vous appuyez sur Entrée, l'Invite de commandes s'ouvre dans une nouvelle fenêtre.
Étape 7 - Exécutez l'exemple Perl SMS
La dernière chose que vous devez faire est d'exécuter le programme Perl. Pour cela, vous devez simplement exécuter une commande simple dans l'Invite de commandes. La commande est 'perl *nomdufichier*.pl' comme le montre la Figure 7. Ensuite, appuyez sur Entrée pour exécuter le programme exemple. Le programme affiche la requête HTTP qui a été envoyée à SMS Gateway, et affiche également le message de réponse de SMS Gateway. Celui-ci contient tous les messages reçus par SMS Gateway.
Réflexions finales
Dans l'article ci-dessus, vous avez appris à recevoir des SMS en utilisant Perl. Utiliser un script Perl pour collecter les messages entrants signifie que vous pouvez utiliser ces messages dans un projet PHP. Vous pouvez commencer à automatiser la réception et l'envoi de SMS avec la puissance de Perl et Ozeki SMS Gateway. Grâce à Ozeki SMS Gateway, vous n'aurez pas de problèmes de performance grâce à la capacité de 1000 SMS par seconde du logiciel de passerelle. Cela améliorera grandement la communication au sein de votre organisation ou avec vos clients.
Visitez notre page web si vous souhaitez en savoir plus sur tous les langages de programmation que Ozeki SMS Gateway peut gérer. Vous pouvez accéder à l'article sur la gestion des SMS avec Python.
Si vous souhaitez travailler avec un logiciel SMS Gateway haute performance, téléchargez Ozeki SMS Gateway !