Class: ActionCable::RemoteConnections
- Inherits:
 - 
      Object
      
        
- Object
 - ActionCable::RemoteConnections
 
 
- Defined in:
 - lib/action_cable/remote_connections.rb
 
Overview
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.
Defined Under Namespace
Classes: RemoteConnection
Instance Attribute Summary collapse
- 
  
    
      #server  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute server.
 
Instance Method Summary collapse
- 
  
    
      #initialize(server)  ⇒ RemoteConnections 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
A new instance of RemoteConnections.
 - #where(identifier) ⇒ Object
 
Constructor Details
#initialize(server) ⇒ RemoteConnections
Returns a new instance of RemoteConnections.
      25 26 27  | 
    
      # File 'lib/action_cable/remote_connections.rb', line 25 def initialize(server) @server = server end  | 
  
Instance Attribute Details
#server ⇒ Object (readonly)
Returns the value of attribute server.
      23 24 25  | 
    
      # File 'lib/action_cable/remote_connections.rb', line 23 def server @server end  | 
  
Instance Method Details
#where(identifier) ⇒ Object
      29 30 31  | 
    
      # File 'lib/action_cable/remote_connections.rb', line 29 def where(identifier) RemoteConnection.new(server, identifier) end  |