avto-dev / rabbitmq-api-client
RabbitMQ API Client implementation
Requires
- php: ^8.2
- ext-json: *
- ext-mbstring: *
- composer/package-versions-deprecated: ^1.11
- guzzlehttp/guzzle: ^7.10
- illuminate/config: ~11.0 || ~12.0 || ~13.0
- illuminate/contracts: ~11.0 || ~12.0 || ~13.0
- illuminate/support: ~11.0 || ~12.0 || ~13.0
Requires (Dev)
- laravel/laravel: ~11.0 || ~12.0 || ~13.0
- phpstan/phpstan: ^1.12.27
- phpunit/phpunit: ^10.5
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
RabbitMQ API Client
This package adds into your PHP application RabbitMQ API client implementation.
Install
Require this package with composer using the following command:
$ composer require avto-dev/rabbitmq-api-client "^2.0"
Installed
composeris required (how to install composer).
You need to fix the major version of package.
After that you can "publish" package configuration file using following command:
$ php artisan vendor:publish --provider="AvtoDev\\RabbitMqApiClient\\Frameworks\\Illuminate\\LaravelServiceProvider"
Usage
At first, you should create API client instance:
<?php use AvtoDev\RabbitMqApiClient\Client; use AvtoDev\RabbitMqApiClient\ConnectionSettings; $client = new Client(new ConnectionSettings('http://127.0.0.1:15672', 'guest', 'guest')); // And after that you can execute API commands, for example: $client::version(); // Client version, like `1.0.0` $client->healthcheck(); // `true` or `false` $client->queueInfo('some-queue-name'); // Object with information about queue
If you are using Laravel framework with registered package service-provider, you can resolve client instance using DI, for example:
<?php namespace App\Console\Commands; use AvtoDev\RabbitMqApiClient\ClientInterface; class SomeCommand extends \Illuminate\Console\Command { /** * The console command name. * * @var string */ protected $name = 'some:command'; /** * Execute the console command. * * @param ClientInterface $client * * @return void */ public function handle(ClientInterface $client): void { $client->healthcheck(); // `true` or `false` } }
Testing
For package testing we use phpunit framework and docker with compose plugin as develop environment. So, just write into your terminal after repository cloning:
$ make build $ make latest # or 'make lowest' $ make test
Changes log
Changes log can be found here.
Support
If you will find any package errors, please, make an issue in current repository.
License
This is open-sourced software licensed under the MIT License.