protected void Btn_Save_Click(object sender, EventArgs e)
{
string Contents = this.Txt_SmsContents.Text.Trim();
if (Request["ckEmployee"] != null)
{
DataTable Dt = new DataTable();
Dt.Columns.Add("Contents", typeof(string));
Dt.Columns.Add("ReceiveMan", typeof(Guid));
Dt.Columns.Add("ReceiveManCode", typeof(string));
Dt.Columns.Add("ReceiveManName", typeof(string));
Dt.Columns.Add("SendMan", typeof(Guid));
Dt.Columns.Add("SendManCode", typeof(string));
Dt.Columns.Add("SendManName", typeof(string));
Dt.Columns.Add("TaskNo", typeof(Guid));
Dt.Columns.Add("CompanyID", typeof(Guid)); ArrayList Al_PhoneNumbers = new ArrayList();//接收短信的手机号码
string StrEmployee = "";//手机号码未设置的员工
string ckEmployee = Request["ckEmployee"].ToString();
string[] ckArr = ckEmployee.Split(',');//得到员工信息ID@ENumber@Name@Phone
Guid TaskNo = Guid.NewGuid();//短信发送任务编号
for (int i = 0; i < ckArr.Length; i++)
{
string[] EmployeeArr = ckArr[i].Split('@');
Guid ID = Guid.Parse(EmployeeArr[0].Trim());//员工ID
string ENumber = EmployeeArr[1].Trim();//员工工号
string Phone = EmployeeArr[2].Trim();//员工手机号码
string RealName = EmployeeArr[3].Trim();//员工姓名
if (Phone.Equals(""))
{
StrEmployee += RealName + "(" + ENumber + ")<br/>";
}
else
{
if (!Al_PhoneNumbers.Contains(Phone))
{
Al_PhoneNumbers.Add(Phone);
object[] EmployeeRow = { Contents, ID, ENumber, RealName, SendMan, SendManCode, SendManName, TaskNo, CompanyID };
Dt.Rows.Add(EmployeeRow);
}
}
}
string[] Mobiles = (string[])Al_PhoneNumbers.ToArray(typeof(string));
//开始发送短信
opa_sysinfo = OPA_SysInfo.GetSmsAccountInfo();
if (!opa_sysinfo.ID.Equals(Guid.Empty))
{
int smspriority = 1;
if (!Request["sel_smspriority"].ToString().Equals(""))
{
smspriority = int.Parse(Request["sel_smspriority"].ToString());
}
string srcCharset = "GBK";
if (!Request["sel_srcCharset"].ToString().Equals(""))
{
srcCharset = Request["sel_srcCharset"].ToString();
}
emaysms.softwareSerialNo = opa_sysinfo.SoftwareSerialNo;
emaysms.key = opa_sysinfo.RegKey;
emaysms.sendTime = DateTime.Now.ToString();
emaysms.Mobiles = Mobiles;
emaysms.StrContent = this.Txt_SmsContents.Text.Trim();
emaysms.addserial = "";
emaysms.srcCharset = srcCharset;
emaysms.smspriority = smspriority;
emaysms.smsID = new Random().Next(1, 1000);// long.Parse(Guid.NewGuid().ToString());
emaysms = EmaySMS.SendSMS(emaysms);
if (emaysms.ReturnCode.Equals(0))//短信发送成功,将短信记录写入数据库
{
bool Result = OPA_SmsRecord.InsertSendSmsRecord(Dt);
if (Result)
{
Function.AlertMsg("短信发送成功!");
}
else
{
Function.AlertMsg("短信发送成功,短信记录写入失败,请联系管理员!", "SendSms.aspx");
}
if (StrEmployee.Trim() != "")
{
this.lab_Msg.Text = "<font style=\"color:red;font-weight:bold;\">未设置手机号码的接收者:<font/>" + StrEmployee;
}
}
else
{
if (StrEmployee.Trim() != "")
{
this.lab_Msg.Text = "短信发送失败!" + emaysms.ReturnMsg + " <font style=\"color:red;font-weight:bold;\">未设置手机号码的接收者:<font/>" + StrEmployee;
}
else
{
this.lab_Msg.Text = "短信发送失败!" + emaysms.ReturnMsg;
}
}
}
else
{
this.lab_Msg.Text = "请先设置好亿美短信平台账号,并激活账号!";
}
}
}

asp.net 短信群发的更多相关文章

  1. 使用SMSManager短信管理器实现短信群发

    import java.util.ArrayList; import android.os.Bundle;import android.provider.ContactsContract;import ...

  2. 【免费】iPhone上最好用的短信群发软件: 高速短信4.1

    免费的最新的联系人.群组.多人发送短信软件短信群发4.1已经出炉.欢迎下载! *归属地信息让你时时记着好友的地方,让陌生号码变得不陌生:  *您能够选择最经常使用的联系人然后发送高速短信; *群联系人 ...

  3. [TPYBoard - Micropython] 五分种学会用TPYBoard - GPS 制作短信群发机

    转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604   一.什么是TPYBoard-GPS TPYBoard-GPS又称TPYBoa ...

  4. asp调用短信接口实现用户注册

    前几天做一个asp语言开发的网站需要实现用户注册短信验证功能,就研究了一下如何实现,简单给大家分享下调用过程. 首先需要找到一个第三方短信接口,当时用的是动力思维乐信的短信接口. 首先需要先注册个动力 ...

  5. python 简单爬虫获取气象数据发送气象定时报-预报预警信息及时推送及阿里云短信群发接口

    !/usr/bin/python #encoding=utf-8 #Author:Ruiy #//////////////////////////////////////////////////// ...

  6. asp发送短信验证码 pst方式

    <script language="jscript" runat="server">  Array.prototype.get = function ...

  7. thinkphp3.2短信群发项目实例

    项目功能是企业给客户群发短信,我就写这么多,也不知道你能不能运行成功,如果有问题可以在QQ上问我:605114821 项目文件SMS_V2.zip下载地址,百度云:http://yun.baidu.c ...

  8. 五、K3 WISE 开发插件《K3 Wise 群发短信配置开发(二)之短信群发配置》

    开发环境:K/3 Wise 13.0.Sql Server 2005 目录 一.开启Sql Server Agent代理服务 二.短信发送原理 三.编写存储过程 四.开启Sql Server作业 一. ...

  9. python 阿里云短信群发推送

    本篇文章是使用Python的Web框架Django提供发送短信接口供前端调用,Python版本2.7 阿里云入驻.申请短信服务.创建应用和模板等步骤请参考:阿里云短信服务入门 1.下载sdk 阿里云短 ...

随机推荐

  1. .Net程序员必须要知道的东西之HttpModules与HttpHandlers介绍

    一.ASP.NET对请求处理的过程: 当客户端请求一个*.aspx文件的时候,这个请求会被inetinfo.exe进程截获,它判断文件的后缀(aspx)之后,将这个请求转交给ASPNET_ISAPI. ...

  2. svn还原到指定版本

    svn还原到指定版本 1,选中文件夹,右健,show log 2,选中指定版本,右健,Revert to this revision 3,svn commit 4,ok

  3. js中的json

    1.什么是JSON? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 2.JSON语法是JavaScr ...

  4. Java中String和Int的相互转换

    一.将字串 String 转换成整数 intA. 有2个方法:1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([Strin ...

  5. setImageResource和setBackgroundResource的區別

    它們的原型如下:void android.widget.ImageView.setImageResource(int resId)void android.view.View.setBackgroun ...

  6. iOS开发——多线程篇——多线程介绍

    一.进程和线程1.什么是进程进程是指在系统中正在运行的一个应用程序每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开迅雷.Xcode,系统就会分别启动2个进程 通过“活动监 ...

  7. thinkphp加载第三方类库

    http://www.cnblogs.com/jiqing9006/p/5041389.html

  8. 一起入门python7之函数参数

    上一节课简单的讲了一下函数.那么今天来给大家讲一下函数参数.用案例说话哈.上一节课只是让大家有比较简单的了解,那么这节我们来细化一下哈.>>>def hello(x):        ...

  9. 剑指Offer 反转链表

    题目描述 输入一个链表,反转链表后,输出链表的所有元素.     思路: 法1:用栈,压栈出栈 法2:头插法(有递归非递归2中)   AC代码: /* struct ListNode { int va ...

  10. Kali Linux渗透基础知识整理(四):维持访问

    Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ...