protected function extractAuthParameters($pattern, $channel, $callback)
    {
        $callbackParameters = (new ReflectionFunction($callback))->getParameters();

        return collect($this->extractChannelKeys($pattern, $channel))->reject(function ($value, $key) {
            return is_numeric($key);
        })->map(function ($value, $key) use ($callbackParameters) {
            return $this->resolveBinding($key, $value, $callbackParameters);
        })->values()->all();
    }
protected function extractAuthParameters($pattern, $channel, $callback)
    {
        $callbackParameters = (new ReflectionFunction($callback))->getParameters();

        return collect($this->extractChannelKeys($pattern, $channel))->reject(function ($value, $key) {
            return is_numeric($key);
        })->map(function ($value, $key) use ($callbackParameters) {
            return $this->resolveBinding($key, $value, $callbackParameters);
        })->values()->all();
    }
protected function extractAuthParameters ( $ pattern , $ channel , $ callback ) { $ callbackParameters = ( new ReflectionFunction ( $ callback ) ) -> getParameters ( ) ; return collect ( $ this -> extractChannelKeys ( $ pattern , $ channel ) ) -> reject ( function ( $ value , $ key ) { return is_numeric ( $ key ) ; } ) -> map ( function ( $ value , $ key ) use ( $ callbackParameters ) { return $ this -> resolveBinding ( $ key , $ value , $ callbackParameters ) ; } ) -> values ( ) -> all ( ) ; }
Extract the parameters from the given pattern and channel.

@param  string  $pattern
@param  string  $channel
@param  callable  $callback
@return array
Extract the parameters from the given pattern and channel .