网站里要做个短信发送功能,购买过这种服务的兄弟能介绍个好一点的短信服务提供商吗。

解决方案 »

  1.   

    http://passport.10808.com/
      

  2.   

    http://www.cnblogs.com/gsm-modem/archive/2010/03/19/1690067.html
      

  3.   

    Asp.net 网站新增发送手机短信功能 
        本文旨在帮助那些为网站发送手机短信正在寻求解决方案还未最终找到解决方案的朋友提供参考。    适合人群 须满足一下条件之一,如果以下3个条件您都不满足,为节约您宝贵的时间,请终止阅读本篇文章。    条件如下:         1.一条短信内容进行短信群发的目标手机数量不能太大,否则出现严重的短信延时。         2.不想买短信猫之类的设备,同时又觉得部分国有电信单位提供的短信接口不好用,或者认为其服务不够好。         3.担心网络上短信sp供应商信息不真实,毕竟大部分短信供应商不能通过当面交易。   看到这里说明您对我的解决方案是感兴趣的,我这样解决的:        找过几家国有企业短信sp供应商,效果比我想象的要差很多,于是直接在网络上找提供类似服务的短信供应商。发现有很多这样的民营sp短信供应商的服务都是通过网银或者支付宝进行购买。这又让我担心是骗钱的。说实在的挺苦恼的,甚至有朋友建议直接买个几百元的低端多普达,在windows mobile 内写一个自动发送短信的功能充当短信猫。后来苦苦寻觅中我发现了 悠逸企业短信平台(申明:无任何广告嫌疑!)可以购买一百元1000条手机短信而且注册后可以先试用10条短信。将10条试用完后,我用信用卡通过其网站购买了100元短信。心想如果被骗了,这样损失也不会很大。详细步骤如下:       1.在其平台上注册一个属于自己的用户名。       2.在我们的网站或者类库中加入这段方法 (注:此方法不是官方提供的,是我看完官方的API后用C#编写) 1      public static bool SendMobileMsg(string msgContent, List<string> destListPhones) 2         { 3             try 4             { 5                 bool result = false; 6                 string strPhones = string.Join(";", destListPhones.ToArray()); 7                 strPhones += ";"; 8                 var encoding = System.Text.Encoding.GetEncoding("GB2312"); 9 10                 string postData = string.Format("uid=用户名&pwd=密码&mobile={0};&msg={1}&dtime=", strPhones, msgContent);11 12                 byte[] data = encoding.GetBytes(postData);13 14                 // 定义 WebRequest15                  HttpWebRequest myRequest =16                 (HttpWebRequest)WebRequest.Create("http://www.smsadmin.cn/smseting/wwwroot/api/post_send/");17 18                 myRequest.Method = "POST";19                 myRequest.ContentType = "application/x-www-form-urlencoded";20                 myRequest.ContentLength = data.Length;21 22                 Stream newStream = myRequest.GetRequestStream();23 24                 //发送数据25                  newStream.Write(data, 0, data.Length);26                 newStream.Close();27 28                 // 得到 Response29                 HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();30                 StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default);31                 string content = reader.ReadToEnd();32 33                 if (content.Substring(0, 1) == "0")34                     result = true;35                 else36                 {37                     if (content.Substring(0, 1) == "2") //余额不足38                     {39                       //"手机短信余额不足";40                       //TODO41                     }42                     else43                     {44                       //短信发送失败的其他原因,请参看官方API45                     }46                     result = false;47                 }48 49                 return result;50             }51             catch52             {53                 return false;54             }55         56         }
    很“干净”的调用,没有WebService也没有COM。唯一要注意的就是编码用 GB2312 否则您收到短信的中文部分都是乱码,另外第10行的用户名和密码被硬编码了,应写在配置文件内。
      

  4.   


    public static bool SendMobileMsg(string msgContent, List<string> destListPhones) 
       { 
           try 
           { 
               bool result = false; 
               string strPhones = string.Join(";", destListPhones.ToArray()); 
               strPhones += ";"; 
               var encoding = System.Text.Encoding.GetEncoding("GB2312"); 
     
               string postData = string.Format("uid=用户名&pwd=密码&mobile={0};&msg={1}&dtime=", strPhones, msgContent); 
     
               byte data = encoding.GetBytes(postData); 
     
               // 定义 WebRequest 
                HttpWebRequest myRequest = 
               (HttpWebRequest)WebRequest.Create("http://www.smsadmin.cn/smseting/wwwroot/api/post_send/"); 
     
               myRequest.Method = "POST"; 
               myRequest.ContentType = "application/x-www-form-urlencoded"; 
               myRequest.ContentLength = data.Length; 
     
               Stream newStream = myRequest.GetRequestStream(); 
     
               //发送数据 
                newStream.Write(data, 0, data.Length); 
               newStream.Close(); 
     
               // 得到 Response 
               HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse(); 
               StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.Default); 
               string content = reader.ReadToEnd(); 
     
               if (content.Substring(0, 1) == "0") 
                   result = true; 
               else 
               { 
                   if (content.Substring(0, 1) == "2") //余额不足 
                   { 
                     //"手机短信余额不足"; 
                     //TODO 
                   } 
                   else 
                   { 
                     //短信发送失败的其他原因,请参看官方API 
                   } 
                   result = false; 
               } 
     
               return result; 
           } 
           catch 
           { 
               return false; 
           } 
        
       } 
      

  5.   

    如果你向自己发送短信,好多免费邮箱都有短信PUSH功能。你可以用移动的139邮箱,这个是免费的。
      

  6.   

    直接找移动公司,安装MAS机,有接口的,我目前就是这样用的
      

  7.   

    http://www.mobset.com/