Форум: "Сети";
Текущий архив: 2005.03.27;
Скачать: [xml.tar.bz2];
ВнизBroadcast передача файлов по Lan Найти похожие ветки
← →
OneFragLeft © (2005-01-25 06:23) [0]Хочу сделать чат в локалке, чтобы можно было использовать в нём аватары.
Но вот как передать всем изображение из TImage ума не приложу.
Как можно реализовать такую задумку? Причём не используя прямое соединение, а
посылать всем, броадкастом. Картинки не большие, до 48*48pics.
← →
Карелин Артем © (2005-01-25 09:41) [1]Если уж не найдешь красивого решения, то передавай картинку один раз по прямому соединению, потом из кэша бери ее. Они же в gif или jpg маленькие совсем будут.
← →
Style © (2005-01-25 12:37) [2]Я бы делал так:
Пользователь заходит в чат, его клиент начинает по таймеру посылать на broadcast UDP пакеты, информируя другие машины, о своем присудствии.
Если у какой либо машины - нет информации о пользователе, то она устанавливает прямое соединения с компьютером от которого пришел UDP пакет и закачивает все что необходимо. Либо эти машины общаются опять же по UDP, но там нужно будет самому реализовать проверку, на то что данные действительно доставлены и еще рассылать инфу частями.
Если пользователь сменил аватару. То разумно было бы изменить какой-нить параметр в UDP пакетах которые идут по таймеру на BroadCast. К примеру можно посылать время последнего изменения аватары.
← →
Max_MS (2005-01-25 13:19) [3]Есть решение простое :)
но туповатое :)
Картинку в UUE кодируешь
и как текст ее засылаешь
можно присобачить какой нить контроль целосности
ну а дальше дето техники.
← →
Senti (2005-01-26 15:10) [4]Я так понимаю чат идет на UDP ?
Если так, то реализация такая:
Кладешь компонент TServerSocket и TClientSocket (они будут ответственны за передачу аватаров).
1. Человек запускает чат. TServerSocket приводится в активный режим на определенном порту.
2. Высылает бродкаст пакет с уведомлением о новом пользователе.
3. Остальные получают пакет и соединяются с этим IP на ServerSocket
4. После соединения через SendStream отсылается аватар
Если пользователь изменит аватар, то высылается пакет на изменение.
Самое простое решение SendStream через Server и Client сокеты
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2005.03.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.056 c