notifea/notifea-php-nette

为Notifea服务提供PHP语言的Nette包装器。

1.1.0 2021-05-16 15:04 UTC

This package is auto-updated.

Last update: 2024-09-26 00:42:11 UTC


README

为Notifea服务提供PHP语言的Nette包装器。

Notifea为客户端提供了一种非常用户友好的方式,将交易电子邮件和短信发送给他们的用户。

此包是Notifea PHP包的Nette包装器。

最低要求

此包将要求您使用以下内容:

安装

要安装SDK,您需要在项目中使用Composer。有关安装说明,请参阅文档

安装Composer后,安装SDK

composer require notifea/notifea-php-nette

首先在您的config neon文件中注册Notifea\Nette\DI\NotifeaExtension

extensions:
    notifea: Notifea\Nette\DI\NotifeaExtension

您只需要设置authorization配置密钥。值可以在访问令牌部分生成。

extensions:
    notifea: Notifea\Nette\DI\NotifeaExtension

notifea:
    authorization: "Bearer {token}"

还有一些可选参数可以指定。

extensions:
    notifea: Notifea\Nette\DI\NotifeaExtension

notifea:
    api_host: "https://api.notifea.com/v1"
    authorization: "Bearer {token}"
    connect_timeout: 10
    timeout: 30

版本

此包目前支持

  • 使用标记^0.0.1的nette 2.4
  • 使用标记^1.0.0的nette 3.0

要支持其他版本,请与我们联系。

用法

此包提供了一种方便的依赖注入层,用于在核心Notifea PHP包中实现的Notifea\Services\EmailServiceNotifea\Services\SmsServiceNotifea\Services\SmsSenderService,因此它们可以在您的Nette应用程序的任何地方轻松使用。

可以像这样注入它们

class UserPresenter extends Nette\Application\UI\Presenter
{
    /** @var EmailService */
    protected $emailService;

    /** @var SmsService */
    protected $smsService;
    
    /** @var SmsSenderService */
    protected $smsSenderService;

    /**
     * UserPresenter constructor.
     * @param EmailService $emailService
     * @param SmsService $smsService
     * @param SmsSenderService $smsSenderService
     */
    public function __construct(
        EmailService $emailService,
        SmsService $smsService,
        SmsSenderService $smsSenderService
    ) {
        $this->emailService = $emailService;
        $this->smsService = $smsService;
        $this->smsSenderService = $smsSenderService;
    }

    public function actionSendEmail()
    {
        // .. your business logic
        $email = new Email();
        // ... 
        $sentEmail = $this->emailService->sendEmail($email);
    }

    public function actionSendSms()
    {
        // .. your business logic
        $sms = new Sms();
        // ... 
        $sentSms = $this->smsService->sendSms($sms);
    }
    
    public function actionCreateSmsSender()
    {
        // .. your business logic
        $smsSender = new SmsSender();
        // ... 
        $createdSmsSender = $this->smsSenderService->createSmsSender($smsSender);
    }

}

EmailService包含以下方法

  • getEmails()
  • getEmail(string $emailUuid)
  • sendEmail(Email $email)
  • deleteEmail(string $emailUuid)

SmsService包含以下方法

  • getSmss()
  • getSms(string $smsUuid)
  • sendSms(Sms $sms)
  • deleteSms(string $smsUuid)

SmsSenderService包含以下方法

  • getSmsSenders()
  • getSmsSender(string $smsSenderUuid)
  • createSmsSender(SmsSender $smsSender)
  • updateSmsSender(SmsSender $smsSender)
  • deleteSmsSender(string $smsSenderUuid)

要获取有关每个方法的更详细文档,请查看我们的核心Notifea PHP包

社区

贡献

依赖项通过composer管理

$ composer install

可以通过phpunit运行测试

$ vendor/bin/phpunit