Beispiel #1
0
 /**
  * {@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);
     }
 }
 /**
  * Broadcast the given event.
  *
  * @param  array  $channels
  * @param  string  $event
  * @param  array  $payload
  * @return void
  */
 public function broadcast(array $channels, $event, array $payload = [])
 {
     $connection = $this->redis->connection($this->connection);
     $socket = Arr::pull($payload, 'socket');
     $payload = json_encode(['event' => $event, 'data' => $payload, 'socket' => $socket]);
     foreach ($this->formatChannels($channels) as $channel) {
         $connection->publish($channel, $payload);
     }
 }
 /**
  * {@inheritdoc}
  */
 public function broadcast(array $channels, $event, array $payload = [])
 {
     $connection = $this->redis->connection($this->connection);
     $data = json_encode(['event' => $event, 'data' => $payload]);
     foreach ($channels as $channel) {
         $subscribers = $connection->publish($channel, $data);
         // Enough subscribers?
         if ($subscribers < $this->minSubscribers) {
             // Add channel
             $data = json_encode(['channel' => $channel, 'event' => $event, 'data' => $payload]);
             // Add to list
             $connection->rpush($this->listName, $data);
         }
     }
 }
Beispiel #4
0
 /**
  * Get the Redis connection instance.
  *
  * @return \Predis\ClientInterface
  */
 public function connection()
 {
     return $this->redis->connection($this->connection);
 }
 /**
  * Get the connection for the queue.
  *
  * @return \Predis\ClientInterface
  */
 protected function getConnection()
 {
     return $this->redis->connection($this->connection);
 }