hi i have a project that will send sms to its subscriber but ive look everywhere and could no get a good answer.

my project will be in php and im just wondering is there a software that i can install on a pc and hook a gms modem with it to send the sms and connect my php application with it .

so the php app will process everything and finally connect with the software on my pc provide the number and message to send it just like ozekisms but one that can send at lease 10 sms per second and is open source not so costly like ozekisms.

thanks hope someone could help me out oh and the software must have ability to connect with an api from my php app

Dani AI

Generated

For a PC-based, open-source gateway that a PHP app can call, consider proven projects that separate modem handling from the web app: Kannel or Jasmin for SMPP/HTTP gateway functionality, and Gammu+SMSD or playSMS for direct modem control with a PHP-friendly front end. A clean architecture is to have the PHP app enqueue messages (DB or queue) and let the gateway pull/send, or let the gateway expose an HTTP endpoint the PHP app posts to.

Given ’s requirement of “10 SMS/sec,” expectations should be realistic: a single consumer GSM modem will not reliably deliver SMS at that rate. Mobile networks and modem firmware are the bottleneck; typical single-modem throughput is measured in messages per minute, not per second. Sustained 10 SMS/sec (about 36,000/hour) normally needs an SMPP connection from a commercial aggregator or carrier. Running many modems in parallel is possible but operationally complex and brittle.

Recommended practical workflow: PHP writes messages to a queue; the gateway consumes the queue and sends via modem or SMPP; DLRs (delivery receipts) are written back to the DB for acknowledgement and retries. Implement rate limiting, retry/backoff, proper message-splitting for concatenation and Unicode (GSM 03.38 vs UCS-2), and persistent logging of opt-ins/consents and message IDs before scaling.

Operational cautions and troubleshooting: consumer “unlimited” SIM plans often have fair-use rules and carriers will throttle or suspend SIMs used for bulk sends; obtain a commercial SMS agreement for high volume. Before large runs, test small batches, monitor gateway/modem logs, verify USB-to-serial mapping and modem PDU/text mode, check SIM restrictions, and measure real throughput. ’s email-to-SMS idea can work for tiny, low-cost notifications but is unreliable for global coverage; ’s pointer is useful as an introductory read.

Recommended Answers

All 5 Replies

Hi eltonpiko,
If you are doing it in PHP, I suggest you just do it via email. You can email cell phones really simply. Its usally like

(virgin mobile, thats not the real one)

So just store the numbers in a database with id/name and then echo it into that. Then email them anything you need and it goes to their phone.

thanks for the reply.yes i will be doing it in php. but does all country and carrier support this option?and how would i be charge for the sms dont i need a gateway or something is the way you suggesting a free service?

So you want to have them pay via sms? is that what your asking? If so, there are some options out there already. But they have a fee.

Also, the companys that are already out there, they are HUGE giant coperations that have contracts with the mobile companys. Thats why some don't support certain phone companys. You would need to get in contact with each phone company to setup sms payment.

it may help you about sms gateways and and way how to send sms: visit the link:

hi thanks for the replay i wanted to use carrier available in my country with the use of a gsm modem and software like nowsms so that my website can send the query or command to the software to send the sms but the only prob with the nowsms they provide and api that you intergrate in you app it look like this

<?php

function SendSMS ($host, $port, $username, $password, $phoneNoRecip, $msgText) { 

/* Parameters:
    $host – IP address or host name of the NowSMS server
    $port – “Port number for the web interface” of the NowSMS Server
    $username – <span class="notranslate">“SMS Users”</span> account on the NowSMS server
    $password – Password defined for the <span class="notranslate">“SMS Users”</span> account on the NowSMS Server
    $phoneNoRecip – One or more phone numbers (comma delimited) to receive the text message
    $msgText – Text of the message
*/
 
    $fp = fsockopen($host, $port, $errno, $errstr);
    if (!$fp) {
        echo “errno: $errno \n”;
        echo “errstr: $errstr\n”;
        return $result;
    }
    
    fwrite($fp, “GET /?Phone=” . rawurlencode($phoneNoRecip) . “&Text=” . rawurlencode($msgText) . ” HTTP/1.0\n”);
    if ($username != “”) {
       $auth = $username . “:” . $password;
       $auth = base64_encode($auth);
       fwrite($fp, “Authorization: Basic ” . $auth . “\n”);
    }
    fwrite($fp, “\n”);
  
    $res = “”;
 
    while(!feof($fp)) {
        $res .= fread($fp,1);
    }
    fclose($fp);
    
 
    return $res;
}


/* This code provides an example of how you would call the SendSMS function from within
   a PHP script to send a message.  The response from the NowSMS server is echoed back from the script.
 
$x   = SendSMS(“127.0.0.1″, 8800, “username”, “password”, “+44999999999″, “Test Message”);
echo $x;

*/

/* This code provides an example of sending a message via NowSMS as the result of a web form posting.

   First, here’s a very simple HTML web form that provides an example of what you need in your
   web form.

<HTML> 
<HEAD><TITLE>Send SMS</TITLE></HEAD> 
<BODY> 
<form method=”post” action=”sendsmsscript.php”> 
<table border=”1″> 
<tr> 
<td>Mobile Number:</td> 
<td><input type=”text” name=”phone” size=”40″></td> 
</tr> 
<tr> 
<td valign=”top”>Text Message:</td> 
<td><textarea name=”text” cols=”80″ rows=”10″></textarea> 
</tr> 
<tr> 
<td colspan=”2″ align=”center”> 
<input type=”submit” value=”Send”> 
</td> 
</tr> 
</table> 
</form> 
</BODY> 
</HTML> 

   Second, here’s the PHP script that would parse the parameters from the form posting, and then call
   the SendSMS function to submit the message.

if (isset($_REQUEST['phone'])) { 
   if (isset($_REQUEST['text'])) { 
      $x = SendSMS(“127.0.0.1″, 8800, “username”, “password”, $_REQUEST['phone'], $_REQUEST['text']); 
      echo $x; 
   } 
   else { 
      echo “ERROR : Message not sent — Text parameter is missing!\r\n”; 
   } 
} 
else { 
   echo “ERROR : Message not sent — Phone parameter is missing!\r\n”; 
} 

*/
 
?>

but instead of of using form to provide phone number or messages i would like to get a query to my database to provide both the number and messages.is this api extendable i think it should be right.

one more thing like if i get an unlimited sms plan from a carrier normally is there any limit of how much sms you can send at the same time. for im thinking minimum 5,000 would it be consider as spamming? but these people that will be receiving those msg will have subscribe to this service not just sending to any number.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.