andrzejkupczyk / redis-messenger
Framework-agnostic Redis Streams client
Installs: 528
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/andrzejkupczyk/redis-messenger
Requires
- php: ^7.4|^8.0
- ext-redis: *
- symfony/event-dispatcher: ^5.1
Requires (Dev)
- friends-of-phpspec/phpspec-code-coverage: ^4.3
- illuminate/redis: ^8.16
- phpspec/phpspec: ^6.3
Suggests
- illuminate/redis: Simplifies integration with Lumen framework
This package is auto-updated.
Last update: 2021-09-25 12:42:44 UTC
README
Framework-agnostic Redis Streams client.
Examples of use
This package aims to support all Redis Streams commands that are available. Examples listed below illustrates only the simplest use cases, but more examples are provided.
Publishing messages
use WebGarden\Messaging\Client; use WebGarden\Messaging\Redis\{Entry,Stream}; $client = Client::connect('redis'); $client ->to(new Stream('mystream')) ->add( Entry::compose(['name' => 'Sara', 'surname' => 'OConnor']), Entry::compose(['field1' => 'value1', 'field2' => 'value2']) );
Consuming messages
use WebGarden\Messaging\Client; use WebGarden\Messaging\Redis\Stream; use WebGarden\Messaging\Events\ItemReceived; $client = Client::connect('redis'); $client ->from(new Stream('mystream')) ->on('reader.item_received', function (ItemReceived $event) { printf("Received item %s\n", $event->entry->id()); }) ->followNewEntries();
Install
Via Composer
composer require andrzejkupczyk/redis-messenger
ℹ️️ package requires the PhpRedis PHP extension