smsgw.pl
上传用户:eo_sii
上传日期:2007-01-05
资源大小:91k
文件大小:2k
源码类别:

手机短信编程

开发平台:

Unix_Linux

  1. #!/usr/bin/perl -w
  2. #===========================================================
  3. # Program : smsgw.pl
  4. # Author  : Philippe Andersson
  5. # Date    : 24/03/99
  6. # Version : 1.1
  7. # Comment : (c) Les Ateliers du Heron, 1999 for Scitex Europe, S.A.
  8. # Version History :
  9. # * 1.0 (15/03/99) - Initial release.
  10. # * 1.1 (24/03/99) - Fixed a problem with multi-line input.
  11. #===========================================================
  12. use strict;
  13. use diagnostics;
  14. use CGI;
  15. #-----------------------------------------------------------
  16. # Name the global variables
  17. my $userid = "";
  18. my $dest = "";
  19. my $msgtxt = "";
  20. # Create en instance of CGI
  21. my $query = new CGI;
  22. # Send the MIME header
  23. print $query->header ("text/html");
  24. # Grab posted values
  25. $userid = $query->param ("userid");
  26. $dest = $query->param ("dest");
  27. $msgtxt = $query->param ("msgtxt");
  28. # Was at least one field filled-in ?
  29. if (($userid eq "") || ($dest eq "") || ($msgtxt eq "")) {
  30.   print $query->start_html (-title => "Error !");
  31.   print "<H1>Error !</H1>n";
  32.   print "<P>All fields are required - at least one of them is ";
  33.   print "missing. Please go back and try again.</P>n";
  34.   print $query->end_html;
  35.   exit;
  36. }
  37. # Check message length
  38. my $txtlen = length ($msgtxt);
  39. if ($txtlen > 160) {
  40.   print $query->start_html (-title => "Error !");
  41.   print "<H1>Error !</H1>n";
  42.   print "<P>Your message text is longer than 160 char. (now $txtlen). ";
  43.   print "This 160 char. limit is built in the SMS protocol and can't ";
  44.   print "be bypassed. ";
  45.   print "Please go back and edit your message to make it shorter.</P>n";
  46.   print $query->end_html;
  47.   exit;
  48. }
  49. # Remove newlines from msgtxt (replace them by space)
  50. $msgtxt =~ s/n/ /g;
  51. #===========================================================
  52. print $query->start_html (-title => "SMS Sending Results");
  53. print "<H1>SMS Sending Results</H1>n";
  54. #-----------------------------------------------------------
  55. # Submit the sendsms request
  56. my $retval = 0;
  57. $retval = system ("sendsms", "-d$dest", "-u$userid", "-m$msgtxt", "your-server");
  58. if ($retval == 0) {
  59.   print "<P>Message was sent successfully !</P>n";
  60. }
  61. else {
  62.   print "<P>Failed to deliver message !</P>n";
  63. }
  64. # End the HTML
  65. print $query->end_html;
  66. #-----------------------------------------------------------
  67. exit;