Я знаю, что этот вопрос старый, но, надеюсь, этот ответ может помочь тем, кто был направлен сюда из Google.
Я работаю над драгоценным камнем, который удовлетворяет двум основным критериям в исходном вопросе.Этот гем называется websocket-rails и был разработан с нуля, чтобы упростить использование WebSockets внутри приложения Rails.Это, наконец, стабильная версия, но, как мне кажется, она требует гораздо больше функциональности.
В настоящее время обработка событий является очень простой.Существует файл events.rb
, в котором сопоставляются события на стороне клиента с действиями контроллера, аналогичными файлу routes.rb
.Все запросы к /websocket
передаются на встроенный сервер WebSocket без необходимости отдельного серверного процесса.
Более амбициозная цель проекта - в конечном итоге переместить Rails в более традиционный шаблон MVC, где события наклиентский браузерный пузырь до сервера для обработки и обновления модели автоматически инициирует события на клиенте для обновления визуализированного представления этой модели.
Любая обратная связь приветствуется.