CSCMS(程氏cms)短信接口替换

CSCMS是一款多功能网络信息管理系统, 采用PHP5+MYSQL做为技术基础进行开发。采用OOP(面向对象)方式进行基础运行框架搭建。模块化开发方式做为功能开发形式。框架易于功能扩展,代码维护,优秀的二次开发能力。今天我就为大家做一次替换短信接口的工作。我们使用的短信接口是短信宝短信群发平台的短信接口,短信宝短信群发平台非常稳定,短信发送速度快,注册还送测试短信,用户体验非常好,推荐大家使用。

接下来就为大家详细的说明一下开发步骤,首先我们要替换后台的显示界面,在xiangmu/cscms/tpl/admin/sms_setting.html,修改36~55行左右,代码如下:

经过以上替换后台的显示界面都是短信宝了,我们接下来进行发送短信的业务代码,在项目/cscms/app/libraries/Smstel.php文件,替换代码如下:

appid   = CS_Sms_ID;  //商户ID
                   $this->appkey  = CS_Sms_Key;  //商户KEY
           $this->curl    = 'http://api.smsbao.com/sms?';
        }

    //发送
        function add($tel,$neir){
                   $param['u']=$this->appid;
                   $param['p']=md5($this->appkey);
                   $param['m']=trim($tel);
                   $param['c']='【'.CS_Sms_Name.'】'.$neir;
                   $param['c']=iconv('GBK', 'UTF-8', $param['c']);
                   //iconv('GB2312', 'UTF-8', $param['c']);
                   $url=$this->curl.(http_build_query($param));
                   //电话号码是否为多个
                   $send_num=0;
                   if(strstr($tel,",")){
                           $tel_array=explode(',',$tel);
                           foreach($tel_array as $key=>$val){
                                   $msg=file_get_contents($url);
                                   if($msg=='0'){
                                           $send_num++;
                                   }
                           }
                   }else{
                           $msg=file_get_contents($url);
                           if($msg=='0'){
                                   $send_num++;
                           }
                   }
                   $send_num=$this->error($send_num);
                   return $send_num;
    }

    //发送注册验证码
        function seadd($tel){

                   $tel_time=$_SESSION['tel_time'];
           if($tel_time && $tel_time+60>time()){
                       return 'addok'; //发送时间没有过60秒
                   }
                   $code=random_string('nozero',4);
                   $_SESSION['tel_code']=$code;
                   $_SESSION['tel_time']=time();                   

                   $neir='欢迎注册,您的验证码是'.$code.',请尽快完成验证。(如非本人操作,可不予理会)';
                   $param['u']=$this->appid;
                   $param['p']=md5($this->appkey);
                   $param['m']=trim($tel);
                   $param['c']='【'.CS_Sms_Name.'】'.$neir;
                   $param['c']=iconv('GBK', 'UTF-8', $param['c']);
                   $url=$this->curl.(http_build_query($param));
                   $msg=file_get_contents($url);
                   $msg=$this->error($msg);
                   return $msg;
    }

    //查询余额
        function balance(){

                 
           $rmb=file_get_contents("http://www.smsbao.com/query?u=".$this->appid."&p=".md5($this->appkey));
                   $array=explode(',',$rmb);
                   return $array[1];
    }

    //查询记录
        function lists($len=12,$p=1){

                   $get='lists?uid='.$this->appid;
                   $get.='&key='.$this->appkey;
                   $get.='&len='.$len;
                   $get.='&p='.$p;
           $url=$this->curl.$get;
                   $str=htmlall($url);
                   return $str;
    }

    //错误提示
    function error($msg){
                    if(empty($msg)){
                 return L('curl_err');
                        }
            return $msg;
        }
}

好了,经过以上的替换,短信宝的短信平台已经替换成功了,可以正常使用了。最后我们进行发送测试。

CSCMS(程氏cms)短信接口替换_第1张图片

报备一下我们短信宝的VIP模板,这样就可以走短信宝的优质通道了,并且免审核了,短信内容3~5秒就可送达。

你可能感兴趣的:(插件开发)