C# webserver实现短信发送(移动)
近端时间接了个需求在原来的OA办公系统中添加一个发送短信功能。(既然需要发送短信那肯定要申请一个发送短信的账号,我这里是以移动mas为列子)

c#的weserver需要选协议WS。其他的基本不用怎么填写直接提交就可以了。
在vs项目中添加服务器引用

其中需要选择高级中的web引用

添加完成后样式

调用就简单了
CmsLsMac.WsSmsServiceService cms=new CmsLsMac.WsSmsServiceService ();//短信接口
myContent mycontent = new myContent();
string md5= UserMd5("加密信息");
mycontent.ecName = "企业名称";
mycontent.apId = "账号";
mycontent.secretKey = "密码";
//mycontent.mobiles = "电话";
mycontent.content = "今天有雷阵雨";
mycontent.sign = "签名";
mycontent.addSerial = "";//可以为null
List<string> list = new List<string>();
list.Add("电话");//具体有哪些电话号码
string mobezz = "";
foreach (var item in list)
{
mobezz += item;
}
//md5加密
mycontent.mac = UserMd5(mycontent.ecName + mycontent.apId + mycontent.secretKey + mobezz + mycontent.content + mycontent.sign);
string str="<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<WsSubmitReq>" + " <apId>" + mycontent.apId + "</apId>" + " <secretKey>" + mycontent.secretKey + "</secretKey>"
+ " <ecName>" + mycontent.ecName + "</ecName>" + " <mobiles>" + GetMobiles(list)
+ " </mobiles>" + " <content>" + mycontent.content + "</content>" + " <sign>" + mycontent.sign + "</sign>" + " <addSerial>" + mycontent.addSerial + "</addSerial>"
+ " <mac>" + mobezz + "</mac>" + "</WsSubmitReq>";
var returnz= cms.sendSms(str);//发送短信方法 根据返回值查看是否发送成功。
最主要的是需要知道接口那个方法是发送短信的。
MD5加密
public string UserMd5(string str)
{
string cl = str;
string pwd = "";
MD5 md5 = MD5.Create();//实例化一个md5对像
// 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择
byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));
// 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得
for (int i = 0; i < s.Length; i++)
{
// 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符
pwd = pwd + s[i].ToString("x2");
}
return pwd;
}
电话号码循环的---可群发
public string GetMobiles(List<string> list)
{
StringBuilder soap = new StringBuilder();
foreach (var item in list)
{
soap.Append("<string>" + item + "</string>");
}
return soap.ToString(); }
C# webserver实现短信发送(移动)的更多相关文章
- PhpSms 稳定可靠的php短信发送库
可能是目前最聪明.优雅的PHP短信发送库了.从此不再为各种原因造成的个别短信发送失败而烦忧! phpsms的任务均衡调度功能由toplan/task-balancer提供. GitHub地址:http ...
- C#利用Web Service实现短信发送(转)
通过编程方式实现短信息的发送对很多人来说是一件比较烦杂的事情,目前一般的解决方法是通过计算机和手机的连线,通过可对手机编程的语言编写相关的手机短信息程序来实现,而这种方法对于一般人来说是很难达到的,因 ...
- [工具开发] 一信通 Web 短信发送客户端
一.简介 为了协助公司运营部对几家短信平台进行测试,我根据各自的接口文档编写了几个简单的短信发送客户端: 下面是一信通 Web 短信发送客户端,使用 HTTP GET 方法. 二.效果图 1. 首页 ...
- Android短彩信源码解析-短信发送流程(三)
3.短信pdu的压缩与封装 相关文章: ------------------------------------------------------------- 1.短信发送上层逻辑 2.短信发送f ...
- C# 编写短信发送Window服务
我们做项目过程中,一般都会有发送短信的需求.最常见的就是户注册或者登录时发送短信验证码.不同类型的短信发送,我们都可以放到到一张短信表中,然后通过一个定时的作业去执行短信发送.而定时作业的执行,我们就 ...
- 使用飞信api接口实现短信发送(只能发送好友)
找了很久才找到一个能用的飞信API接口(http://quanapi.sinaapp.com/fetion.php?u=飞信登录手机号&p=飞信登录密码&to=接收飞信的手机号& ...
- 功能:使用QQ号登陆,并加上微信和短信提醒,是否增量备份可选,阿里大鱼短信发送开发与测试,聚合数据(用JSON发短信,比较清楚)
微博就可以,所以其它软件也可以http://desktop.weibo.com/ http://blog.csdn.net/jueblog/article/details/14497181http:/ ...
- Android短彩信源码解析-短信发送流程(二)
转载请注明出处:http://blog.csdn.net/droyon/article/details/11699935 2,短彩信发送framework逻辑 短信在SmsSingleRecipien ...
- Swift - 短信发送功能的实现
使用MessageUI.framework框架可以实现短信发送功能,步骤如下: (1)首先判断设备是否有发送短信功能 (2)如果设备允许发送短信,创建一个MFMessageComposeViewCon ...
随机推荐
- C++ nth_element greater
#include <iostream>#include <algorithm>#include <deque>#include <vector>#inc ...
- eclipse快捷键整理
编辑 Ctrl+1 快速修复(最经典的快捷键,就不用多说了,可以解决很多问题,比如import类.try catch包围等)Ctrl+Shift+F 格式化当前代码Ctrl+Shift+M 添加类的i ...
- Oracle关联删除的几种方式
不多说了,我们来做实验吧. 创建如下表数据 select * from t1 ; select * from t2; 现需求:参照T2表,修改T1表,修改条件为两表的fname列内容一致. 方式1,u ...
- 建立第一个Django工程---linux中的python
建立第一个Django工程 环境: ip: 192.168.0.92 系统:centos7.5 安装django pip install django 启动一个HelloWorld工程 django- ...
- python 时间类型
- shell脚本中set -e作用
最近学习shell脚本想到一个问题,如果脚本中出现了一条异常语句,甚至可以影响整个脚本的使用,那么是否有一旦出现问题就可以及时停止的方法呢?在shell脚本中set命令就可以轻松实现.set命令的-e ...
- Python获取 东方财富 7x24小时全球快讯
本文使用的IDE为PyCharm. 1.第三方库 (1)selenium selenium用来做浏览器自动化,因为这部分信息是动态加载的,不用这种方法读取不到相关数据. 安装: pip3 instal ...
- mongodb 连接后无法使用 发现已经有进程在运行
mongod 命令执行发现已经有进程在运行mongod数据库--errno:48 Address already in use for socket: 0.0.0.0:27017 错误信息: list ...
- Nginx 小入门记录 之 初识Nginx和环境准备(一)
前置知识准备: 如果还不知道服务器是干什么的,只是刚踏入程序员之路的,大家还是先学习基础,虽然以下文档很简单,但至少知道为什么要学: 一般服务器环境现在基本上都是放在Linux系统上了,如果对Linu ...
- Elasticsearch使用小结之冷热分离
Elasticsearch使用小结之冷热分离 索引迁移 索引setting中的index.routing.allocation.exclude和index.routing.allocation.inc ...