• nodejs DEMO

    nodejs DEMO

    功能说明:该接口要求提前在云片后台添加模板,提交短信时,系统会自动匹配审核通过的模板,匹配成功任意一个模板即可发送。系统已提供的默认模板添加签名后可以直接使用。

    1. // 修改为您的apikey.可在官网(https://www.yunpian.com)登录后获取
    2. var https = require('https');
    3. var qs = require('querystring');
    4. var apikey = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
    5. // 修改为您要发送的手机号码,多个号码用逗号隔开
    6. var mobile = 'xxxxxxxxxxx';
    7. // 修改为您要发送的短信内容
    8. var text = '【云片网】您的验证码是1234';
    9. // 指定发送的模板编号
    10. var tpl_id = 1;
    11. // 指定发送模板的内容
    12. var tpl_value = {'#code#':'1234','#company#':'yunpian'};
    13. // 语音短信的内容
    14. var code = '1234';
    15. // 查询账户信息https地址
    16. var get_user_info_uri = '/v2/user/get.json';
    17. // 智能匹配模板发送https地址
    18. var sms_host = 'sms.yunpian.com';
    19. var voice_host = 'voice.yunpian.com';
    20. send_sms_uri = '/v2/sms/single_send.json';
    21. // 指定模板发送接口https地址
    22. send_tpl_sms_uri = '/v2/sms/tpl_single_send.json';
    23. // 发送语音验证码接口https地址
    24. send_voice_uri = '/v2/voice/send.json';
    25. query_user_info(get_user_info_uri,apikey);
    26. send_sms(send_sms_uri,apikey,mobile,text);
    27. send_tpl_sms(send_tpl_sms_uri,apikey,mobile,tpl_id,tpl_value);
    28. send_voice_sms(send_voice_uri,apikey,mobile,code);
    29. function query_user_info(uri,apikey){
    30. var post_data = {
    31. 'apikey': apikey,
    32. };//这是需要提交的数据
    33. var content = qs.stringify(post_data);
    34. post(uri,content,sms_host);
    35. }
    36. function send_sms(uri,apikey,mobile,text){
    37. var post_data = {
    38. 'apikey': apikey,
    39. 'mobile':mobile,
    40. 'text':text,
    41. };//这是需要提交的数据
    42. var content = qs.stringify(post_data);
    43. post(uri,content,sms_host);
    44. }
    45. function send_tpl_sms(uri,apikey,mobile,tpl_id,tpl_value){
    46. var post_data = {
    47. 'apikey': apikey,
    48. 'mobile':mobile,
    49. 'tpl_id':tpl_id,
    50. 'tpl_value':qs.stringify(tpl_value),
    51. };//这是需要提交的数据
    52. var content = qs.stringify(post_data);
    53. post(uri,content,sms_host);
    54. }
    55. function send_voice_sms(uri,apikey,mobile,code){
    56. var post_data = {
    57. 'apikey': apikey,
    58. 'mobile':mobile,
    59. 'code':code,
    60. };//这是需要提交的数据
    61. var content = qs.stringify(post_data);
    62. console.log(content);
    63. post(uri,content,voice_host);
    64. }
    65. function post(uri,content,host){
    66. var options = {
    67. hostname: host,
    68. port: 443,
    69. path: uri,
    70. method: 'POST',
    71. headers: {
    72. 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
    73. }
    74. };
    75. var req = https.request(options, function (res) {
    76. // console.log('STATUS: ' + res.statusCode);
    77. // console.log('HEADERS: ' + JSON.stringify(res.headers));
    78. res.setEncoding('utf8');
    79. res.on('data', function (chunk) {
    80. console.log('BODY: ' + chunk);
    81. });
    82. });
    83. //console.log(content);
    84. req.write(content);
    85. req.end();
    86. }