手机发送短信

  1 public class Phone
  2 {
  3 /// <summary>
  4 /// 日志
  5 /// </summary>
  6 public static readonly ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
  7
  8
  9 public static readonly string ServerAddress = ConfigurationManager.AppSettings["PhoneServerAddress"];
 10 public static readonly string Account = ConfigurationManager.AppSettings["PhoneUserName"];
 11 public static readonly string Pswd = ConfigurationManager.AppSettings["PhonePassword"];
 12
 13 /// <summary>
 14 /// 发送手机短信
 15 /// </summary>
 16 /// <param name="mobile">手机号</param>
 17 /// <param name="content">内容</param>
 18 /// <param name="sign">签名</param>
 19 /// <returns></returns>
 20 public static string Send(string mobile, string content, string sign = null)
 21 {
 22 //发信内容要做一下Url编码
 23 content = HttpUtility.UrlEncode(content + sign);
 24
 25 var regPhone = new Regex("^[0-9]+[-]?[0-9]+[-]?[0-9]$");
 26
 27 if (regPhone.IsMatch(mobile) && !string.IsNullOrEmpty(content))
 28 {
 29 string postString = "account={0}&pswd={1}&mobile={2}&msg={3}&needstatus=true&product={4}&extno={5}".FormatMe(Account, Pswd, mobile, content, null, sign);
 30
 31 var hh = new HttpExtend();
 32
 33 var result = hh.PostWebRequest(ServerAddress, postString);
 34
 35 var returnResult = result.Split(‘,‘)[1].Split(‘\n‘)[0];
 36 if (returnResult != "0")
 37 {
 38 Log.Error("短信网关发生错误 错误代码{0},MobilePhone{1}".FormatMe(result, "******" + mobile.Substring(6)));
 39 }
 40
 41 ////*
 42 //如果returnResult值等于0,表示发送成功
 43
 44 //发送返回参数说明:
 45 //返回代码    代码说明
 46 //0 提交成功
 47 //101 无此用户
 48 //102 密码错
 49 //103 提交过快(提交速度超过流速限制)
 50 //104 系统忙(因平台侧原因,暂时无法处理提交的短信)
 51 //105 敏感短信(短信内容包含敏感词)
 52 //106 消息长度错(> 536或 <= 0)
 53 //107 包含错误的手机号码
 54 //108 手机号码个数错(群发 > 50000或 <= 0; 单发 > 200或 <= 0)
 55 //109 无发送额度(该用户可用短信数已使用完)
 56 //110 不在发送时间内
 57 //111 超出该账户当月发送额度限制
 58 //112 无此产品,用户没有订购该产品
 59 //113 extno格式错(非数字或者长度不对)
 60 //115 自动审核驳回
 61 //116 签名不合法,未带签名(用户必须带签名的前提下)
 62 //117 IP地址认证错,请求调用的IP地址不是系统登记的IP地址
 63 //118 用户没有相应的发送权限
 64 //119 用户已过期
 65 //120 测试内容不是白名单
 66
 67 return returnResult;
 68 }
 69 else
 70 {
 71 return "103";
 72 }
 73 }
 74
 75 /// <summary> 短信群发,号码间用英文逗号分隔
 76 /// </summary>
 77 /// <param name="mobiles">例如:"15189799192,15189799192"</param>
 78 /// <param name="content">群发短信内容</param>
 79 /// <returns></returns>
 80 public static string GroupSend(string mobiles, string content)
 81 {
 82 //发信内容要做一下Url编码
 83 content = HttpUtility.UrlEncode(content);
 84 string result = string.Empty;
 85 if (!string.IsNullOrEmpty(content))
 86 {
 87 var postString = "account={0}&pswd={1}&mobile={2}&msg={3}&needstatus=true&product={4}&extno={5}".FormatMe(Account, Pswd, mobiles, content, null, null);
 88 var hh = new HttpExtend();
 89
 90 result = hh.PostWebRequest(ServerAddress, postString);
 91
 92 //*
 93 //如果returnResult值等于0,表示发送成功
 94
 95 //发送返回参数说明:
 96 //返回代码    代码说明
 97 //0 提交成功
 98 //101 无此用户
 99 //102 密码错
100 //103 提交过快(提交速度超过流速限制)
101 //104 系统忙(因平台侧原因,暂时无法处理提交的短信)
102 //105 敏感短信(短信内容包含敏感词)
103 //106 消息长度错(> 536或 <= 0)
104 //107 包含错误的手机号码
105 //108 手机号码个数错(群发 > 50000或 <= 0; 单发 > 200或 <= 0)
106 //109 无发送额度(该用户可用短信数已使用完)
107 //110 不在发送时间内
108 //111 超出该账户当月发送额度限制
109 //112 无此产品,用户没有订购该产品
110 //113 extno格式错(非数字或者长度不对)
111 //115 自动审核驳回
112 //116 签名不合法,未带签名(用户必须带签名的前提下)
113 //117 IP地址认证错,请求调用的IP地址不是系统登记的IP地址
114 //118 用户没有相应的发送权限
115 //119 用户已过期
116 //120 测试内容不是白名单
117 }
118 return result;
119 }
120 }
时间: 2024-11-15 00:41:38

手机发送短信的相关文章

Jquery手机发送短信之后,进入倒计时状态

在做手机网站开发的时候,难免发生意外.这时候,就是你展示人格魅力的时候啦! 下面是自己写的一个发送验证码给手机之后,进入的一个倒计时的效果 js代码,我可是连<script type="text/javascript">这种都贴出来啦! <script type="text/javascript"> var InterValObj; var count = 60; var curCount; function sendMessage() {

GSM猫或者手机发送短信SMSLib

SMSLib是一个由很多程序员共同开发的,用于支持GSM猫或者手机发送短信的开源项目.SMSLib也同样支持一些短信运营商. smslib是Apache的一个开源项目,有.NET和Java两个版本.现在最新稳定版本为3.5.2.

使用中国网建实现Java向手机发送短信的功能

公司需要使用向指定手机发送验证码的功能,在网上搜了一下,有使用'短信猫'的,有使用WebService的,有使用第三方的,我使用的是中国网建提供的API来实现: 中国网建注册送五条短信和三条彩信做测试,这就足够了,今天公司刚买了几千条做测试! 首先是编码的选择: GBK编码发送接口地址: http://gbk.sms.webchinese.cn/?Uid=本站用户名&Key=接口安全秘钥&smsMob=手机号码&smsText=验证码:8888 UTF-8编码发送接口地址: htt

GSM开发 手机发送短信控制LED,返回中文短信,C程序源代码【测试】

[谢绝转载!][谢绝转载!][谢绝转载!] [说明] 实物连接图如下: [短信控制] 发送短信到GSM模块,收到相应的指令对应板子上的灯亮灭. 然后模块会向手机发送一条中文短信 [源代码]目前仍然处于开发中..... /****************************** 工程名  :短信控制家电 1 先用USB转TTL模块测试模块好用,并修改波特率到9600(AT+IPR=9600)再用单片机调试 2 51单片机晶振 11.0592MHz,12M不可以用   3 如果模块无开机自启动电

双卡手机发送短信 - 坑爹的双卡双待

近期要写一个Android app.当中一个功能要发短信,直接照抄Android API Demos的样例OS\SMS Messaging,在自己的手机上測试.发现总是报错SmsManager.RESULT_ERROR_NO_SERVICE,理解不能. 于是開始Google. 发现网上非常少有人提到这个错误,并且Android上发短信,所有都是用的API Demos的发短信的样例,或者使用Intent调用系统短信App来发短信.尽管用Intent调用系统短信App来发短信也能够当作一个workr

C# Ajax 手机发送短信验证码 校验验证码 菜鸟级别实现方法

1.Ajax请求处理页面: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.SessionState; using System.Web.Services; namespace Web.User.Ajax { /// <summary> /// SendCheckcode 的摘要说明 /// </summary> [WebSer

使用Python往手机发送短信(基于twilio模块)

官网是https://www.twilio.com twilio的一句话介绍——提供SDK帮你连接世界上所有人,你可以很方便的调用他们提供的接口来给指定手机发短信,打电话. 首先在twilio的官网注册一个试用账号,过程中需要绑定你的手机,然后获得免费的twilio号码,从你的账户界面(dsahboard)就可以看到ACCOUNT SID和AUTH TOKEN了,以及给你的Phone Number. 试用账号会赠送$15,只有1个Phone Number,只可以给注册的手机号发送短信,每发一条短

iPhone 手机发送短信,报告“尚未送达”

情况: iPhone手机,发送短信报告"尚未送达" 发送iMessage没有问题 可以接收短信 修复过程(按顺序执行): 查询方法:用iPhone拨打#50057672# 删除方法:用iPhone拨打##5005*7672# 设置方法:用iPhone拨打50057672+86"SIM卡归属地短信中心号码"# ,例如北京的是50057672+8613010112500# "+"是长按0输入的 重启手机,测试. 原文地址:https://blog.5

【转】android 手机发送短信,震动,播放默认铃声

发送短信 @SuppressWarnings("deprecation") public void sendMessage(String phoneNo, String messageContent) {          SmsManager smsManager = SmsManager.getDefault();          smsManager.sendTextMessage(phoneNo,// 接收方的手机号码                             

手机发送短信扣费和充值脚本

#!/bin/sh#mobile recharge shell#by zkg 2019-08-15#手机充值10元,第发送一次短信(输出当前余额),花费1角5分,当余额低于1角5分不能发送短信,提示余额不足,请充值(可以允许用户充值继续发送短信)?#10元=1000分,1角5分=15分,数值要统一,都为整数 #定义变量TOTAL=1000CONSUME=200 function isnum(){expr $1 + 1 &>/dev/nullif [ $? -ne 0 -a "$1&