Не мисля, че можете да издадете отписване в клиента, защото клиентът е блокиран. Написах скрипт на ruby, за да покажа как да използвате отписване.
require 'redis'
r = Redis.new
r.subscribe 'first' do |on|
on.message do |e, d|
puts e
puts d
r.unsubscribe
end
end
puts "script was blocked?"
Ако премахнете r.unsubscribe, скриптът ще бъде блокиран. И можете да добавите клауза if, за да проверите кога да се отпишете client.ex:
r.unsubscribe if d == 'leave'