Websocket-rails не запускает сообщение на канал (автономно, синхронизировано)
Я пытаюсь использовать websocket-rails (автономно, синхронизировано с redis на local.host:3245) с моим Rails Grape API (работает на local.host:3001)
Теперь я пытаюсь отправить сообщения на канал A с одной из моих конечных точек Grape API, используя, например:
WebsocketRails[:a_channel].trigger('welcome_message', 'Hello world!')
Затем в моем клиенте rails (работающем на local.host:3005) я пытаюсь получить сообщение и показать его в браузере. С помощью клиента WebsocketRails JS я могу подключиться к серверу. Подпишитесь на канал и привяжите к событию, предлагаемому в вики:
var dispatcher = new WebSocketRails('local.host:3245/websocket');
var channel = dispatcher.subscribe('a_channel');
channel.bind('welcome_message', function(data) {
console.log('channel event received: ' + data);
});
Однако в моем console.log ничего не отображается, но когда я смотрю на websocket_rails.log, я вижу:
[2015-08-18 10:03:23.184] [[32mChannel[0m] [a_channel] {"welcome_message"=>"Hello world!"}
Когда я смотрю на Redis с помощью redis-cli monitor
Я не вижу ключи websocket_rails (по крайней мере, я предполагаю, что они должны быть там...), а также в моем
chrome developer environment --> websockets --> headers
Я вижу пинг / понг между клиентом и сервером, но все переменные пусты.
Я не использую маршруты WebsocketControllers или events.rb, не так ли? основываясь на этой вики-странице, я предположил, что мне не нужно.. Кроме того, я скорее не использую контроллеры, а просто храню все в моих файлах Grape из-за версий API.
У кого-нибудь есть предложения / идеи как решить эту проблему?
Заранее спасибо!
Замечания:
- Рельсы 4.2.3
- Ruby 2.1.0
- API-сервер работает на Unicorn
- клиент rails работает на Thin