класс ActionCable::RemoteConnections
Подключения Action Cable
Если вам нужно отключить данное соединение, вы можете обратиться к RemoteConnections. Вы можете найти нужные подключения, выполнив поиск по идентификатору, объявленному в подключении. Например:
module ApplicationCable
class Connection < ActionCable::Connection::Base
identified_by :current_user
....
end
end
ActionCable.server.remote_connections.where(current_user: User.find(1)).disconnect Это отключит все подключения, установленные для User.find(1), на всех серверах на всех машинах, потому что оно использует внутренний канал, к которому все эти серверы подписаны.
По умолчанию сервер отправляет сообщение «отключение» со флагом «подключение» установленным в значение «true». Вы можете переопределить его, указав опцию reconnect:
ActionCable.server.remote_connections.where(current_user: User.find(1)).disconnect(reconnect: false)
Атрибуты
server[R]
Открытые методы класса
# File actioncable/lib/action_cable/remote_connections.rb, line 32 def initialize(server) @server = server end
Открытые методы экземпляра
# File actioncable/lib/action_cable/remote_connections.rb, line 36 def where(identifier) RemoteConnection.new(server, identifier) end
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.