Comment recevoir des SMS depuis PHP
La manière la plus simple d'envoyer des SMS depuis PHP est d'utiliser l'API HTTP/Rest SMS intégrée d'Ozeki SMS Gateway. Lorsque vous utilisez cette API, vous recevrez des messages SMS en envoyant une requête HTTP Get vers la passerelle SMS. La passerelle SMS renverra une réponse HTTP 200 OK à votre requête.
Code PHP pour recevoir des SMS depuis un mobile
L'exemple de code PHP pour les SMS ci-dessous montre comment vous pouvez envoyer des SMS en utilisant l'API HTTP REST SMS d'Ozeki SMS Gateway avec la bibliothèque PHP Ozeki.Libs.Rest. Cette bibliothèque vous est fournie gratuitement, et vous pouvez l'utiliser et la modifier dans n'importe lequel de vos projets.
SendSMS.csnamespace Ozeki_PHP_Rest { require 'MessageApi/MessageApi.php'; $configuration = new Configuration(); $configuration -> Username = "http_user"; $configuration -> Password = "qwe123"; $configuration -> ApiUrl = "http://127.0.0.1:9509/api"; $api = new MessageApi($configuration); $result = $api -> DownloadIncoming(); echo "Dossier : " . $result -> Folder; echo "
"; echo "Limite : " . $result -> Limit; echo "
"; echo strval($result); echo "
"; echo "Messages :"; echo "
"; foreach($result->Messages as $msg) { echo "De : ". $msg->FromAddress . " Texte : " . $msg->Text; echo "
"; } }
Comment utiliser l'exemple PHP pour les SMS :
Cet exemple PHP pour les SMS peut être utilisé dans n'importe quelle application PHP. Pour l'utiliser, vous devez ajouter le dossier MessageApi à votre projet. Vous pouvez utiliser la classe Message pour créer le SMS et vous pouvez utiliser la classe MessageApi pour envoyer le SMS à la passerelle SMS. La passerelle SMS transmettra votre message au réseau mobile soit via une connexion sans fil, soit via Internet.
Télécharger ReceiveSMS.php
Le code source expliqué dans cet article peut être téléchargé, utilisé et modifié gratuitement.
Téléchargement : ReceiveSMS.zip (5.9 Ko)
Que contient le fichier ReceiveSMS.zip ?
Le fichier SendSMS.zip contient la bibliothèque Ozeki.Libs.Rest.Php, qui vous fournit tous les outils nécessaires pour envoyer et recevoir des messages SMS. Vous trouverez également le projet ReceiveSms dans le zip, qui contient le code exemple pour vous montrer comment envoyer un SMS. Ce code exemple est listé ci-dessous.
Comment recevoir des SMS depuis PHP (étapes rapides)
Pour envoyer des SMS depuis PHP :
- Installez Ozeki SMS Gateway
- Connectez Ozeki SMS Gateway au réseau mobile
- Recevez un SMS test depuis l'interface Ozeki
- Créez un utilisateur API SMS HTTP
- Démarrez le serveur Wamp
- Téléchargez l'exemple ci-dessus
- Créez la requête pour recevoir des SMS
- Utilisez la méthode Receive pour recevoir votre message
- Lisez la réponse HTTP
- Vérifiez les logs dans la passerelle SMS
Installez Ozeki SMS Gateway et créez un utilisateur API HTTP
Pour pouvoir recevoir des SMS depuis PHP, vous devez d'abord installer Ozeki SMS Gateway. La passerelle SMS peut être installée sur le même ordinateur où vous développez votre code PHP. Après l'installation, l'étape suivante consiste à connecter Ozeki SMS Gateway au réseau mobile. Vous pouvez envoyer un SMS test depuis l'interface Ozeki pour vérifier que votre connexion au réseau mobile fonctionne. La dernière étape pour préparer votre environnement est de créer un utilisateur API SMS HTTP. Créez un utilisateur avec le nom d'utilisateur "http_user" et le mot de passe "qwe123" pour que l'exemple fonctionne sans modification.
Une fois l'environnement configuré, vous pouvez exécuter votre code PHP.
URL de l'API HTTP pour recevoir des SMS depuis PHP
Pour envoyer des SMS depuis PHP, votre PHP devra envoyer une requête HTTP à la passerelle SMS. L'URL de l'API est indiquée ci-dessous. Notez que l'adresse IP (127.0.0.1) doit être remplacée par l'adresse IP de votre passerelle SMS. Si Ozeki SMS Gateway est installé sur le même ordinateur où l'application C# SMS est exécutée, cela peut être 127.0.0.1. S'il est installé sur un autre ordinateur, cela doit être l'adresse IP de cet ordinateur.
http://127.0.0.1:9509/api?action=rest
En-tête de la requête HTTP pour recevoir des SMS depuis PHP
Pour envoyer les messages SMS, vous devez inclure les lignes suivantes comme en-têtes dans la requête HTTP. Notez que nous incluons un type de contenu et un en-tête d'autorisation.
Content-Type: application/json Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Requête HTTP pour recevoir des SMS depuis PHP
Pour soumettre le SMS, votre application PHP enverra une requête HTTP similaire à celle ci-dessous. Notez que cette requête contient une partie d'en-tête HTTP.
GET /api?action=receivemsg&folder=inbox HTTP/1.1 Content-Type: application/json Accept: */* Authorization: Basic aHR0cF91c2VyOnF3ZTEyMw== Host: 127.0.0.1:9509
Réponse HTTP reçue par l'exemple PHP pour les SMS
Une fois que la passerelle SMS reçoit cette requête, elle générera une réponse HTTP. La réponse HTTP contiendra un code de statut pour indiquer si la soumission du SMS a réussi ou non. Elle renverra également une structure encodée en JSON pour vous fournir des détails utiles sur la soumission du message.
HTTP/1.1 200 OK User-Agent: OZEKI 10.3.120 (www.myozeki.com) Content-Type: application/json; charset=utf8 Last-Modified: Thu, 17 Jun 2021 09:18:12 GMT Server: 10/10.3.120 Transfer-Encoding: chunked { "http_code": 200, "response_code": "SUCCESS", "response_msg": "", "data": { "folder": "inbox", "limit": "1000", "data": [ { "message_id": "16673c81-0568-49af-a0fa-1e4b3d6bb500", "from_connection": "SMPP_client_1@localhost", "from_address": "+36301111111", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "+36308888888", "to_station": "%", "text": "Hello World 1!", "create_date": "2021-06-17 10:01:55", "valid_until": "2021-06-24 10:01:55", "time_to_send": "2021-06-17 10:01:55", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [ { "name": "PduCount", "value": "1" } ] }, { "message_id": "8ed7f65b-d3b5-4b68-8b4d-25b63dad0cc8", "from_connection": "SMPP_client_1@localhost", "from_address": "+36302222222", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "+36308888888", "to_station": "%", "text": "Hello World 2!", "create_date": "2021-06-17 10:02:03", "valid_until": "2021-06-24 10:02:03", "time_to_send": "2021-06-17 10:02:03", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [ { "name": "PduCount", "value": "1" } ] }, { "message_id": "56ad323c-b19b-4406-af2d-cf2eb365e725", "from_connection": "SMPP_client_1@localhost", "from_address": "+36303333333", "from_station": "%", "to_connection": "http_user@localhost", "to_address": "+36308888888", "to_station": "%", "text": "Hello World 3!", "create_date": "2021-06-17 10:02:27", "valid_until": "2021-06-24 10:02:27", "time_to_send": "2021-06-17 10:02:27", "submit_report_requested": true, "delivery_report_requested": false, "view_report_requested": false, "tags": [ { "name": "PduCount", "value": "1" } ] } ] } }
Comment recevoir des SMS depuis PHP en utilisant l'API SMS PHP (Tutoriel vidéo)
Cette vidéo vous montre comment télécharger et utiliser le projet ReceiveSMS PHP. Une fois que vous avez ajouté les fichiers nécessaires à votre projet, vous pourriez remarquer que un fichier appelé MessageApi.php est présent. C'est le fichier qui contient le MessageApi et tout ce dont vous avez besoin pour envoyer un SMS en utilisant PHP.
Exemple PHP SMS : Receive_Message.php
Comment vérifier que le SMS a été accepté par l'utilisateur HTTP
Après que le SMS a été soumis, il est bon de vérifier votre passerelle SMS pour voir ce qu'elle a reçu. Vous pouvez vérifier les logs en ouvrant les détails de l'utilisateur HTTP depuis la console de gestion d'Ozeki SMS Gateway. La vidéo suivante vous montre ce qu'il faut rechercher.
Pour résumer
Cet article a expliqué comment recevoir des messages SMS avec l'API HTTP REST SMS d'Ozeki SMS Gateway en PHP. Si vous avez suivi les étapes ci-dessus, vous êtes maintenant capable de créer un utilisateur API SMS HTTP dans Ozeki SMS Gateway pour recevoir des SMS avec PHP. Ce service peut être utilisé à tout moment, afin que votre système PHP existant puisse être étendu avec des capacités SMS.
Vous trouverez plus d'informations sur cette technologie et Ozeki SMS Gateway ici, assurez-vous de continuer à lire. Ozeki a d'autres articles sur ce sujet, comme Comment envoyer des SMS depuis PHP, consultez-le maintenant !
Votre prochaine étape est de télécharger Ozeki SMS Gateway et de profiter des avantages.
More information
- Envoyer un SMS en PHP avec l'API REST HTTP (exemple de code)
- Envoyer plusieurs SMS en PHP avec l'API REST HTTP (exemple de code)
- Planifier un SMS en PHP avec l'API REST HTTP (exemple de code)
- Recevoir un SMS en PHP avec l'API REST HTTP (exemple de code)
- Supprimer un SMS en PHP avec l'API REST HTTP (exemple de code)
- Github : API SMS en PHP