<?php

namespace Kylin\Sms\Facades;

use Illuminate\Support\Facades\Facade;

/**
 * 短信服务门面
 * 
 * 提供简洁的静态方法访问短信服务功能
 * 通过 Laravel 门面模式，可以方便地调用短信管理器的方法
 * 
 * 示例：
 * ```php
 * use Kylin\Sms\Facades\Sms;
 * 
 * // 发送短信
 * Sms::send('13800138000', '您的验证码是123456');
 * 
 * // 发送模板短信
 * Sms::sendTemplate('13800138000', 'SMS_123456', ['code' => '123456']);
 * 
 * // 批量发送
 * Sms::sendBatch(['13800138000', '13900139000'], '群发内容');
 * 
 * // 使用指定网关
 * Sms::gateway('tencent')->send('13800138000', '内容');
 * ```
 * 
 * @method static array send(string $to, string $content, array $data = [], ?string $gateway = null) 发送短信
 * @method static array sendTemplate(string $to, string $templateId, array $params = [], ?string $gateway = null) 发送模板短信
 * @method static array sendBatch(array $recipients, string $content, array $data = [], ?string $gateway = null) 批量发送短信
 * @method static \Kylin\Sms\Contracts\GatewayInterface gateway(?string $name = null) 获取网关实例
 *
 * @see \Kylin\Sms\SmsManager
 * @package Kylin\Sms\Facades
 */
class Sms extends Facade
{
    /**
     * 获取服务容器中的注册名称
     * 
     * 返回短信服务在服务容器中的绑定键
     * 
     * @return string 服务名称 'sms'
     */
    protected static function getFacadeAccessor(): string
    {
        return 'sms';
    }
}
