{"id":15663279,"url":"https://github.com/denpamusic/laravel-zeromq","last_synced_at":"2025-05-05T23:13:11.397Z","repository":{"id":32778137,"uuid":"147817888","full_name":"denpamusic/laravel-zeromq","owner":"denpamusic","description":"Fully unit-tested ZeroMQ driver for Laravel.","archived":false,"fork":false,"pushed_at":"2022-06-06T02:18:04.000Z","size":103,"stargazers_count":17,"open_issues_count":5,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-05T23:12:56.188Z","etag":null,"topics":["laravel","laravel-package","messaging","php","pubsub","pushpull","websockets","zeromq","zmq"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/denpamusic.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-07T12:03:24.000Z","updated_at":"2024-08-14T02:51:12.000Z","dependencies_parsed_at":"2022-07-24T20:32:27.248Z","dependency_job_id":null,"html_url":"https://github.com/denpamusic/laravel-zeromq","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/denpamusic%2Flaravel-zeromq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/denpamusic%2Flaravel-zeromq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/denpamusic%2Flaravel-zeromq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/denpamusic%2Flaravel-zeromq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/denpamusic","download_url":"https://codeload.github.com/denpamusic/laravel-zeromq/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252590632,"owners_count":21772940,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["laravel","laravel-package","messaging","php","pubsub","pushpull","websockets","zeromq","zmq"],"created_at":"2024-10-03T13:36:19.635Z","updated_at":"2025-05-05T23:13:11.383Z","avatar_url":"https://github.com/denpamusic.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ZeroMQ driver for Laravel\n\n[![Latest Stable Version](https://poser.pugx.org/denpa/laravel-zeromq/v/stable)](https://packagist.org/packages/denpa/laravel-zeromq)\n[![License](https://poser.pugx.org/denpa/laravel-zeromq/license)](https://packagist.org/packages/denpa/laravel-zeromq)\n[![Build Status](https://travis-ci.org/denpamusic/laravel-zeromq.svg)](https://travis-ci.org/denpamusic/laravel-zeromq)\n[![Code Climate](https://codeclimate.com/github/denpamusic/laravel-zeromq/badges/gpa.svg)](https://codeclimate.com/github/denpamusic/laravel-zeromq)\n[![Code Coverage](https://codeclimate.com/github/denpamusic/laravel-zeromq/badges/coverage.svg)](https://codeclimate.com/github/denpamusic/laravel-zeromq/coverage)\n\n## About\nFully unit-tested Laravel ZeroMQ driver based on react/zmq.\n\n## Installation\n1. Install package:\n```sh\ncomposer require denpa/laravel-zeromq \"^1.0\"\n```\n\n2. _(skip if using Laravel 5.5 or newer)_ Add service provider and facade to ./config/app.php\n```php\n'providers' =\u003e [\n    ...\n    Denpa\\ZeroMQ\\Providers\\ServiceProvider::class,\n];\n```\n\n```php\n'aliases' =\u003e [\n    ...\n    'ZeroMQ' =\u003e Denpa\\ZeroMQ\\Facades\\ZeroMQ::class,\n];\n```\n\n3. Publish config file\n`php artisan vendor:publish --provider=\"Denpa\\ZeroMQ\\Providers\\ServiceProvider\"` in your project directory.\n\n## Requirements\n* PHP 7.1 or higher\n* ZMQ PHP extension\n* Laravel 5.3 or higher\n\n## Usage\nPublish:\n```php\nzeromq()-\u003epublish(['foo', 'bar'], 'hello');\nzeromq()-\u003econnection('test')-\u003epublish(['foo', 'bar'], 'hello');\n```\n\nPull:\n```php\nzeromq()-\u003epull(function ($message) {\n    echo $message;\n});\n```\n\nPush:\n```php\nzeromq()-\u003epush('hello');\n```\n\nSubscribe:\n```php\nzeromq()-\u003esubscribe(['foo', 'bar'], function ($message) {\n    echo $message;\n});\n```\n## Facade\n```php\nuse Denpa\\ZeroMQ\\Facades\\ZeroMQ;\n\n$callback = function ($message) {\n    echo $message;\n};\n\n// use default connection\nZeroMQ::publish(['foo', 'bar'], 'hello');\nZeroMQ::pull($callback);\nZeroMQ::push('hello');\nZeroMQ::subscribe(['foo', 'bar'], $callback);\n\n// use different connection\nZeroMQ::connection('baz')-\u003epush('hello');\n```\n\n## Broadcasting\nSet `BROADCAST_DRIVER=zeromq` in environment file and add following lines\n```php\n'zeromq' =\u003e [\n    'driver' =\u003e 'zeromq',\n],\n```\nto 'connections' key in `config/broadcasting.php`.\n\nNow use laravel `broadcast($event);` helper to broadcast events via ZeroMQ.\n\n## Bitcoin Core (laravel-bitcoinrpc)\n[laravel-bitcoinrpc](https://github.com/denpamusic/laravel-bitcoinrpc) integrates this package to subscribe to topics broadcasted by Bitcoin Core (and some forks).\n```php\nbitcoind()-\u003eon('hashblock', function ($blockhash, $sequence) {\n    // get hash of new best block and retrieve full block info\n    $block = bitcoind()-\u003egetBlock($blockhash);\n    print_r($block-\u003eget());\n});\n```\nFor more info, visit [laravel-bitcoinrpc documentation](https://laravel-bitcoinrpc.denpa.pro/docs/zeromq/).\n\n## License\nThis product is distributed under [MIT license](https://github.com/denpamusic/laravel-zeromq/blob/master/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdenpamusic%2Flaravel-zeromq","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdenpamusic%2Flaravel-zeromq","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdenpamusic%2Flaravel-zeromq/lists"}