Вверх ↑
Администрация
Ответов: 15295
Рейтинг: 1519
#1: 2009-03-01 17:47:46 ЛС | профиль | цитата
   ввиду участившихся попыток собрать с помощью HiAsm некоторые подобия чата было решено сделать базовую минимальную комплектацию для решения этой задачи.

   В аттачах к сообщению можно найти исходники чата hiasm_lh_chat.rar(только для последнего HiAsm со всеми обновлениями по SVN) и собранные версии hiasm_lh_chat_bin.rar.

Краткое описание

[img=Сервер align=left]http://dev.hiasm.com/xf/attach/files/hiasm_chat_server.png[/img] Серверная часть проекта выполнена достаточно аскетично - ввиде самодельной консоли, где выводится трейс команд, приходящих на сервер от пользователей сети. В заголовке сервера отображается информация о количестве подключенных клиентов.

Команды поддерживаемые сервером:
AUTH(NickName) - аутентификация клиента на сервере. Это команда добавляет пользователя в базу с именем NickName в группу Public, если его там не было и меняет ник на NickName, если он там уже был. После выполнения смены ника(но не при добавлении в базу) сервер посылает всем клиентам команду STATE для обновления online статуса клиента.
LIST - выдача списка контактов клиенту, приславшему эту команду.
TEXT(Text) - рассылка такста Text всем клиентам, находящимся в online
STATE(User status) - запрос на смену состояния клиента, приславшего эту команду. В ответ вервер рассылает всем команду STATE для обновления online статуса

   Замечания:
- Сервер поддерживает распределение пользователей по группам, однако в базовой версии нет инструментов для управления ими. Поэтому для создания новых групп и распределения по ним пользователей нужно самостоятельно изменять или вносить данные в базу сервера.
- Так же не допускается запуск двух клиентов с одного компьютера.
- Приватные сообщения в текущей версии не поддерживаются.
- Сервер поддерживает только три состояния пользователя: 1 - offline, 2 - online, 3 - away



[img=Клиент align=left]http://dev.hiasm.com/xf/attach/files/hiasm_chat_client.png[/img] Клиентская часть чата представляет из себя стандартное окно для отправки сообщений со списком пользователей. Отправка непосредственно сообщения осуществляется по нажатию Enter в нижнем редакторе после набора текста.

Команды поддерживаемые клиентом:
LIST (Contacts) - команда на обновление списка контактов
TEXT (Text) - команда на добавление нового текста от пользователя чата(в том числе и своего собственного)
STATE (User id, User status) - команда на изменение статуса пользователя
NICK (User id, NickName) - команда на изменение имени пользователя

   Замечания:
- клиент поддерживает три смайлика - , ;),
- статус away выставляет после 10 секунд простоя мышки
карма: 27
5
файлы: 4hiasm_lh_chat.rar [13.8KB] [194], hiasm_lh_chat_bin.rar [115.5KB] [171], hiasm_chat_client.png [13.1KB] [262], hiasm_chat_server.png [9KB] [281]
Голосовали:EcsTasY, filyaxxxcom, stas123, LainX, Konst