terentev-space / kithook-php
KitHook client for PHP
0.1.2
2021-05-21 06:42 UTC
Requires
- php: >=7.1
- ext-json: *
Requires (Dev)
- phpunit/phpunit: 4.*
This package is auto-updated.
Last update: 2024-10-21 14:33:22 UTC
README
🚧 Attention: the project is currently under development! 🚧
Note: Before using it, you need to deploy and configure KitHook
KitHook client for PHP
Install
For RabbitMq use kithook-php-rabbitmq
$ composer require terentev-space/kithook-php-rabbitmq
For Kafka use kithook-php-kafka
$ composer require terentev-space/kithook-php-kafka
Usage
Data:
$yourWebhookUri = 'https://example.com'; $yourWebhookId = 'myId-123'; $yourElseContentType = 'application/xml'; // Json $yourWebhookJsonData = [ 'anything' ]; // Form $yourWebhookFormData = [ 'param1' => 'value1', ]; // Query $yourWebhookQueryData = [ 'param1' => 'value1', ]; // Xml $yourWebhookXmlData = <<<XML <?xml version="1.0" encoding="UTF-8"?> <example> <!-- ... --> </example> XML;
Examples:
/** @var \KitHook\Interfaces\ClientInterface|\KitHook\Adapter $client **/ // Simple HTTP Put Json $client->sendHttpPutJson($yourWebhookUri, $yourWebhookJsonData, $yourWebhookId); // Simple HTTP Post Form $client->sendHttpPostForm($yourWebhookUri, $yourWebhookFormData, $yourWebhookId); // Simple HTTP Get Query $client->sendHttpGetEmpty($yourWebhookUri . '?' . http_build_query($yourWebhookQueryData), $yourWebhookId); // Build $content = $client->contentBuilder()->makeHttp() // OR ->withType(\KitHook\Entities\Messages\Contents\QueueHttpMessageContent::TYPE_ELSE) ->withData($yourWebhookXmlData) ->withFormatForElseType($yourElseContentType) // OR ->fillElse($yourWebhookXmlData, $yourElseContentType) // FINALLY ->build(); $message = $client->messageBuilder()->makeHttp() // OR ->withId($yourWebhookId) ->withUri($yourWebhookUri) ->withMethod(\KitHook\Entities\Messages\QueueHttpMessage::METHOD_POST) ->withContent($content) // OR ->fillPost($yourWebhookUri, $yourWebhookId, $content, [/* headers */], [/* properties */]) // OR ->fillPost($yourWebhookUri, $yourWebhookId) ->makeContent() ->fillForm($yourWebhookFormData) ->buildFromMessage() // FINALLY ->build(); $client->send($message);
Credits
License
The Apache 2.0 License (Apache-2.0). Please see License File for more information.