Como enviar um pacote keep-alive através do websocket em ruby on rails
Eu quero enviar um
"Manter vivo do cliente"
mensagem a cada 30 segundos para minha conexão com o websocket. Veja como é o código que tenho no meu inicializador de websocket:
ws = WebSocket::Client::Simple.connect 'wss://bitcoin.toshi.io/'
ws.on :message do |msg|
rawJson = msg.data
message_response = JSON.parse(rawJson)
end
ws.on :open do
ws.send "{\"subscribe\":\"blocks\"}"
end
ws.on :close do |e|
puts "WEBSOCKET HAS CLOSED #{e}"
exit 1
end
ws.on :error do |e|
puts "WEBSOCKET ERROR #{e}"
end
Sem qualquer tipo de 'manter vivo', a conexão fecha em cerca de 45 segundos. Como devo enviar o pacote 'heart-beat'? Parece que a conexão está fechada pelo servidor deles, não pelo meu.