• CRMEB 二开短信功能教程


    知识付费短信功能同时支持阿里云短信和 crmeb 短信,我们使用时只需要二选一即可。

    那么我们如何二开阿里云短信功能呢?

    第一步:首先进入阿里云控制台,在阿里云短信模块,申请需要新加的短信模版

    第二步:在知识付费总后台 -> 系统维护 -> 开发配置 -> 配置分类 -> 短信配置下加新的短信模版 id 储存配置

    在这里插入图片描述

    点击 “短信配置” 名称,进入短信配置下的子配置

    在这里插入图片描述

    点击添加配置,选择‘文本框’类型,填写下面的配置,提交配置

    在这里插入图片描述

    提交完成后,进入 “系统设置 -> 系统设置 -> 阿里云配置 -> 短信配置”,在这里我们可以看到我们新加的短信模版 id 配置。

    在这里插入图片描述

    第三步:调取阿里云短信接口,发送短信

    知识付费源码的根目录”extend/service/AliMessageService” 下的 sendmsg 方法为阿里云短信的发送方法;

    $tel:接收手机号

    $setTemplateCode :短信模版 ID

    $setTemplateParam :短信内容 参数为数组

    $setOutId :可以为空

    /**
     * 发送短信
     * @param string $tel 短信接收号码
     * @param string $setSignName 短信签名
     * @param string $setTemplateCode 短信模板ID
     * @param array $setTemplateParam 短信内容
     * @param string $setOutId 外部流水扩展字段
     */
    public static function sendmsg($tel = '', $setTemplateCode = '', $setTemplateParam = [], $setOutId = '')
    {
        try {
            self::init();
            $result = AlibabaCloud::rpc()
                ->product('Dysmsapi')
                ->version('2017-05-25')
                ->action('SendSms')
                ->method('POST')
                ->host('dysmsapi.aliyuncs.com')
                ->options([
                    'query' => [
                        'RegionId' => "cn-hangzhou",
                        'PhoneNumbers' => $tel,
                        'SignName' => SystemConfigService::get('smsSignName'),
                        'TemplateCode' => $setTemplateCode,
                        'TemplateParam' => json_encode(is_array($setTemplateParam) ? $setTemplateParam : ['code' => $setTemplateParam]),
                    ],
                ])->request()->toArray();
            return $result;
        } catch (ClientException $e) {
            return false;
        } catch (ServerException $e) {
            return false;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34

    如果发送短信呢?

    AliMessageService::sendmsg( t e l , tel, tel,setTemplateCode,$setTemplateParam);

    例如我们的登录验证码的发送

    在这里插入图片描述

    p h o n e 是 接 收 的 手 机 号 , phone 是接收的手机号, phonesmsTemplateCode 是短信模版 ID ,[‘code’ => $code] 就是短信的内容了;这样就发送成功了。

    源码附件已经打包好上传到百度云了,大家自行下载即可~

    链接: https://pan.baidu.com/s/14G-bpVthImHD4eosZUNSFA?pwd=yu27
    提取码: yu27
    百度云链接不稳定,随时可能会失效,大家抓紧保存哈。

    如果百度云链接失效了的话,请留言告诉我,我看到后会及时更新~

    开源地址
    码云地址:
    http://github.crmeb.net/u/defu

    Github 地址:
    http://github.crmeb.net/u/defu

  • 相关阅读:
    【Nuxt3】Vue3 + Element-plus 打包后报错 @popperjs/core
    Springboot——关于Springboot线程池时使用ThreadLocal 类的一个小小的漏洞
    vue表格不显示列号123456
    Linux之NFS服务器
    AI实用技巧 | 5分钟将coze集成到微信群机器人
    Q41F-40C手动球阀型号解析
    [附源码]SSM计算机毕业设计个性化新闻推荐系统JAVA
    Spark on Yarn With K8s
    网络安全专业术语中英对照指南
    卖出看涨期权的例子:Selling a Call Option
  • 原文地址:https://blog.csdn.net/CRMEB/article/details/125424119