Files
wordpress-theme-aksrt/src/Sms/ProviderInterface.php
T
kate522 8c5b1555c9 refactor: flatten src/AKSRT → src (drop theme-identifier dir)
Move all domain folders from src/AKSRT/{Domain} to src/{Domain}; remap
Composer PSR-4 "AKSRT\\": "src/"; update audit script + README + ADR
paths; remove dead tools/build-psr4-map.php (scanned deleted inc/classes).
2026-08-02 22:06:06 +08:00

48 lines
1.1 KiB
PHP

<?php
/**
* @package AKSRT
*/
namespace AKSRT\Sms;
defined('ABSPATH') || exit;
interface ProviderInterface {
/**
* 供应商唯一标识
*/
public function get_key(): string;
/**
* 供应商显示名称
*/
public function get_label(): string;
/**
* 校验配置完整性,返回缺失字段列表
*
* @param array $config SMS 配置
* @return array 缺失的字段名列表,空数组表示配置完整
*/
public function validate_config(array $config): array;
/**
* 发送短信验证码
*
* @param string $phone 手机号
* @param string $code 验证码
* @param array $config SMS 配置
* @return array{success: bool, message: string, transport?: string}
*/
public function send_code(string $phone, string $code, array $config): array;
/**
* 获取供应商运行时状态
*
* @param array $config SMS 配置
* @return array{configured: bool, available: bool, verified: bool, transport: string, missing_fields: array}
*/
public function get_status(array $config): array;
}