Внедрение системы чата с помощью веб-браузера - PullRequest
0 голосов
/ 01 февраля 2010

Мы хотим иметь веб-приложение для отслеживания проблем, управления знаниями и чата.После входа в систему пользователь может общаться с сервисными инженерами.

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

есть ли лучший подход к работе с системой чата в Интернете?Мы можем использовать Python, PHP, Ruby / Rails, Grails или .NET

Мы можем использовать доступные системы, нам нужен лучший интерфейс / API для доступной системы, чтобы она могла быть интегрирована в наше приложение.

Ответы [ 3 ]

4 голосов
/ 01 февраля 2010

О. Если бы мне пришлось реализовать что-то вроде этого, я бы взял сервер XMPP (Jabber). Зачем изобретать?

Существует два довольно стабильных и многофункциональных сервера: ejabberd (реализовано в Erlang) и OpenFire (реализовано в Java). Лично я предпочитаю OpenFire , поскольку его проще настраивать, а разработчиков Java легче найти, если вы хотите расширить его функциональность ... Но это дело вкуса.

Для веб-клиента существует технология под названием BOSH . Это позволяет вам не опрашивать ваш сервер запросами каждые X секунд, а получать сообщения, как только они станут доступны. BOSH является частью стандарта XMPP. Существует библиотека JavaScript под названием Strophe JS , которая позволяет легко использовать BOSH на вашей веб-странице. Существует пример реализации .

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

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

Итак, наконец, мое мнение: возьмите уже написанный и проверенный сервер XMPP, его BOSH с использованием Strophe JS и небольшой плагин для выбора бесплатного сервисного инженера.

2 голосов
/ 01 февраля 2010

Мы запускаем XMPP (jabber) сервер с именем OpenFire , который имеет расширение для веб-чата FastPath. Единственным недостатком является то, что это заставляет нас всех использовать один и тот же клиент (Spark) или запросы чата риска, которые достигают клиентов, не являющихся Spark, для исчезновения. Но это очень настраиваемо, и вы можете захватить практически любую активность и статистику.

1 голос
/ 01 февраля 2010

Рассматривали ли вы использование Erlang? Вероятно, потребуется очень мало работы, чтобы начать работу.

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

Очевидно, сначала очистите его с автором.

...