Я хочу поддерживать разные соединения с разными пользователями, как это делает Node.js с Socket.IO.
Как отправить уведомление конкретному пользователю с помощью Faye Rails?
comment
Вы смотрели эпизод Faye Railscast? railscasts.com/episodes/260-messaging-with-faye
- person jcm   schedule 11.10.2013
Ответы (1)
Вы должны посмотреть на этот руководство.
Речь идет об отправке личного сообщения конкретному пользователю. Итак, это почти то же самое.
Для этого вы можете заставить пользователей подписываться на их собственный канал (например, /users/user_id)
client = Faye.Client('http://localhost:9292/faye');
client.subscribe('/users/USER_ID', function (data) { something; });
Затем вам просто нужно отправить данные на канал пользователя.
<% broadcast '/users/USER_ID' %>
something
<% end %>
Метод широковещания исходит из этого RailsCast, который вы должны посмотреть/прочитать, если у вас нет т уже сделал это еще.
person
Simon Ninon
schedule
11.10.2013
Мне нужно отправить уведомление от действия контроллера Rails конкретному пользователю
- person abhim; 11.10.2013
Я хочу иметь возможность передавать данные в пользовательский канал из действия контроллера (при получении запроса на получение извне) --- Саймон Нинон?
- person abhim; 12.10.2013
Вы должны посмотреть на этот RailsCast (кажется, вы этого не сделали), поскольку я сказал в моем ответе: он узнает, как использовать Faye (распространение данных на канал после запроса на сервер). Затем вы должны заставить пользователя подписаться на их собственный канал.
- person Simon Ninon; 12.10.2013
Вместо USER_ID мне нужно заменить его на ‹%current_user.id%›, верно?
- person abhim; 12.10.2013
Да:
<%= current_user.id %>
(не забудьте =
).
- person Simon Ninon; 12.10.2013
Я пытался это сделать, но безрезультатно, есть ли способ отладить поток.
- person abhim; 12.10.2013