This is a discussion on Sending message to mobile using php within the PHP Programming forums, part of the Web Development category; hi. It is possible to send message to mobile using php coding....
| |||||||
| Register | FAQ | Members List | Calendar | Mark Forums Read |
| |||
| hi saravanan, yes,its possible Sending message to mobile using php. but before you register any gate way. Example gateway site CLICKATELL. For more information about CLICKATELL service visit Clickatell Bulk SMS Gateway Last edited by senraj : 12-27-2007 at 01:58 AM. |
| |||
| sms_api.php ------------------- class sms { var $api_id = "YOUR_CLICKATELL_API_NUMBER"; var $user = "name"; var $password = "password"; var $use_ssl = false; var $balace_limit = 0; var $sending_method = "fopen"; var $curl_use_proxy = false; var $curl_proxy = "http://192.168.122.1"; var $curl_proxyuserpwd = "login:secretpass"; var $callback = 0; var $session; function sms () { if ($this->use_ssl) { $this->base = "http://api.clickatell.com/http"; $this->base_s = "https://api.clickatell.com/http"; } else { $this->base = "http://api.clickatell.com/http"; $this->base_s = $this->base; } $this->_auth(); } function _auth() { $comm = sprintf ("%s/auth?api_id=%s&user=%s&password=%s", $this->base_s, $this->api_id, $this->user, $this->password); $this->session = $this->_parse_auth ($this->_execgw($comm)); } function getbalance() { $comm = sprintf ("%s/getbalance?session_id=%s", $this->base, $this->session); return $this->_parse_getbalance ($this->_execgw($comm)); } function send($to=null, $from=null, $text=null) { if ($this->getbalance() < $this->balace_limit) { die ("You have reach the SMS credit limit!"); }; /* Check SMS $text length */ if (strlen ($text) > 465) { die ("Your message is to long! (Current lenght=".strlen ($text).")"); } /* Does message need to be concatenate */ if (strlen ($text) > 160) { $concat = "&concat=3"; } else { $concat = ""; } /* Check $to and $from is not empty */ if (empty ($to)) { die ("You not specify destination address (TO)!"); } if (empty ($from)) { die ("You not specify source address (FROM)!"); } /* Reformat $to number */ $cleanup_chr = array ("+", " ", "(", ")", "\r", "\n", "\r\n"); $to = str_replace($cleanup_chr, "", $to); /* Send SMS now */ $comm = sprintf ("%s/sendmsg?session_id=%s&to=%s&from=%s&text=%s&callba ck=%s%s", $this->base, $this->session, rawurlencode($to), rawurlencode($from), rawurlencode($text), $this->callback, $concat ); return $this->_parse_send ($this->_execgw($comm)); } function _execgw($command) { if ($this->sending_method == "curl") return $this->_curl($command); if ($this->sending_method == "fopen") return $this->_fopen($command); die ("Unsupported sending method!"); } function _curl($command) { $this->_chk_curl(); $ch = curl_init ($command); curl_setopt ($ch, CURLOPT_HEADER, 0); curl_setopt ($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER,0); if ($this->curl_use_proxy) { curl_setopt ($ch, CURLOPT_PROXY, $this->curl_proxy); curl_setopt ($ch, CURLOPT_PROXYUSERPWD, $this->curl_proxyuserpwd); } $result=curl_exec ($ch); curl_close ($ch); return $result; } function _fopen($command) { $result = ''; $handler = @fopen ($command, 'r'); if ($handler) { while ($line = @fgets($handler,1024)) { $result .= $line; } fclose ($handler); return $result; } else { die ("Error while executing fopen sending method!<br>Please check does PHP have OpenSSL support and check does PHP version is greater than 4.3.0."); } } function _parse_auth ($result) { $session = substr($result, 4); $code = substr($result, 0, 2); if ($code!="OK") { die ("Error in SMS authorization! ($result)"); } return $session; } function _parse_send ($result) { $code = substr($result, 0, 2); if ($code!="ID") { die ("Error sending SMS! ($result)"); } else { $code = "OK"; } return $code; } function _parse_getbalance ($result) { $result = substr($result, 8); return (int)$result; } function _chk_curl() { if (!extension_loaded('curl')) { die ("This SMS API class can not work without CURL PHP module! Try using fopen sending method."); } } } ?> Last edited by senraj : 12-27-2007 at 04:04 AM. |
| |||
| This class is meant to send SMS messages via the Clickatell gateway and provides support to authenticate to this service and also query for the current account balance. This class use the fopen or CURL module to communicate with the gateway via HTTP/S. *For more information about CLICKATELL service visit Clickatell Bulk SMS Gateway |
![]() |
| Thread Tools | |
| Display Modes | |
| |
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| sending files from mobile to pc using bluetooth | amansundar | Mobile Software Development | 13 | 11-13-2007 06:37 AM |
| Why do I get Error message "Unable to Start Debugging" Error Message? | a.deeban | ASP and ASP.NET Programming | 5 | 09-25-2007 12:22 AM |
| Sending SMS through ASP.Net | S.Vinothkumar | ASP and ASP.NET Programming | 12 | 09-17-2007 05:29 AM |
| How to convert a SMS message in to Email in Windows mobile? | theone | Mobile Software Development | 1 | 07-24-2007 11:41 PM |
| Sending and Receiving values between Flash and .NET(sendAndLoad) | oxygen | Flash Actionscript Programming | 1 | 07-17-2007 03:10 AM |