python荣联云通讯短信平台
荣联云通讯短信平台
注册账号
管理模块>>应用管理>>创建应用>>编辑应用>>勾选短信验证码
安装
requests
模块
pip install requests
配置
POST :
https://app.cloopen.com:8883/2013-12-26/Accounts/{accountSid}/SMS/TemplateSMS?sig={SigParameter}
请求包头
参数 类型 是否必选 参数说明 accountSid String 必选 账号ID SigParameter String 必选 签名 SigParameter: 账号ID+令牌Token+时间(‘YmdHMS’) 的MD5值
请求包头字段
参数 类型 是否必选 参数说明 Accept String 必选 客户端响应接收数据格式 Content-Type String 必选 类型 Content-Length String 必选 Authorization String 必选 携带参数 请求包体
参数 类型 是否必选 参数说明 to String 必选 “电话1,电话2,电话3” appId String 必选 应用ID templateId String 必选 datas String 可选 内容数据外层节点,模板如果没有变量,此参数可不传 data String 可选 内容数据,用于替换模板中{序号} 响应
此步响应只表明客户的短信请求发送成功,不表明短信通道已经发送短信成功。(状态码)
参数 类型 是否必选 参数说明 statusCode String 必选 请求状态码,取值000000(成功) smsMessageSid String 必选 短信唯一标识符 dateCreated String 必选 短信的创建时间
代码块
import hashlib,base64,requests,jsonfrom datetime import datetimeclass YunTongXin:__base_url = 'https://app.cloopen.com:8883/2013-12-26/Accounts/{}/SMS/TemplateSMS?sig={}'# 初始化代码def __init__(self, accid='', appid='', appkey='', temid='',temp_motice='45分钟'):self.accid = accidself.appid = appidself.appkey = appkeyself.temid = temidself.temp_motice = temp_motice# md5编码def __md5(self, raw):md5 = hashlib.md5()md5.update(raw.encode('utf-8'))return md5.hexdigest()# 获取格式化时间def __get_format_time(self):return str(datetime.now().strftime('%Y%m%d%H%M%S'))# base64编码def __get_base64_code(self, raw):st = raw.encode()return base64.b64encode(st).decode('utf-8')# 请求包头def __request_url(self, stamp):sig = self.__md5(self.accid + self.appkey + stamp).upper() # 生成签名return self.__base_url.format(self.accid, sig) # https 请求地址# 请求包头字段def __request_header(self, stamp):authorization = self.__get_base64_code(self.accid + ':' + stamp)return {'Authorization': authorization, 'Accept': 'application/json;','Content-Type': 'application/json;charset=utf-8;'}# 请求包体def __request_body(self, phone, code):return {"to": ','.join(phone),"appId": self.appid,"templateId": self.temid,"datas": [code, self.temp_motice]}# 返回结构化结果def __ajaxReturn(self, code=92000, msg='', data=[]):dict = {"code": code, "msg": msg, "data": data}return json.dumps(dict)# 发送短信def send(self, phone=[], code=''):stamp = self.__get_format_time() # 获取当前格式化时间url = self.__request_url(stamp) # 请求包地址headers = self.__request_header(stamp) # 请求包头字段data = self.__request_body(phone, code)obj = requests.post(url, headers=headers, json=data)dict = json.loads(obj.text)if dict.get('statusCode') == '000000':return self.__ajaxReturn(msg="发送成功", data={})else:return self.__ajaxReturn(code=92001, msg='发送失败', data={"code": dict.get('statusCode')}) # 调用
accid = '' # 账号id
appid = '' # 应用id
appkey = '' # key
temid = '1' # 默认模版
temp_motice = '30分钟' # 参数
phone = ['电话1','电话2'] # 电话号码
code = '' # 短信验证码
# 实例化
yun = YunTongXin(accid=accid,appid=appid,appkey=appkey,temid=temid,temp_motice=temp_motice)
# 发送短信
yun.send(phone, code)
python荣联云通讯短信平台相关推荐
- Django验证码*短信验证码之2-容联云通讯短信平台(联云通讯短信平台介绍、容联云通讯Python SDK、封装发送短信单例类)
容联云通讯短信平台介绍 容联云通讯网址:https://www.yuntongxun.com/ 容联云管理控制台 容联云创建应用 容联云通讯Python SDK https://doc.yuntong ...
- 容联云通讯短信平台JS调用
容联云通讯官网 1.注册 注册成功之后,会赠送8元进行测试 记录账号信息用于代码中配置 添加测试号码用于测试 2.接口配置(js) var md5 = require('blueimp-md5') v ...
- 荣联云发送短信验证码--python3接口
前言 近期做网页注册需要用到发送验证码功能,于是用荣联云的发送短信验证码进行测试,官网上提供的demo是python2.7的,而目前都使用的python3了,而且demo中的代码太长了,我只取demo ...
- 容联云通讯短信接口 Python3 文档
容联云通讯官方还未发布python3以上的版本,此文档是向云通讯的工作人员获取的,下载后解压可以直接使用
- Luffy之注册认证(容联云通讯短信验证)
用户的注册认证 前端显示注册页面并调整首页头部和登陆页面的注册按钮的链接. 注册页面Register,主要是通过登录页面进行改成而成. 先构造前端页面 <template><div ...
- python 容联云测试短信接口
文章目录 1.注册容连云 1.1 登录即可看到开发者账号信息 1.2 添加测试账号 2.使用容联云发送代码测 3.在视图函数中使用 3.1写视图函数 3.1 添加路由 1.注册容连云 注册地址 1.1 ...
- 创蓝253云通讯短信平台变量说明
创蓝253云通讯变量说明文档 变量短信发送 用户通过HTTP的POST方式提交短信发送请求. 系统提交URL地址 http://sms.253.com/msg/HttpVarSM 参数定义 序号 参数 ...
- Java调用容联云通讯短信验证码API接口示例
1.注册账号 https://www.yuntongxun.com/doc.html 注册后点击控制台可以看到你的信息 2.添加测试号码 3.打开文档>Rest API>短信 下载Java ...
- luffcc项目-06-使用容联云发送短信、Celery
一.使用容联云发送短信 https://www.yuntongxun.com/ 目录结构 sms.py import json from .SmsSDK import SmsSDK from djan ...
最新文章
- 如何使用VB编写Excel的COM组件
- 《扩展 jQuery》——6.3 总结
- 【学习笔记】mysql多实例安装
- GCC,Clang,make,cmake,makefile,CMakeLists.txt的概念
- python 更改输出的颜色_python 输出指定的颜色
- MySQL支持IPv6
- pytorch学习笔记(八):softmax回归的从零开始实现
- Postgres用returning实现mysql的last_insert_id
- 【Word】关于Word文档写作中遇到的一些问题
- newifi3 高恪魔改_newifi 3 四大路由器固件优劣分析
- 【原创】CSS3动画总结对比 / 带思维导图 / 启发小案例
- VMLogin反指纹超级浏览器-模拟真人输入-使用方法
- 重磅开源:带屏幕LCD脱机下载器离线下载器!
- Mac双开微信客户端方法
- Mysql查询性能优化-善用Explain语句
- html5调用手机震动
- Echarts双Y轴图表处理
- 图像和像素(Images and Pixels)
- FFmpeg 在 Python 中的安装使用方法详解
- 使用html5静态页面的总结,幸福西饼:静态页面制作项目总结
热门文章
- ffmpeg 命令学习
- 如何直接打印int[]数组
- docker学习至docker-compose
- 很有意思的十句话,说说背后的故事。
- Provides transitive vulnerable dependency org.yaml:snakeyaml:1.33
- 家用千兆路由器排行榜前十名_求家用路由器排名前十名,有哪些比较推荐?
- java 中subtract_Java.math.BigDecimal.subtract()方法实例
- texturepacker 打包图集
- chrome绿色版制作方法
- Windows 剪切板的应用——复制浏览器or本地目录图片