Los controladores proveen un método llamado #channel
que puede ser usado para obtener el status de la conexión con el backend. Los métodos de acceso a 'Channel' son reactivos.
method | description |
---|---|
connected? | devuelve 'true' si esta conectado con el backend |
status | posibles valores: :opening, :open, :closed, :reconnecting |
error | el mensaje de error para la última conección fállida |
retry_count | el número de intentos de reconexión que se han hecho sin una conexión exitosa |
reconnect_interval | el tiempo que ha pasado desde el último intento de reconexión (en segundos) |
A veces necesitas correr un código específico cuando el cliente se conecta/desconecta del servidor. En un controlador puedes hacer lo siguiente:
channel.on('connect') do
.. connected ..
end
channel.on('disconnect') do
.. disconnect ..
end