class ActionCable::RemoteConnections
If you need to disconnect a given connection, you can go through the RemoteConnections. You can find the connections you're looking for by searching for the identifier declared on the connection. For example:
module ApplicationCable class Connection < ActionCable::Connection::Base identified_by :current_user .... end end ActionCable.server.remote_connections.where(current_user: User.find(1)).disconnect
This will disconnect all the connections established for User.find(1)
, across all servers running on all machines, because it uses the internal channel that all of these servers are subscribed to.
Attributes
server[R]
Public Class Methods
# File actioncable/lib/action_cable/remote_connections.rb, line 25 def initialize(server) @server = server end
Public Instance Methods
# File actioncable/lib/action_cable/remote_connections.rb, line 29 def where(identifier) RemoteConnection.new(server, identifier) end
© 2004–2019 David Heinemeier Hansson
Licensed under the MIT License.