module Redis::Commands::Pubsub
Public Instance Methods
psubscribe(*channels, &block)
click to toggle source
Listen for messages published to channels matching the given patterns.
# File lib/redis/commands/pubsub.rb, line 42 def psubscribe(*channels, &block) synchronize do |_client| _subscription(:psubscribe, 0, channels, block) end end
psubscribe_with_timeout(timeout, *channels, &block)
click to toggle source
Listen for messages published to channels matching the given patterns. Throw a timeout error if there is no messages for a timeout period.
# File lib/redis/commands/pubsub.rb, line 50 def psubscribe_with_timeout(timeout, *channels, &block) synchronize do |_client| _subscription(:psubscribe_with_timeout, timeout, channels, block) end end
publish(channel, message)
click to toggle source
Post a message to a channel.
# File lib/redis/commands/pubsub.rb, line 7 def publish(channel, message) send_command([:publish, channel, message]) end
pubsub(subcommand, *args)
click to toggle source
Inspect the state of the Pub/Sub subsystem. Possible subcommands: channels, numsub, numpat.
# File lib/redis/commands/pubsub.rb, line 67 def pubsub(subcommand, *args) send_command([:pubsub, subcommand] + args) end
punsubscribe(*channels)
click to toggle source
Stop listening for messages posted to channels matching the given patterns.
# File lib/redis/commands/pubsub.rb, line 57 def punsubscribe(*channels) synchronize do |client| raise "Can't unsubscribe if not subscribed." unless subscribed? client.punsubscribe(*channels) end end
subscribe(*channels, &block)
click to toggle source
Listen for messages published to the given channels.
# File lib/redis/commands/pubsub.rb, line 18 def subscribe(*channels, &block) synchronize do |_client| _subscription(:subscribe, 0, channels, block) end end
subscribe_with_timeout(timeout, *channels, &block)
click to toggle source
Listen for messages published to the given channels. Throw a timeout error if there is no messages for a timeout period.
# File lib/redis/commands/pubsub.rb, line 26 def subscribe_with_timeout(timeout, *channels, &block) synchronize do |_client| _subscription(:subscribe_with_timeout, timeout, channels, block) end end
subscribed?()
click to toggle source
# File lib/redis/commands/pubsub.rb, line 11 def subscribed? synchronize do |client| client.is_a? SubscribedClient end end
unsubscribe(*channels)
click to toggle source
Stop listening for messages posted to the given channels.
# File lib/redis/commands/pubsub.rb, line 33 def unsubscribe(*channels) synchronize do |client| raise "Can't unsubscribe if not subscribed." unless subscribed? client.unsubscribe(*channels) end end