xlabs / natsbundle
NATS 封装包
2.0.4
2020-12-07 21:11 UTC
Requires
- php: >=7.0
README
NATS 后端包装器。
安装
通过 Composer 安装
php -d memory_limit=-1 composer.phar require xlabs/natsbundle
在你的 AppKernel 中
public function registerbundles()
{
return [
...
...
new XLabs\NatsBundle\XLabsNatsBundle(),
];
}
路由
追加到主路由文件
# app/config/routing.yml
x_labs_nats:
resource: .
type: xlabs_nats_routing
配置示例
以下显示默认值
# app/config/config.yml
x_labs_nats:
postback_url: /your/nats/postback/url
allowed_ips: ['127.0.0.1', '192.168.1.10', '60.58.43.125', ...]
api:
url: https://<nats_domain>/api
username: USERNAME
key: APIKEY
注意:默认允许 $_SERVER['SERVER_ADDR'] 的值,因此无需将其包含在 'allowed_ips' 数组中。
事件监听器
当达到 NATS 后端时,发生以下事件
- nats_postback.OnAdd.event (ADD)
- nats_postback.OnManualAdd.event (MANUALADD)
- nats_postback.OnActivate.event (ACTIVATE)
- nats_postback.OnChange.event (CHANGE)
- nats_postback.OnCheck.event (CHECK)
- nats_postback.OnDelete.event (DELETE)
- nats_postback.OnExpire.event (EXPIRE)
- nats_postback.OnTrialToFull.event (TRIALTOFULL)
- nats_postback.OnRebill.event (REBILL POST)
如果您想为其中任何一个注册事件监听器
# YourBundle/Resources/config/services.yml
...
custom_listener_for_nats_onAdd.event_listener:
class: YourBundle\EventListener\MyListener
tags:
- { name: kernel.event_listener, event: nats_postback.OnAdd.event, method: onAdd }
namespace YourBundle\EventListener;
use Symfony\Component\EventDispatcher\Event;
class MyListener extends Event
{
public function onAdd(Event $event)
{
$params = $event->getParams(); // all params sent by nats
...
/* Dont forget to set the response, based on Nats documentation:
http://tmmwiki.com/index.php/NATS4_Site_User_Management
OK|message
NOTOK|message
ERROR|message
*/
$event->setResponse('OK');
}
}
如果监听器中没有设置响应,则默认输出为 'OK'。