|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.08.2008, 00:02 | #1 |
Наркоман самоучка
Форумчанин
Регистрация: 22.07.2007
Сообщений: 276
|
вопрос по сокетам и общение как в ICQ.Сложный вопрос...
Всем привет! Для начало расскажу что я создаю(программирую в C++ Builder 6)...Это программа типа ICQ правда это не отдельная программа а лишь дополнение к основной программе.Я уже реализовал тестовую базу данных и реализовал клиент там вводишь пароль и логин если все ок то входишь в пазу там показывают твои контакты и их можно уже добавлять НО нету важной функции общение между контактами..Сейчас я ломаю голову как это реализовать.Сразу скажу чтоб будет только 1 окно для общение с 1 только пользователем и будет вверху деления имен пользователей на которых вы нажали в меню контактов 2 раза и между ними можно будет переключаться, в общем как в QIP.Пришёл я к 2 мнимым способам:
1. В клиенте будет стоять 1 клиент и 1 серв, при выборе пользователя из списка его ИП будет вноситься в клиентский адрес и будет устанавливаться связь с сервером данного ип а если допустим кто-то напишет тебе когда ты сним не разговариваешь то данный текст летит примеком в базу данных в специальную ячейку напротив его логина, того кто отправил, и будет таймер который будет проверять каждую минуты данные ячейке всех пользователей тех кто у тебя добавлен и будет помечать их картинкой что имеется от него текст и открыв его контакт тест выведется. Вот что-то вроде этого но конечно это мнимое виденье и также много недостатков будет и главный из них это сканирование каждую минуту что буде вызывать как минимум сжирание трафика ну и ещё др. 2. Когда пользователь войдёт в программу то сразу создать на все его онлайн контакты, клиент и серверы для каждого индивидуально а также переменные типа TString или TStrigList где будет храниться текст отправляемый ими в то время когда они не подключены напрямую с пользователем.Так будет 1 сервер сразу стоять и всё настроенный на определенный порт а при выделение контакта будет выбираться и клиент который создался сними и установленный сразу с их ИП адресами.Ну а при выделение тех кто вам написал во время того как они небыли свами к контакте данный текст грузился из TString.В это варианте тоже много чего конечно плохого допустим будут проблемы при выходе или входе новых пользователей,приодеться всё это грубо отслеживать и ещё это будет приличная загрузка и я думаю может серьёзно повлиять на тот-же трафик... Вот так я и незнаю как данное реализовать...если кто-нибудь знает как это решается или просто может теоретически помочь советом,помогите пожалуйста а то я в сильном замешательстве.
#include <мозг.h>
|
12.08.2008, 17:23 | #2 |
Старожил
Регистрация: 06.08.2007
Сообщений: 2,183
|
Поглядите мою тест-модель, некоторые функции нереализованны, но их можно и потом дописать. Пока что Добавить, Удалить пользователя нельзя; Списки невидимости-видимости на потом. Зато мульти окно чата. Как появляется время добавляю или улучшаю чего-нибудь.
|
12.08.2008, 21:10 | #3 |
Наркоман самоучка
Форумчанин
Регистрация: 22.07.2007
Сообщений: 276
|
поглядел...для себя ничего полезного ненашёл...просто вижу ты хочещ сделать очередной клиент для ICQ и сейчас там практически ничего несделано...
#include <мозг.h>
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) | Albert2008 | Общие вопросы Delphi | 4 | 21.08.2008 15:33 |
вопрос про IP | ЧИЖ | Работа с сетью в Delphi | 1 | 23.06.2008 13:53 |
Сложный вопрос по звуку | Руслантус | Общие вопросы C/C++ | 6 | 31.03.2008 19:39 |
прередача по сокетам | geronime | Работа с сетью в Delphi | 0 | 22.12.2007 11:27 |