2016-04-15 3 views
0

Я пишу простой мини-чат с пользовательской моделью User и аутентификацией через omniauth. В чате используется веб-сокет faye-rails для немедленной отправки и отображения сообщений без обновления страницы. Дело в том, что я хотел бы добавить личные сообщения - я имею в виду, что я могу выбрать пользователя и начать наш собственный диалог в дополнительном окне чата. Я искал решения, но все, что я нашел, касалось электронной почты - с сообщениями в почтовых ящиках, корзинами для мусора и так далее. Поэтому я задаюсь вопросом, легко ли реализовать какое-либо решение.Создание личных сообщений

Исходный код моего чата является here

+0

Ваше репо пусто. –

+0

@MatthewCliatt Извините, обновленный – AlexNikolaev94

ответ

0

Добро пожаловать толкать технологии и активный веб-дизайн!

Когда кто-то войдет в систему, представите им список дружеских учетных записей и зарегистрированное состояние. Для входа в друзья они могут выбрать друга из списка и начать сеанс чата в новом окне. Для зарегистрированных пользователей они могут отправить сообщение, которое доставлено при следующем входе в систему.

Затем вам необходимо создать механизм взаимодействия, который позволяет пользователю запрашивать соединение с будущим другом, получать уведомления о ожидающих запросов на соединение, одобрения запросов друзей и недружественной функции. Надеюсь, что это не будет использоваться слишком часто.

Я работал с Faye & Мне нравится Faye, но также быстро взгляните на бета-версию Rails 5. Action Cable сделает то же самое, и поддержка фреймов будет лучше.

+0

спасибо! Я обновил свое репо, поэтому исходный код присутствует. Дело в том, что у меня есть одно окно чата с сообщениями в нем, я также попытался составить список пользователей, которые сейчас в сети, но не удалось. Я планировал это как-то вроде: вы хотите открыть частный диалог с конкретным пользователем, поэтому вы нажимаете ссылку рядом с его именем, а затем появляется закрытое диалоговое окно. – AlexNikolaev94

+0

Я думаю, что это хорошее направление. Если бы это был мой проект, я бы начал с быстрого доказательства концепции. Используйте Rails & HTML, чтобы открыть новое окно чата в браузере, щелкнув по ссылке. Получите эту работу сначала После того, как я получил версию простой ванильной версии, я перейду к закрытому диалоговому окну по линиям чатов FaceBook. В раскрывающемся диалоговом окне потребуются манипуляции с Javascript и DOM, чтобы добавить что-то, что не существовало во время отображения страницы в HTML. Ни один из этих шагов не является особенно сложным, но их разделение может облегчить задачу. –

+0

Я могу получить, как я могу создать личное окно сообщения, но я полностью не понимаю, как создать сам процесс передачи личных сообщений - я имею в виду, чтобы инициировать диалог с конкретным пользователем и показывать в этом окне только текущий пользователь и другие сообщения пользователя – AlexNikolaev94