RedisBroadcaster
class RedisBroadcaster extends Broadcaster (View source)
Traits
Properties
protected Closure|null | $authenticatedUserCallback | The callback to resolve the authenticated user information. |
from Broadcaster |
protected array | $channels | The registered channel authenticators. |
from Broadcaster |
protected array | $channelOptions | The registered channel options. |
from Broadcaster |
protected BindingRegistrar | $bindingRegistrar | The binding registrar instance. |
from Broadcaster |
protected Factory | $redis | The Redis instance. |
|
protected string|null | $connection | The Redis connection to use for broadcasting. |
|
protected string | $prefix | The Redis key prefix. |
Methods
Resolve the authenticated user payload for the incoming connection request.
Register the user retrieval callback used to authenticate connections.
Register a channel authenticator.
Authenticate the incoming request for a given channel.
Extract the parameters from the given pattern and channel.
Extracts the parameters out of what the user passed to handle the channel authentication.
Extracts the parameters out of a class channel's "join" method.
Extract the channel keys from the incoming channel name.
Resolve the given parameter binding.
Resolve an explicit parameter binding if applicable.
Resolve an implicit parameter binding if applicable.
Determine if a given key and parameter is implicitly bindable.
Format the channel array into an array of strings.
Normalize the given callback into a callable.
Retrieve the authenticated user using the configured guard (if any).
Retrieve options for a certain channel.
Check if the channel name from the request matches a pattern from registered channels.
Return true if the channel is protected by authentication.
Remove prefix from channel name.
Create a new broadcaster instance.
Return the valid authentication response.
Broadcast the given event.
Get the Lua script for broadcasting to multiple channels.
Details
array|null
resolveAuthenticatedUser(Request $request)
Resolve the authenticated user payload for the incoming connection request.
See: https://pusher.com/docs/channels/library_auth_reference/auth-signatures/#user-authentication.
void
resolveAuthenticatedUserUsing(Closure $callback)
Register the user retrieval callback used to authenticate connections.
See: https://pusher.com/docs/channels/library_auth_reference/auth-signatures/#user-authentication.
$this
channel(HasBroadcastChannel|string $channel, callable|string $callback, array $options = [])
Register a channel authenticator.
protected mixed
verifyUserCanAccessChannel(Request $request, string $channel)
Authenticate the incoming request for a given channel.
protected array
extractAuthParameters(string $pattern, string $channel, callable|string $callback)
Extract the parameters from the given pattern and channel.
protected ReflectionParameter[]
extractParameters(callable|string $callback)
Extracts the parameters out of what the user passed to handle the channel authentication.
protected ReflectionParameter[]
extractParametersFromClass(string $callback)
Extracts the parameters out of a class channel's "join" method.
protected array
extractChannelKeys(string $pattern, string $channel)
Extract the channel keys from the incoming channel name.
protected mixed
resolveBinding(string $key, string $value, array $callbackParameters)
Resolve the given parameter binding.
protected mixed
resolveExplicitBindingIfPossible(string $key, mixed $value)
Resolve an explicit parameter binding if applicable.
protected mixed
resolveImplicitBindingIfPossible(string $key, mixed $value, array $callbackParameters)
Resolve an implicit parameter binding if applicable.
protected bool
isImplicitlyBindable(string $key, ReflectionParameter $parameter)
Determine if a given key and parameter is implicitly bindable.
protected array
formatChannels(array $channels)
Format the channel array into an array of strings.
protected BindingRegistrar
binder()
Get the model binding registrar instance.
protected callable
normalizeChannelHandlerToCallable(mixed $callback)
Normalize the given callback into a callable.
protected mixed
retrieveUser(Request $request, string $channel)
Retrieve the authenticated user using the configured guard (if any).
protected array
retrieveChannelOptions(string $channel)
Retrieve options for a certain channel.
protected bool
channelNameMatchesPattern(string $channel, string $pattern)
Check if the channel name from the request matches a pattern from registered channels.
bool
isGuardedChannel(string $channel)
Return true if the channel is protected by authentication.
string
normalizeChannelName(string $channel)
Remove prefix from channel name.
void
__construct(Factory $redis, string|null $connection = null, string $prefix = '')
Create a new broadcaster instance.
mixed
auth(Request $request)
Authenticate the incoming request for a given channel.
mixed
validAuthenticationResponse(Request $request, mixed $result)
Return the valid authentication response.
void
broadcast(array $channels, string $event, array $payload = [])
Broadcast the given event.
protected string
broadcastMultipleChannelsScript()
Get the Lua script for broadcasting to multiple channels.
ARGV[1] - The payload ARGV[2...] - The channels