gbksoft/phpcent

Php library to communicate with Centrifugo/Centrifuge)

1.0.5 2017-10-25 13:51 UTC

This package is not auto-updated.

Last update: 2024-04-20 13:26:26 UTC


README

Php library to communicate with Centrifugo HTTP API.

Library is published on the Composer: https://packagist.org/packages/sl4mmer/phpcent

{
    "require": {
        "gbksoft/phpcent":"~1.0.5",
    }
}

Full Centrifugo documentation

Basic Usage:

        
        $client = new \phpcent\Client("http://localhost:8000");
        $client->setSecret("secret key from Centrifugo");
        $client->publish("main_feed", ["message" => "Hello Everybody"]);
        $history = $client->history("main_feed");
        

You can use phpcent to create frontend token:

	$token = $client->setSecret($pSecret)->generateClientToken($user, $timestamp);

Or to create private channel sign:

	$sign = $client->setSecret($pSecret)->generateClientToken($client, $channel);

Since 1.0.3 phpcent has broadcast implementation.

$client->broadcast(['example:entities', 'example:moar'], ['user_id' => 2321321, 'state' => '1']);

SSL

In case if your Centrifugo server has invalid SSL certificate, you can use:

\phpcent\Transport::setSafety(\phpcent\Transport::UNSAFE);

Since 1.0.5 you can use self signed certificate in safe manner:

$client = new \phpcent\Client("https://localhost:8000");
$client->setSecret("secret key from Centrifugo");
$transport = new \phpcent\Transport();
$transport->setCert("/path/to/certificate.pem");
$client->setTransport($transport);

Note: Certificate must match with host name in Client address (localhost in example above).

Alternative clients