Файл: gapps/vendor/laravel/framework/src/Illuminate/Broadcasting/Broadcasters/RedisBroadcaster.php
Строк: 73
<?php
namespace IlluminateBroadcastingBroadcasters;
use IlluminateContractsBroadcastingBroadcaster;
use IlluminateContractsRedisDatabase as RedisDatabase;
class RedisBroadcaster implements Broadcaster
{
/**
* The Redis instance.
*
* @var IlluminateContractsRedisDatabase
*/
protected $redis;
/**
* The Redis connection to use for broadcasting.
*
* @var string
*/
protected $connection;
/**
* Create a new broadcaster instance.
*
* @param IlluminateContractsRedisDatabase $redis
* @param string $connection
* @return void
*/
public function __construct(RedisDatabase $redis, $connection = null)
{
$this->redis = $redis;
$this->connection = $connection;
}
/**
* {@inheritdoc}
*/
public function broadcast(array $channels, $event, array $payload = [])
{
$connection = $this->redis->connection($this->connection);
$payload = json_encode(['event' => $event, 'data' => $payload]);
foreach ($channels as $channel) {
$connection->publish($channel, $payload);
}
}
}