Használd a weboldalad SMS küldésére
Az SMS funkciót hozzáadhatod a weboldaladhoz. Ez a módszer bemutatja, hogyan használjunk PHP szkriptet az Ozeki SMS Gateway HTTP API-jával való kommunikációhoz. Először engedélyezned kell a PHP szkript támogatást a webszervereden.
Töltsd le a PHP SMS küldési példát:
sendsms.zip
A bemutatott példa (php sms küldő szkript) megmutatja, hogyan működhet az üzenetküldés a weboldaladról a 'Küldés' gombra kattintva. Az ötlet egy HTML űrlapot használ. A felhasználó kitöltheti ezt az HTML űrlapot, majd megnyomhatja a 'Küldés' gombot. A PHP szkript feldolgozza a 'Címzett' és 'Üzenet' nevű szövegmezőkben lévő két változót. Emellett elküldi a generált HTTP kérés URL-t az Ozeki SMS Gateway HTTP API-jának (1. ábra). A webszervered és az Ozeki SMS Gateway két külön gépen is lehet, vagy akár ugyanazon a gépen is.
Először telepítened kell az Ozeki SMS Gateway-t és ellenőrizned, hogy képes vagy-e manuálisan SMS üzeneteket küldeni belőle. Ezután kérlek töltsd le a HTML+PHP szkriptet az SMS küldő űrlap létrehozásához és használatához.
![]() | Az Ozeki SMS Gateway letölthető a letöltési oldal megnyitásával: Töltsd le az Ozeki SMS Gateway-t! |
Hozd létre az SMS küldéshez szükséges HTML űrlapot
Kérlek mentsd el a sendsms.html fájlt a megoldás használatához. A webszervered 'WWW' könyvtárába kell mentened. Mit tartalmaz? Tartalmazza az HTML űrlapot egy címzett és üzenet szövegmezővel, valamint egy 'Küldés' gombbal (2. ábra).
<html> <body> <h1>Az SMS űrlapom</h1> <form method=post action='sendsms.php'> <table border=0> <tr> <td>Címzett</td> <td><input type='text' name='recipient'></td> </tr> <tr> <td>Üzenet</td> <td><textarea rows=4 cols=40 name='message'></textarea></td> </tr> <tr> <td> </td> <td><input type=submit name=submit value=Küldés></td> </tr> </table> </form> </body> </html>
Ha sikeresen elmentetted ezt a fájlt a webszervered könyvtárába, megnyithatod bármely webböngészőben (3. ábra). Bármilyen telefonszámot hozzáadhatsz a címzett mezőhöz (például +4407776134588) és beírhatod az üzenetedet a következő szövegmezőbe.
Az űrlap címke action attribútuma a sendsms.php-ra mutat. Ez azt jelenti, hogy az űrlapon megadott adatokat továbbítják a sendsms.php-nak. Az adatokat elküldik a HTTP API-nak, ha a 'Küldés' gombot megnyomják.
Hogyan készítsd elő a PHP SMS szkriptedet
A 'sendsms.php' a cél a címzett és üzenet mezők számára. Ez a PHP szkript képes URL-t építeni az Ozeki SMS Gateway HTTP API-jához. Meg fogja hívni az URL-t, ha a 'Küldés' gombot megnyomják. Ne felejtsd el beállítani a $ozeki_user, $ozeki_password és $ozeki_url változókat. Abban az esetben, ha az Ozeki SMS Gateway és a webszervered ugyanazon a gépen fut, a $ozeki_url változót változatlanul hagyhatod. Ellenkező esetben meg kell változtatnod az IP-t az Ozeki SMS Gateway gépe IP címére. Az Ozeki SMS Gateway legújabb verziója a 9505-ös portot használja, míg a 9501 a régebbi verzióhoz tartozik. (4. ábra)
<?php ######################################################## # Bejelentkezési adatok az SMS Gateway-hez ######################################################## $ozeki_user = "admin"; $ozeki_password = "abc123"; $ozeki_url = "http://127.0.0.1:9505/api?"; ######################################################## # Funkciók az SMS üzenet küldéséhez ######################################################## function httpRequest($url){ $pattern = "/http...([0-9a-zA-Z-.]*).([0-9]*).(.*)/"; preg_match($pattern,$url,$args); $in = ""; $fp = fsockopen("$args[1]", $args[2], $errno, $errstr, 30); if (!$fp) { return("$errstr ($errno)"); } else { $out = "GET /$args[3] HTTP/1.1\r\n"; $out .= "Host: $args[1]:$args[2]\r\n"; $out .= "User-agent: Ozeki PHP kliens\r\n"; $out .= "Accept: */*\r\n"; $out .= "Connection: Close\r\n\r\n"; fwrite($fp, $out); while (!feof($fp)) { $in.=fgets($fp, 128); } } fclose($fp); return($in); } function ozekiSend($phone, $msg, $debug=false){ global $ozeki_user,$ozeki_password,$ozeki_url; $url= 'action=sendmessage'; $url.= '&username='.$ozeki_user; $url.= '&password='.$ozeki_password; $url.= '&messagetype=SMS:TEXT'; $url.= '&recipient='.urlencode($phone); $url.= '&messagedata='.urlencode($msg); $urltouse = $ozeki_url.$url; if ($debug) { echo "Kérés: <br>$urltouse<br><br>"; } //Nyisd meg az URL-t az üzenet küldéséhez $response = httpRequest($urltouse); if ($debug) { echo "Válasz: <br><pre>". str_replace(array("<",">"),array("<",">"),$response). "</pre><br>"; } return($response); } ######################################################## # Adatok lekérése a sendsms.html-ből ######################################################## $phonenum = $_POST['recipient']; $message = $_POST['message']; $debug = true; ozekiSend($phonenum,$message,$debug); ?>
Miután mind a sendsms.html, mind a sendsms.php másolva és módosítva van a *\WWW\ könyvtárban, egy SMS üzenet elküldhető az átjárón keresztül. Miután elfogadta a kézbesítést, az SMS Gateway visszaadja az üzenet hivatkozási számát a válaszban (5. ábra). Az üzeneteket az Ozeki SMS Gateway a hivatkozási számuk alapján követi nyomon.
Összefoglalás
Ebben a cikkben láthatod, hogyan adhatsz hozzá SMS funkciót a weboldaladhoz. A megadott példa PHP SMS szkriptet használja az Ozeki SMS Gateway eléréséhez. Az SMS Gateway használata lehetővé teszi az SMS üzenetek útválasztását különböző végpontok között, és lehetőséget ad az üzeneteid szabályozására, ahogyan a rendszeren keresztül haladnak, így könnyen elérheted a szervezeted bármely tagját.
Ha megbízható és sokoldalú SMS kommunikációs rendszert szeretnél építeni, több információt találsz róla az Ozeki weboldalán. Nyugodtan nézd meg a cikket az SMS küldésről weboldalról SMS küldés C#-ban.
Az első nagy teljesítményű SMS átjáró rendszered létrehozásához most a legjobb idő letölteni az Ozeki SMS Gateway-t!
More information
- SMS küldése MySQL-ből PHP-val
- SMS küldése weboldalról PHP és MySQL használatával
- SMS küldése weboldalról PHP és HTTP API használatával
- PHP Egyszeri jelszó