You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
crmeb_php/crmeb/services/BaseSmss.php

108 lines
2.7 KiB

1 year ago
<?php
// +----------------------------------------------------------------------
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
namespace crmeb\services;
use crmeb\basic\BaseStorage;
use crmeb\services\AccessTokenServeService;
/**
* Class BaseSmss
* @package crmeb\basic
*/
abstract class BaseSmss extends BaseStorage
{
/**
* access_token
* @var null
*/
protected $accessToken = NULL;
/**
* BaseSmss constructor.
* @param string $name
* @param AccessTokenServeService $accessTokenServeService
* @param string $configFile
*/
public function __construct(string $name, AccessTokenServeService $accessTokenServeService, string $configFile)
{
$this->accessToken = $accessTokenServeService;
$this->name = $name;
$this->configFile = $configFile;
$this->initialize();
}
/**
* 初始化
* @param array $config
* @return mixed|void
*/
protected function initialize(array $config = [])
{
}
/**
* 开通服务
* @return mixed
*/
abstract public function open();
/**修改签名
* @return mixed
*/
abstract public function modify(string $sign = null, string $phone, string $code);
/**用户信息
* @return mixed
*/
abstract public function info();
/**发送短信
* @return mixed
*/
abstract public function send(string $phone, string $templateId, array $data);
/**
* 短信模板
* @param int $page
* @param int $limit
* @param int $type
* @return mixed
*/
abstract public function temps(int $page, int $limit, int $type);
/**
* 申请模板
* @param string $title
* @param string $content
* @param int $type
* @return mixed
*/
abstract public function apply(string $title, string $content, int $type);
/**
* 模板记录
* @param int $tempType
* @param int $page
* @param int $limit
* @return mixed
*/
abstract public function applys(int $tempType, int $page, int $limit);
/**发送记录
* @return mixed
*/
abstract public function record($record_id);
}