承接 spiralover/nerve-client 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

spiralover/nerve-client

最新稳定版本:0.2.0

Composer 安装命令:

composer require spiralover/nerve-client

包简介

Webhook Payload Routing Client

README 文档

README

Webhook Payload Router PHP Client

Getting started

composer require spiralover/nerve-client

Usage

Neuron Management

<?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);

Emitting Impulses

Sending impulse(event) to webhooks

<?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: 'http://localhost:9999',
    uniqueReference: $uniqueReference,
    callback: 'http://localhost:7777',
    callbackOnSuccess: false,
    callbackOnFailure: true,
    withImpulseMetadata: true
);

Receiving Impulses

Receiving impulse(event) from 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;

Client Options

<?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
);

Enjoy 😎

统计信息

  • 总下载量: 298
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-03-01