Centrifugo (Centrifuge) [1.0+] PHP Server REDIS & HTTP API implementation for Laravel 5+
Centrifugo (Centrifuge) [1.0+] PHP Server REDIS & HTTP API implementation for Laravel 5+ Incompatible with Centrifugo [2.0+], will be updated later!
composer require skoniks/php_cent
& composer update
config/centrifugo.php
as provided belowconfig/app.php
as provided belowFor laravel 5.5+ use version >= "2.5"
config/centrifugo.php
config/app.php
'aliases' => [
...
'Centrifugo'=> SKONIKS\Centrifugo\Centrifugo::class,
]
config/database.php
config/centrifugo.php
to redis settingsconfig/database.php
...
'redis' => [
...
'centrifugo' => [
'host' => '127.0.0.1',
'password' => '',
'port' => 6379,
'database' => 1,
],
],
...
Make shure that HTTP connection must work independently from redis connection. It is because redis transport provides only this methods:
Redis dont provide this methods:
<?php
use Centrifugo;
class Controller {
public function _function(){
// declare Centrifugo
$centrifugo = new Centrifugo();
// generating token example
$current_time = time();
$user_id = '1234567890';
$token = Centrifugo::token($user_id, $current_time, 'custom info');
// publishing example
$centrifugo->publish("channel" , ["custom data"]);
// list of awailible methods:
$response = $centrifugo->publish($channel, $data);
$response = $centrifugo->unsubscribe($channel, $user_id);
$response = $centrifugo->disconnect($user_id);
$response = $centrifugo->presence($channel);
$response = $centrifugo->history($channel);
$response = $centrifugo->channels();
$response = $centrifugo->stats();
$response = $centrifugo->node();
$token = Centrifugo::token($user_id, $timestamp, $info);
// $response == false | when error
}