ICQ клиент

Планы, идеология, архитектура и т.п.

Модератор: Модераторы

Re: ICQ клиент

Сообщение Attid » 06.05.2008 22:59:58

wavebvg
протокол открыт, смотри какой пакет меньше тот и пускай =), я бы попробывал раз в минуту менять статус на такой же , должно приходить подверждение, и пакет не большой вроде.
или глянь в коде крысы или миранды какой пакет отправляется чтобы соединение не прерывалось на диалапе, хотя там может просто пинг быть.
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Re: ICQ клиент

Сообщение wavebvg » 06.05.2008 23:34:58

Стоит такой алгоритм - если нет сообщений от сервера, ждём 50 секунд и отправляем запрос юзер инфо, ждём 10 секунд, если ответа нету, ещё раз отправляем, если не приходит ответ, тогда сбрасываем статус и ждём, реконнектор сработает.
Ещё очень интересный вопрос про трей - как перерисовывать иконку, чтобы не приходилось её скрывать?
wavebvg
постоялец
 
Сообщения: 354
Зарегистрирован: 28.02.2008 04:57:35

Re: ICQ клиент

Сообщение bw » 07.05.2008 00:51:55

> я бы попробывал раз в минуту менять статус на такой же
Интересная вешь, кстати. Если в моем клиенте (gaim) сменить статус, то тут же начинают сыпаться спам-сообщения, как то они его мониторят. При загрузке системы и gaim, спам не приходит, ну очень редко, а вот именно при смене статуса уже в работающем и подключенном клиенте, появляется спам.
Может кто знает, почему?

..bw
Аватара пользователя
bw
постоялец
 
Сообщения: 359
Зарегистрирован: 01.12.2005 11:36:23
Откуда: Усть-Илимск

Re: ICQ клиент

Сообщение haword » 07.05.2008 09:41:07

Привет. Если ты юзаешь HTTP протокол то тут уже немного другой принцип как я понял. Сам по себе HTTP не может держать соединение, он может только переодически запрашивать что то на подобии HTML странички с сервера и брать от туда инфу о пришедших сообщениях. Прямого соедниение на этом типа связи быть не может, так же как у браузера который просматривает страничку, ты скачал ее и все соединение пропало. Через сокеты когда идет соединение там канал всегда держиться.
haword
постоялец
 
Сообщения: 301
Зарегистрирован: 02.03.2006 11:34:40

Re: ICQ клиент

Сообщение Attid » 07.05.2008 11:43:46

wavebvg писал(а):отправляем запрос юзер инфо

ну это какбы большой трафик =)
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Re: ICQ клиент

Сообщение wavebvg » 07.05.2008 12:19:05

haword писал(а):Привет. Если ты юзаешь HTTP протокол то тут уже немного другой принцип как я понял. Сам по себе HTTP не может держать соединение, он может только переодически запрашивать что то на подобии HTML странички с сервера и брать от туда инфу о пришедших сообщениях. Прямого соедниение на этом типа связи быть не может, так же как у браузера который просматривает страничку, ты скачал ее и все соединение пропало. Через сокеты когда идет соединение там канал всегда держиться.

дело не в этом, конечно же для соединения используются сокеты, просто в орпеделённый момент связь как бы теряется, но сокет соединение не отсодиняется...
Attid писал(а):ну это какбы большой трафик =)

Ну пока пусть так будет, поправиьт там дело нескольких минут, если знать, как отследить корректный ответ от сервера...
wavebvg
постоялец
 
Сообщения: 354
Зарегистрирован: 28.02.2008 04:57:35

Re: ICQ клиент

Сообщение bw » 07.05.2008 15:25:39

> Сам по себе HTTP не может держать соединение
Вообще то может :-). За счет этого достигается большая скорость передачи контента от сервера клиента, так как не приходится каждый раз устанавливать соединение (трудоемкая задача). Эта не обязательная фича, сервер или клиент не обязаны её реализовывать. Могу ошибаться, но кажется эта особенность появилась в HTTP 1.1. Ладно, это оффтоп.

> в орпеделённый момент связь как бы теряется, но сокет соединение не отсодиняется...
А вот это интересно. Не знал что такое может быть. Тогда, конечно, нужно как-то пинговать сервер, но, как я говорил, смена статуса, это плохая идея.

> если знать, как отследить корректный ответ от сервера...
Миранда может писать весь трафик в логи, можно подсмотреть за ней, при желании. Или изучить коды какого-нибудь открытого клиента.

..bw
Последний раз редактировалось bw 14.05.2008 17:46:27, всего редактировалось 1 раз.
Аватара пользователя
bw
постоялец
 
Сообщения: 359
Зарегистрирован: 01.12.2005 11:36:23
Откуда: Усть-Илимск

Re: ICQ клиент

Сообщение Attid » 07.05.2008 15:51:05

bw писал(а):но, как я говорил, смена статуса, это плохая идея.

а ты отключи в асе "отображать мой статус на странице" спамеры палить не смогут =)

Добавлено спустя 2 минуты 2 секунды:
bw писал(а):> если знать, как отследить корректный ответ от сервера...
Миранда может писать весь трафик в логи, можно подсмотреть за ней, при желании. Или изучить коды какого-нибудь открытого клиента.

пиджин тоже умеет, хотя если он крысу мучает то там хоть обсоздовайся логов, код в его руках, только еще раз напоминаю, что проще пол часа в спеках покапаться чем неделю ловить чего там отвечает сервер =)
Аватара пользователя
Attid
долгожитель
 
Сообщения: 2585
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E

Re: ICQ клиент

Сообщение bw » 07.05.2008 17:37:23

> а ты отключи в асе "отображать мой статус на странице" спамеры палить не смогут =)
Да вроде как отключено.

> проще пол часа в спеках покапаться чем неделю ловить чего там отвечает сервер
Но не так интересно ;-).

..bw
Аватара пользователя
bw
постоялец
 
Сообщения: 359
Зарегистрирован: 01.12.2005 11:36:23
Откуда: Усть-Илимск

Re: ICQ клиент

Сообщение wavebvg » 07.05.2008 21:00:12

В этих спеках ещё разобраться надо, что у меня не получается - проще по наитию код поправить, сейчас разбирался с авторизацией, так и не нашёл, почему он не отображает правильно некоторые вещи - просто не могу найти строчку, где создаётся эвент, но это ничего - прорвёмсу...
Кто-нить знает, компонент tlist работает, а то после обращения к нему - всё подвисает наглухо!!!
wavebvg
постоялец
 
Сообщения: 354
Зарегистрирован: 28.02.2008 04:57:35

Re: ICQ клиент

Сообщение Timid » 14.05.2008 08:41:16

Сам по себе HTTP не может держать соединение

bw прав, соединение поддерживать возможно, есть специальный запрос CONNECT. На нем работает QIP.
ICQ-сервера его поддерживают.
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Пред.

Вернуться в Разработки на нашем сайте

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26

Рейтинг@Mail.ru