智简魔方文档

短信接口开发

位置

短信接口放在 public/plugins/sms/ 目录下

目录结构

以智简魔方官方短信平台接口为例,其主要目录结构如下:

public/plugins/sms/idcsmart/
|--- Idcsmart.php (入口文件)
|--- config.php (配置项客户配置项,在插件设置中显示)

开发流程

以智简魔方官方短信平台接口为例:

创建短信接口目录 public/plugins/sms/idcsmart/

①目录名以小写字母+下划线形式,必须以字母开头,如idcsmart;

创建入口文件:Idcsmart.php

命名空间namespace sms\idcsmart(控制器下命名空间对应相应目录即可,其它同理);

②以目录名大驼峰+.php,创建在短信接口根目录下,如idcsmart\Idcsmart.php;

③文件中需要定义info属性,示例:

# 基础信息
public $info = array(
    'name'        => 'Idcsmart',//Demo插件英文名,改成你的插件英文就行了
    'title'       => '智简魔方',
    'description' => '智简魔方官方短信平台接口',
    'status'      => 1,
    'author'      => '智简魔方',
    'version'     => '1.0.1',
    'help_url'     => 'https://my.idcsmart.com/goods.htm?id=922',//申请接口地址
);

④必须实现install()安装以及uninstall()卸载方法,没有额外操作,返回true即可;

⑤需要实现以下方法

方法名称描述参数返回
getCnTemplate获取国内模板template_id:模板 ID;config:自定义配置status:状态;template.template_id:模板 ID;template.template_status:模板状态,0 未提交,1 审核中,2 通过,3 未通过;msg:错误信息
createCnTemplate创建国内模板title:模板标题;content:模板内容;config:自定义配置getCnTemplate
putCnTemplate修改国内模板title:模板标题;content:模板内容;config:自定义配置getCnTemplate
deleteCnTemplate删除国内模板template_id:模板 ID;config:自定义配置status:状态;msg:错误信息
sendCnSms发送国内短信mobile:手机号;content:模板内容;config:自定义配置;template_id:模板 ID;templateParam:模板参数,参考附表 1status:状态;content:已替换参数的模板内容;msg:错误信息
getGlobalTemplate获取国际模板getCnTemplategetCnTemplate
createGlobalTemplate创建国际模板createCnTemplatecreateCnTemplate
putGlobalTemplate修改国际模板putCnTemplateputCnTemplate
deleteGlobalTemplate删除国际模板deleteCnTemplatedeleteCnTemplate
sendGlobalSms发送国际短信sendCnSmssendCnSms

查询或删除模板的参数示例:

$param = [
    'template_id' => 1,
    'config' => [],
];

创建或修改模板的参数示例:

$param = [
    'title' => 'test',
    'content' => '测试内容',
    'config' => ['key' => 'value'],
];

发送短信的参数示例:

$param = [
    'mobile' => '129483782423',
    'content' => '测试内容',
    'config' => ['key' => 'value'],
    'template_id' => 1,
    'templateParam' => 1,
];

模板查询、创建或修改成功时的返回示例:

return [
    'status' => 'success',
    'template' => [
        'template_id' => 'w3423',
        'template_status' => 2,
    ],
];

删除模板成功时的返回示例:

return ['status' => 'success'];

发送短信成功时的返回示例:

return [
    'status' => 'success',
    'content' => '测试内容',
];

模板操作失败时的返回示例:

return [
    'status' => 'error',
    'msg' => '模板ID错误',
];

发送短信失败时的返回示例:

return [
    'status' => 'error',
    'msg' => '模板ID错误',
    'content' => '测试内容',
];

创建默认短信模板

①在插件根目录下创建config/smsTemplate.php文件;

②文件内容返回一个数组即可,如下:

return [

    [

        'title' => '验证码',

        'content' => '验证码@var(code),5分钟内有效!请勿泄漏于他人',

        'name'=>'code'

    ],

]

title标题;content内容,带参数;name为系统模板标识,唯一;

③系统默认模板参考附表2;

④在install安装中返回模板数组,系统会自动创建模板;

到后台短信通知管理,可以查看接口列表,安装、配置即可使用

示例

参考智简魔方官方短信平台接口idcsmart

附表1、templateParam参数列表(国际国内参数一样)

参数名描述类型示例
system_website_name系统网站名系统智简魔方
system_website_url系统网站地址系统www.idcsmart.com
order_id订单ID订单125
order_create_time订单创建时间订单1707094285
order_amount订单金额订单1.00
product_name产品名称(包括商品名和主机名)产品测试-ser23142123
product_marker_name商品名称产品测试
product_first_payment_amount产品首付金额产品100.00
product_renew_amount产品续费金额产品100.00
product_binlly_cycle产品周期产品计费周期免费free,一次onetime,周期先付recurring_prepayment,周期后付recurring_postpaid
product_active_time产品激活时间产品1707094285
product_due_time产品到期时间产品1707094285
product_suspend_reason产品暂停原因产品到期暂停
renewal_first续费X天后到期第一次提醒产品1
renewal_second续费X天后到期第二次提醒产品2
client_register_time客户注册时间客户1707094285
client_username用户名客户test
client_email邮件客户135460@qq.com
client_phone手机号客户16548765643
client_company公司客户智简魔方
client_last_login_time最后登录时间客户1707094285
client_last_login_ip最后登录ip客户122.32.13.3
account账户名客户test

附表2、系统默认短信模板(以下模板内容为官方短信平台模板内容,使用需修改)

系统模板标识(name)模板标题(title)模板类型模板内容(content)示例
code验证码系统验证码@var(code),5分钟内有效!请勿泄漏于他人
client_login_success用户登录客户您的账号@var(account)成功登录系统,如不是本人操作请及时修改密码
client_register_success用户注册客户@var(account),感谢您支持@var(system_website_name)
client_change_phone客户更改手机客户您的手机号被改为:@var(client_phone),请注意账户安全
client_change_password客户更改密码客户您的密码被改为:@var(client_password),请注意账户安全
order_create订单创建订单您已下单,订单:@var(order_id)(订单号),请及时支付
host_pending产品开通中产品您的产品:@var(product_name)(产品名称)正在开通,请耐心等待
host_active开通成功产品您的产品:@var(product_name)(产品名称),已开通可使用
host_suspend产品暂停通知产品您的产品:@var(product_name)(产品名称),由于@var(product_suspend_reason),已停用
host_unsuspend产品解除暂停通知产品您的产品:@var(product_name)(产品名称),已解除暂停
host_terminate产品删除通知产品您的产品:@var(product_name)(产品名称),由于到期未续费,已删除
host_upgrad产品升降级产品您已成功升级产品@var(product_name),感谢您的支持
host_renewal_first第一次续费提醒产品您的产品:@var(product_name)(产品名称),还有@var(renewal_first)天到期,请及时续费
host_renewal_second第二次续费提醒产品您的产品:@var(product_name)(产品名称),还有@var(renewal_second)天到期,请及时续费
host_overdue_first逾期付款第一次提醒产品您的产品:@var(product_name)(产品名称)已到期,将会删除,请及时续费
host_overdue_second逾期付款第二次提醒产品您的产品:@var(product_name)(产品名称)已到期,将会删除,请及时续费
host_overdue_third逾期付款第三次提醒产品您的产品:@var(product_name)(产品名称)已到期,将会删除,请及时续费
order_overdue订单未付款通知订单您的订单:@var(order_id)(订单号)尚未支付,金额@var(order_amount),请及时支付
admin_order_amount订单金额修改订单您的订单:@var(order_id)(订单号)金额修改为@var(order_amount),请及时支付
order_pay订单支付通知订单您的订单:@var(order_id)(订单号)支付成功,支付金额为:@var(order_amount)元
order_recharge充值成功通知订单充值成功,本次充值金额为:@var(order_amount)元