mrananyan/parrot

An long polling stack for PHP-based real-time applications

Installs: 0

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/mrananyan/parrot

1.0.0 2021-03-28 18:05 UTC

This package is auto-updated.

Last update: 2026-02-08 11:35:19 UTC


README

An easy to use Facebook like long polling stack for PHP-based real-time applications

Requirements

  • Redis
  • PHP-FPM
  • Nginx

Installation

composer require mrananyan/parrot

How setup

  1. Configuration

If you want to connect via TCP (Recommended for remote server)

$parameters = [
                  'scheme' => 'tcp',
                  'host'   => '127.0.0.1',
                  'port'   => 6379,
              ];

If you want to connect via UNIX socket (Recommended if Redis on same server)

$parameters = [
                  'scheme' => 'unix',
                  'path'   => '/var/run/redis/redis.sock',
              ];
  1. Worker. You can subscribe to many channels at once if you need. ('channel1','channel2' ...)
use Parrot\Server\Worker;

$parrotWorker = new Worker($parameters);
$messages = $parrotWorker->subscribe('mychannel');
echo json_encode($messages);
  1. Publisher. Send message to users who subscribed to mychannel channel
use Parrot\Client\Publisher;

$publisher = new Publisher($parameters);
$publisher->set('mychannel', 'Your message string here');