Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как сделать сервер по типу icq? [D7, WinXP]


Страницы:   1 2 3

keal ©   (2005-09-14 00:01:00) 

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


Eraser   (2005-09-15 21:13:00) [1]


> Servelat ©   (15.09.05 18:41) [40]

А как же Делфи? )


Servelat   (2005-09-15 18:41:00) [2]

А зря, юникс вещь. Воткнул себе Fedora (ядро 2.6) и радуюсь, подумываю об удалении форточек. Осталось, чтобы найти все свои любимые игры под линукс и тогда точно разнесу мастдай.


keal   (2005-09-15 12:52:00) [3]

andoma, по ссылке ничего не качается

twin, есть компилятор, чтоб компелировать код под делфи в проги под юникс? а то неохота ставить юникс.


twin   (2005-09-15 10:26:00) [4]

keal, под никсой можешь писать на Kylix.
Kylix по сути тот же Delphi(и компоненты подходят) и из той конторы (Borland).


andoma   (2005-09-15 03:44:00) [5]

vot ssilochka dlya alternavitnoqo mesencera ICQ. on open source. vozmi i polzuysya
http://download.asechka.ru/index.php?cid=67


keal   (2005-09-14 20:23:00) [6]


> LOL, однозначно, почти в орешник.
>
> покупай тачку, подключайся к выделенке, покупай "белый"
> IP, пиши "обычный" клиент / сервер "как в локалке" и хвастайся
> друзьям и подругам =)


Ага, и купить губозакатывающую машину...


> p.s. "А программировать умею только в delphi." (c) author )


Да ладно, я знаю и другие языки. Но не в одном не силен как в delphi.


OldNaum   (2005-09-14 19:29:00) [7]

LOL, однозначно, почти в орешник.

покупай тачку, подключайся к выделенке, покупай "белый" IP, пиши "обычный" клиент / сервер "как в локалке" и хвастайся друзьям и подругам =)

p.s. "А программировать умею только в delphi." (c) author )


Eraser   (2005-09-14 19:06:00) [8]


>Как поднять сервер
> на чужом хосте да еще и лазить по портам?

Этот вопрос задай хостеру.


Eraser   (2005-09-14 19:05:00) [9]


> keal   (14.09.05 18:30) [31]

CGI дело растяжимое... тупо обновлять весь чат на предмет новых сообщений как это описал Digitman в [30] ни есть хорошее решение.
Лучше написать свой "протокол" поверх http (cgi). Но прийдётся поизвращаться - держать соединение открытым как можно дольше и время от времени посылать на клиент тестовые "сообщения" на предмет определения наличия/отсутствия на сервере новых входящих сообщений... Думается активной стороной в этом случае будет сервер...
Короче чтобы сделать полноценный чат всё таки нужен отдельный порт + спец. протокол. Советую копнуть в сторону IRC.

> Или cgi приложения и так прокатят?

cgi всё равно под что писать, это просто скрипт.


keal   (2005-09-14 18:54:00) [10]


> icq-клиент единожды устанавливает соединение с icq-сервером
> и это соединение удерживается до конца сессии..

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


keal   (2005-09-14 18:30:00) [11]

Мне придется писать под сисьему *nix. А программировать умею только в delphi. Что делать? Или cgi приложения и так прокатят?


Digitman   (2005-09-14 18:28:00) [12]


> Если писать типа icq, то несколько раз в секунду клиентом
> обращатся к серверу, пересылась свое сообщение и считывать
> новые


если писать именно ТИПА icq, то ничего этого не потребуется.

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


> хост не умрет если клиентов будет очень много


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


keal   (2005-09-14 18:20:00) [13]

Из двух веток понял, что надо написать веб-службу cgi.

Если писать типа icq, то несколько раз в секунду клиентом обращатся к серверу, пересылась свое сообщение и считывать новые. При этом сервер несколько раз в секунду будет подниматся и падать. Если неправ поправте.

Последний вопрос: а хост не умрет если клиентов будет очень много.


Digitman   (2005-09-14 18:14:00) [14]

говоря об ICQ-сети следует понимать, что в глоб.сети работают МНОЖЕСТВО icq-серверов, которые взаимодействуют между собой с использованием TCP как транспортного протокола.

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

Серверная часть логики таких приложений ответственна за работу с оконечными icq-клиентами по соглашениям клиентской (прикладной) части icq-протокола, клиентская же часть логики этих приложений ответственна за взаимодействие с другими работающими в глоб.сети icq-серверами

С этой точки зрения приложение ICQ-сервер можно рассматривать одновременно и как приложение-клиент и как приложение-сервер, в зависимости от того, о какой части его функциональности идет конкретно речь

Что касается прикладных кл.приложений, работающих с ICQ-серверами в сети, то они как правило ТОЖЕ реализуют внутри себя И клиентскую И серверную логику. Кл.логика кл.приложений требуется для взаимодействия с серверной логикой icq-серверов, а серв.логика кл.приложений требуется для установления peer-to-peer-соединений с другими клиентами icq-сети, а так же для необязательной организации "активного режима" , подобного  FTP-клиентам ...см. функциональность ICQ SendFile, ICQ Shared Files, ICQ ActiveList e.t.c


Eraser   (2005-09-14 18:01:00) [15]


> keal

Короче проще всего делать чат на основе http + CGI (Perl, php).
Формеруй на клиенте запрос (пост), отправляй на сервер, жди ответ.


Digitman   (2005-09-14 17:53:00) [16]


> Ivane   (14.09.05 17:09) [25]
> сервер.


цитирую себя  [17]

> с каких пор TCP-клиент чего-то там "слушает" ?

я - о клиенте TCP-соединения

а ты о чем ?


Ivane   (2005-09-14 17:09:00) [17]

Digitman, сервер.


isasa   (2005-09-14 16:54:00) [18]

Уточняю :)
ЕСЛИ СВОИМ КЛИЕНТОМ - клиентом, написаным самим лично, т.е. своим, т.е. ДАРОМ ....


Digitman   (2005-09-14 16:24:00) [19]


> Ivane   (14.09.05 16:19) [22]


> что же он по твоему делает?


кто ?


Ivane   (2005-09-14 16:19:00) [20]

Хорошо, Digitman... Допустим он не прослушивает порт... Тогда, что же он по твоему делает??? А?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо