Python DEMO
功能说明:该接口要求提前在云片后台添加模板,提交短信时,系统会自动匹配审核通过的模板,匹配成功任意一个模板即可发送。系统已提供的默认模板添加签名后可以直接使用。
#!/usr/local/bin/python #-*-coding:utf-8-*- #author: jacky # Time: 15-12-15 # Desc: 短信http接口的python代码调用示例 # https://www.yunpian.com/api/demo.html # https访问,需要安装 openssl-devel库。apt-get install openssl-devel import httplib import urllib import json #服务地址 sms_host = "sms.yunpian.com" voice_host = "voice.yunpian.com" #端口号 port = 443 #版本号 version = "v2" #查账户信息的URI user_get_uri = "/" + version + "/user/get.json" #智能匹配模板短信接口的URI sms_send_uri = "/" + version + "/sms/single_send.json" #模板短信接口的URI sms_tpl_send_uri = "/" + version + "/sms/tpl_single_send.json" #语音短信接口的URI sms_voice_send_uri = "/" + version + "/voice/send.json" #语音验证码 voiceCode = 1234 def get_user_info(apikey): """ 取账户信息 """ conn = httplib.HTTPSConnection(sms_host , port=port) headers = { "Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain" } conn.request('POST',user_get_uri,urllib.urlencode( {'apikey' : apikey})) response = conn.getresponse() response_str = response.read() conn.close() return response_str def send_sms(apikey, text, mobile): """ 通用接口发短信 """ params = urllib.urlencode({'apikey': apikey, 'text': text, 'mobile':mobile}) headers = { "Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain" } conn = httplib.HTTPSConnection(sms_host, port=port, timeout=30) conn.request("POST", sms_send_uri, params, headers) response = conn.getresponse() response_str = response.read() conn.close() return response_str def tpl_send_sms(apikey, tpl_id, tpl_value, mobile): """ 模板接口发短信 """ params = urllib.urlencode({ 'apikey': apikey, 'tpl_id': tpl_id, 'tpl_value': urllib.urlencode(tpl_value), 'mobile': mobile }) headers = { "Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain" } conn = httplib.HTTPSConnection(sms_host, port=port, timeout=30) conn.request("POST", sms_tpl_send_uri, params, headers) response = conn.getresponse() response_str = response.read() conn.close() return response_str def send_voice_sms(apikey, code, mobile): """ 通用接口发短信 """ params = urllib.urlencode({'apikey': apikey, 'code': code, 'mobile':mobile}) headers = { "Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain" } conn = httplib.HTTPSConnection(voice_host, port=port, timeout=30) conn.request("POST", sms_voice_send_uri, params, headers) response = conn.getresponse() response_str = response.read() conn.close() return response_str if __name__ == '__main__': #修改为您的apikey.可在官网(http://www.yunpian.com)登录后获取 apikey = "xxxxxxxxxxxxxxxx" #修改为您要发送的手机号码,多个号码用逗号隔开 mobile = "xxxxxxxxxxxxxxxx" #修改为您要发送的短信内容 text = "【云片网】您的验证码是1234" #查账户信息 print(get_user_info(apikey)) #调用智能匹配模板接口发短信 print send_sms(apikey,text,mobile) #调用模板接口发短信 tpl_id = 378965 #对应的模板内容为:【云片网】您的验证码是#code#,#min#分钟内有效。 tpl_value = {'#code#':'1234','#min#':'5'} print tpl_send_sms(apikey, tpl_id, tpl_value, mobile) #调用模板接口发语音短信 print send_voice_sms(apikey,voiceCode,mobile)