asp.net 短信群发
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 短信群发的更多相关文章
- 使用SMSManager短信管理器实现短信群发
import java.util.ArrayList; import android.os.Bundle;import android.provider.ContactsContract;import ...
- 【免费】iPhone上最好用的短信群发软件: 高速短信4.1
免费的最新的联系人.群组.多人发送短信软件短信群发4.1已经出炉.欢迎下载! *归属地信息让你时时记着好友的地方,让陌生号码变得不陌生: *您能够选择最经常使用的联系人然后发送高速短信; *群联系人 ...
- [TPYBoard - Micropython] 五分种学会用TPYBoard - GPS 制作短信群发机
转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.什么是TPYBoard-GPS TPYBoard-GPS又称TPYBoa ...
- asp调用短信接口实现用户注册
前几天做一个asp语言开发的网站需要实现用户注册短信验证功能,就研究了一下如何实现,简单给大家分享下调用过程. 首先需要找到一个第三方短信接口,当时用的是动力思维乐信的短信接口. 首先需要先注册个动力 ...
- python 简单爬虫获取气象数据发送气象定时报-预报预警信息及时推送及阿里云短信群发接口
!/usr/bin/python #encoding=utf-8 #Author:Ruiy #//////////////////////////////////////////////////// ...
- asp发送短信验证码 pst方式
<script language="jscript" runat="server"> Array.prototype.get = function ...
- thinkphp3.2短信群发项目实例
项目功能是企业给客户群发短信,我就写这么多,也不知道你能不能运行成功,如果有问题可以在QQ上问我:605114821 项目文件SMS_V2.zip下载地址,百度云:http://yun.baidu.c ...
- 五、K3 WISE 开发插件《K3 Wise 群发短信配置开发(二)之短信群发配置》
开发环境:K/3 Wise 13.0.Sql Server 2005 目录 一.开启Sql Server Agent代理服务 二.短信发送原理 三.编写存储过程 四.开启Sql Server作业 一. ...
- python 阿里云短信群发推送
本篇文章是使用Python的Web框架Django提供发送短信接口供前端调用,Python版本2.7 阿里云入驻.申请短信服务.创建应用和模板等步骤请参考:阿里云短信服务入门 1.下载sdk 阿里云短 ...
随机推荐
- torch 入门
torch 入门1.安装环境我的环境mac book pro 集成显卡 Intel Iris不能用 cunn 模块,因为显卡不支持 CUDA2.安装步骤: 官方文档 (1).git clone htt ...
- java依赖注入
接口的作用 1.在spide中创建一个私有接口 private Downloadable downlaodable 覆盖set get 方法 创建一个方法 Public Page down load ...
- 【PHP面向对象(OOP)编程入门教程】4.如何抽象出一个类?
上面已经介绍过了, 面向对象程序的单位就是对象,但对象又是通过类的实例化出来的,所以我们首先要做的就是如何来声明类, 做出来一个类很容易,只要掌握基本的程序语法定义规则就可以做的出来,那么难点在那里呢 ...
- C#之类与对象
这段代码告诉我们要把#define DEBUG放在文件的开头位置,不然会导致编译错误,最后还要#endif 以上代码告诉我们可以对自己创建的类设计自己的构造方法,然后可以通过具体的Main()函数来通 ...
- C\C++ sizeof 陷阱&&总结
今天使用动态数组,本来想通过sizeof 获取动态数据,结果出现了错误. 先对自己做个测试,能做出下面这个题目,并做出合理解释,可以不用往下看了. ][]; cout<< cout< ...
- Android Sqlite 数据库版本更新
Android Sqlite 数据库版本更新 http://87426628.blog.163.com/blog/static/6069361820131069485844/ 1.自己写一个类继承 ...
- STM32通用定时器(转载)
STM32的定时器功能很强大,学习起来也很费劲儿. 其实手册讲的还是挺全面的,只是无奈TIMER的功能太复杂,所以显得手册很难懂,我就是通过这样看手册:while(!SUCCESS){看手册-}才搞明 ...
- hihoCoder 1303 数论六·模线性方程组
Description 求解模线性方程组, \(m_i\) 不互质. Sol 扩展欧几里得+中国剩余定理. 首先两两合并跟上篇博文一样. 每次通解就是每次增加两个数的最小公倍数,这对取模任意一个数都是 ...
- 40 网络相关函数(八)——live555源码阅读(四)网络
40 网络相关函数(八)——live555源码阅读(四)网络 40 网络相关函数(八)——live555源码阅读(四)网络 简介 15)writeSocket向套接口写数据 TTL的概念 函数send ...
- 4.6---找二叉树中序后继(CC150)
因为,没有重复值,所以只需要做一个标记就OK了. public class Successor { static boolean flag = false; static int result = 0 ...