MAS短信平台发送短信分为两种方式

参考文档下载

一、sdk调用

using mas.ecloud.sdkclient;
using System;namespace 短信发送
{class Program{private static Client client = Client.instance;static void Main(string[] args){string url = "";//身份认证地址,向客户经理获取。string apId = "";//账号string secretKey = "";//密码string ecName = "";    //集团名称string sign = "";    //网关签名编码string mobiles = "";//电话号码string content = "测试短信发送";//短信内容bool loginResult = client.login(url, apId, secretKey, ecName);Console.WriteLine("登录结果:" + loginResult);if (loginResult){// 发送短信 int sendResult = client.sendDSMS(new string[] { mobiles }, content, "", 5, sign, Guid.NewGuid().ToString());Console.WriteLine("发送结果:" + sendResult);               }
}}
}

所需sdk

二、http调用

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;namespace 短信发送
{public class SMSUtils{private static String apId = "";//用户名private static String secretKey = "";//密码private static String ecName = "";    //集团名称private static String sign = "";    //网关签名编码private static String addSerial = "";   //拓展码 填空public static String url = "http://112.35.1.155:1992/sms/norsubmit";//请求urlhttp://112.35.1.155:1992/sms/norsubmitprivate static String mobiles = "";//电话号码(多个电话号码用逗号隔开)private static String content = "测试短信发送";//短信内容public SMSUtils(){}public void  SendMessage(){                 SendReq sendReq = new SendReq();             sendReq.apId = apId;sendReq.ecName = ecName;sendReq.secretKey = secretKey;sendReq.content = content;sendReq.mobiles = mobiles;sendReq.addSerial = addSerial;sendReq.sign = sign;sendReq.mac = UserMd5(sendReq.ecName + sendReq.apId + sendReq.secretKey + sendReq.mobiles + sendReq.content + sendReq.sign);var reqText = JsonConvert.SerializeObject(sendReq);string encode = Convert.ToBase64String(Encoding.UTF8.GetBytes(reqText));sendPost(url, encode);}#region MyRegionprivate static void sendPost(string url, string param){//创建HttpClient(注意传入HttpClientHandler)var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };using (var http = new HttpClient(handler)){var content = new StringContent(Newtonsoft.Json.JsonConvert.SerializeObject(param), Encoding.UTF8, "application/json");var response = http.PostAsync(url, content).Result;//传参使用                                                                  response.EnsureSuccessStatusCode(); //确保HTTP成功状态值R//await异步读取最后的JSON(注意此时gzip已经被自动解压缩了,因为上面的AutomaticDecompression = DecompressionMethods.GZip)var result = response.Content.ReadAsStringAsync().Result;var json = JsonConvert.DeserializeObject<SendRes>(result);bool success = json.success;}}#endregion//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 class SendReq{public string ecName { get; set; }     //集团客户名称public string apId { get; set; }        //用户名public string secretKey { get; set; }           //密码public string mobiles { get; set; }     //手机号码逗号分隔。(如“18137282928,18137282922,18137282923”)public string content { get; set; }     //发送短信内容public string sign { get; set; }        //网关签名编码,必填,签名编码在中国移动集团开通帐号后分配,可以在云MAS网页端管理子系统-SMS接口管理功能中下载。public string addSerial { get; set; }           //扩展码,根据向移动公司申请的通道填写,如果申请的精确匹配通道,则填写空字符串(""),否则添加移动公司允许的扩展码。public string mac { get; set; }         //API输入参数签名结果,签名算法:将ecName,apId,secretKey,mobiles,content ,sign,addSerial按照顺序拼接,然后通过md5(32位小写)计算后得出的值。
    }/*** 发送短信响应实体*/public class SendRes{public string rspcod { get; set; } //响应状态码public string msgGroup { get; set; }    //消息批次号,由云MAS平台生成,用于验证短信提交报告和状态报告的一致性(取值msgGroup)注:如果数据验证不通过msgGroup为空public bool success { get; set; }    //数据校验结果
    }}

转载于:https://www.cnblogs.com/macT/p/11350760.html

移动MAS短信平台发送短信相关推荐

  1. 使用web短信平台发送短信

    // 使用web短信平台发送短信 首先创建一个messgee.properties 文件, 文件内部写入用户名和密码 比如: #短信平台的账号和密码 cdkey=3ADK-YUH-0130-LGXQO ...

  2. Java后端阿里云短信平台发送短信

    最近做了关于阿里云平台发送短信的功能,记录下代码方便以后查阅: @Service public class ALiYunSMSServiceImpl implements ALiYunSMSServi ...

  3. 中国网建 java_java中用中国网建提供的SMS短信平台发送短信

    接下来的项目需求中提到需要短信发送功能,以前没有做过,因此便在网上搜了一下.大体上说的都是有三种方法,分别是sina提供的webservice接口.短信mao和中国网建提供的SMS短信平台. 这三种方 ...

  4. java中用中国网建提供的SMS短信平台发送短信

    接下来的项目需求中提到需要短信发送功能,以前没有做过,因此便在网上搜了一下.大体上说的都是有三种方法,分别是sina提供的webservice接口.短信mao和中国网建提供的SMS短信平台. 这三种方 ...

  5. python通过榛子云短信平台发送短信验证码

    一.注册榛子云短信平台用户 ①注册地址:http://smsow.zhenzikj.com/ ②充值,做个人测试的话十块钱足够啦!可以发送280条 ③进入应用管理下的我的应用里边查看AppId以及Ap ...

  6. 阿里大鱼短信平台发送短信超过数目失败

    测试的时候超过了,阿里每天的限制数目,导致短信发送失败 通过下面的白名单,可以将测试手机号添加到白名单中 完成!

  7. 记录对接移动Mas平台发送短信踩的坑

    记录对接移动Mas平台发送短信踩的坑 1.首先吐槽一下,移动云Mas平台的接口文档写的真辣鸡 2.第一步,在已经注册完申请过云Mas平台账号之后,登录:移动云Mas平台. 3.登录之后找到 管理 - ...

  8. 网页版短信平台发送教程【图文】

    2021网页版短信平台发送教程[图文] 一.登录账户 在进行短信发送前,请先完成您的账户注册和配置,登录账号->短信->开通产品->根据需求购买事务类或通用运营类资源包. 详情如下图 ...

  9. php 短信验证 云之讯,python3.7实现云之讯、聚合短信平台的短信发送功能

    1.云之讯平台数据返回Json格式: {'reason': '操作成功', 'result': {'sid': '17209241456456455454', 'fee': 1, 'count': 1 ...

最新文章

  1. 一键部署dns服务_OpenShift : 通往云原生、DevOps、微服务和Serverless的大门
  2. vue与html优势与缺点,vue优缺点详解
  3. 【ruby项目,语言提交检查(一)】怎样高速学习ruby ?
  4. 我的第一个web开发框架
  5. mybatis-plus大批量数据插入缓慢问题
  6. 【转】VPP基本安装
  7. Maven学习总结(40)——Maven安装项目jar到本地和私服相关总结
  8. CHM文件出现的常见错误及解决办法
  9. C++ 资源管理 —— RAII
  10. python自动化六--操作mysql,redis,发送邮件,EXCEL,MD5加密
  11. keepalived 非抢占模式
  12. 记录阿里技术面试全流程
  13. 人工智能——机器学习是什么
  14. php CI框架单元测试
  15. stm32跑web服务器和协议栈的区别,STM32与LAN9252构建EtherCAT从站(二):使用SSC生成协议栈和XML文件——丁丁的个人网站...
  16. python解题时间_1小时还是30秒?Python给你的另一种数据处理选择
  17. MTP模式与USB存储模式(MTP in Android)
  18. 齐二TK6916/20/26/32系列数控落地铣镗床简介1
  19. 计算机 绘图 教案,计算机绘图教案.doc
  20. C语言 —— 一分钟让你理解自增和自减

热门文章

  1. 组件化开发之如何封装组件
  2. AE学习笔记 logo燃烧特效
  3. 【云原生之Docker实战】使用Docker部署个人CMS点播平台
  4. IO虚拟化 - virtio介绍及代码分析【转】
  5. H.266 JEM相对于HEVC HM的改进
  6. win10修改任务计划程序设置时提示“一个或多个指定的参数无效”的解决办法
  7. 一套免费开源Java充电桩平台
  8. Django 使用手册
  9. And design vue组件库table列设置最小宽度
  10. 华为云安全云脑,让企业云化运营更放心