spiralover / nerve-client
Webhook Payload 路由客户端
0.2.0
2024-04-21 05:29 UTC
Requires
- php: ^8.2
- ext-json: *
- guzzlehttp/guzzle: ^7.8
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.4
README
Webhook Payload 路由 PHP 客户端
开始使用
composer require spiralover/nerve-client
使用方法
神经元管理
<?php use SpiralOver\Nerve\Client\Neuron; require __DIR__ . '/vendor/autoload.php'; $client = Neuron::client(pat: '<personal-access-token>'); // List $neurons = $client->list(); // Create $created = $client->create( name: 'My Neuron 1', uniqueName: 'my.neuron.1', visibility: 'public', url: 'localhost:7788', webhook: 'localhost:7788/webhook', desc: 'Hello World', ); // Update $updated = $client->update( id: $created->neuron_id, name: 'My Neuron 1', uniqueName: 'my.neuron.1', visibility: 'public', url: 'localhost:7788', webhook: 'localhost:7788/webhook', desc: 'Hello World', ); // Fetch Info $viewed = $neuron->read($created->neuron_id); // Delete $message = $neuron->delete($created->neuron_id);
发射脉冲
向 Webhook 发送脉冲(事件)
<?php use SpiralOver\Nerve\Client\Neuron; require __DIR__ . '/vendor/autoload.php'; $client = Neuron::client(pat: '<personal-access-token>'); $uniqueReference = sprintf('my-unique-app-prefix-%s', uniqid(more_entropy: true)); $response = $client->emitImpulse( neuronId: 'ba666184-1e8d-43c0-b59a-ac7240897875', name: 'user.created', data: [ 'first_name' => 'Jane', 'last_name' => 'Doe', 'email' => 'jane.doe@example.com' ], endpoint: 'https://:9999', uniqueReference: $uniqueReference, callback: 'https://:7777', callbackOnSuccess: false, callbackOnFailure: true, withImpulseMetadata: true );
接收脉冲
从 Webhook 接收脉冲(事件)
<?php use SpiralOver\Nerve\Client\Webhook; require __DIR__ . '/vendor/autoload.php'; $webhook = Webhook::capture(secret: '<personal-access-token>'); if (!$webhook->isVerified) { // impulse verification failed http_response_code(401); } $message = $webhook->message;
客户端选项
<?php use SpiralOver\Nerve\Client\Neuron; require __DIR__ . '/vendor/autoload.php'; $client = Neuron::client( pat: '<personal-access-token>', server: Neuron::SERVER_SPIRALOVER, apiVersion: Neuron::API_VERSION_1_0 );
享受 😎