mikaelkael / ntfy-notifier
Symfony Ntfy Notifier 桥接器
v2.1.0
2024-08-31 15:08 UTC
Requires
- php: >=7.4
- ext-json: *
- symfony/framework-bundle: ^5.4|^6.0
- symfony/http-client: ^5.0|^6.0
- symfony/notifier: ^5.4|^6.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.5
- phpstan/phpstan: ^1.4
- phpunit/phpunit: ~8.5|~9.5
- vimeo/psalm: ^4.29
README
为 Symfony Notifier 提供 Ntfy 集成。此组件应该在 Symfony 6.4 中通过此 PR #50131 引入。此包为 Symfony 5.4.x 到 6.3.x 提供相同的功能。
DSN 示例
# .env NTFY_DSN=ntfy://[USER:PASSWORD]@default[:PORT]/TOPIC?[secureHttp=[on]]
where
URL是你使用的 ntfy 服务器- 如果提供了
default,则默认为托管在 ntfy.sh 上的公共 ntfy 服务器。
- 如果提供了
TOPIC是此 ntfy 服务器上的主题。PORT是可选的特定端口。USER和PASSWORD是服务器支持访问控制时的用户名和密码
如果服务器不安全,可以通过设置 secureHttp=off 来禁用 https。
启用 texter
# config/packages/notifier.yaml framework: notifier: texter_transports: nfty: '%env(NTFY_DSN)%'
发送推送消息
// src/Controller/TestController.php namespace App\Controller; use Symfony\Component\Notifier\Message\SmsMessage; use Symfony\Component\Notifier\TexterInterface; use Symfony\Component\Routing\Annotation\Route; class TestController { /** * @Route("/test") */ public function test(TexterInterface $texter) { $pushMessage = new PushMessage( 'Title', 'Message content', new NtfyOptions(['tags' => ['warning'], 'priority' => 5]) ); $result = $texter->send($pushMessage); // ... } }