智简魔方文档

短信接口

本文整理智简魔方财务系统中“短信接口”相关的配置、操作或问题处理内容,供管理员和运维人员按原文步骤查阅与执行。


【魔方开发者交流群:682866869】


短信插件目录位置:

public/plugins/sms

1. 文件命名

public/plugins/sms/ 下新建短信插件目录。例如开发 idcsmart 短信插件时,目录和文件为:

public/plugins/sms/idcsmart/
public/plugins/sms/idcsmart/IdcsmartPlugin.php
public/plugins/sms/idcsmart/config.php

2. 文件规范

以 idcsmart 短信插件为例,命名空间、插件基类和类名如下:

namespace sms\idcsmart;

use app\admin\lib\Plugin;

class IdcsmartPlugin extends Plugin

类中规定的函数名不能修改或缺失,其他功能可以自行增加函数。

3. 类中参数和基本函数

基础信息不能为空:

public $info = array(
    'name' => 'Idcsmart', // 插件类名不带 Plugin
    'title' => '智简魔方',
    'description' => '智简魔方官方短信平台接口',
    'status' => 1,
    'author' => '魔方财务',
    'version' => '1.0',
    'help_url' => 'https://www.idcsmat.com/', // 申请接口地址
);

install 为安装插件函数。如果返回需要导入的模板信息,安装时会创建模板;导入模板的数据格式参见:

idcsmart/config/smsTemplate.php

不需要导入模板时返回:

return true;

uninstall 为卸载插件函数,没有操作时返回:

return true;

description 返回财务系统后台创建模板页面所需的 HTML,数据格式参见:

idcsmart/config/description.html

4. 短信接口操作函数

以下函数都会收到插件配置:

$params['config'] // config.php 中的配置项在安装插件后设置得到的数组

获取国内模板

getCnTemplate($params)
$params['template_id'] // 模板 ID

成功返回:

[
    'status' => 'success',
    'template' => [
        'template_id' => 'w34da',
        'template_status' => 2, // 1 正在审核,2 审核通过,3 未通过审核
        'msg' => '模板审核失败',
    ],
]

失败返回:

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

创建国内模板

createCnTemplate($params)
$params['title']   // 模板标题
$params['content'] // 模板内容
$params['remark']  // 模板备注

成功返回:

[
    'status' => 'success',
    'template' => [
        'template_id' => 'w34da',
        'template_status' => 1,
    ],
]

失败返回:

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

修改国内模板

putCnTemplate($params)
$params['template_id'] // 模板 ID
$params['title']       // 模板标题
$params['content']     // 模板内容
$params['remark']      // 模板备注

成功返回:

[
    'status' => 'success',
    'template' => [
        'template_status' => 2,
    ],
]

失败返回:

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

删除国内模板

deleteCnTemplate($params)
$params['template_id'] // 模板 ID

成功返回:

[
    'status' => 'success',
]

失败返回:

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

发送国内短信

sendCnSms($params)
$params['template_id']    // 模板 ID
$params['templateParam']  // 替换模板内容的参数
$params['content']        // 模板内容
$params['mobile']         // 手机号

成功返回:

[
    'status' => 'success',
    'content' => '验证码43543发送成功',
]

失败返回:

[
    'status' => 'error',
    'content' => 'error',
    'msg' => '手机号错误',
]

国际短信接口

如果接口支持国际短信,可以实现以下函数,参数和返回格式与对应的国内函数相同:

getGlobalTemplate($params)
createGlobalTemplate($params)
putGlobalTemplate($params)
deleteGlobalTemplate($params)
sendGlobalTemplate($params)