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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ещё раз ICQ 
:(
    Опции темы
uid0gid0
Дата 11.5.2006, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 27.3.2006

Репутация: нет
Всего: нет



Здравствуйте , я хочю написать приложение , которое будет работать с ICQ протоколом. Дело в том что мне нужно чтоб при ошибке или ещё чего-нибудь , приложение будет кидать админу (то есть мне :-)) мессагу , мол так-то-так то я не хочю работать. 
Вот теперь столкнулся с проблемой , нифига не понятен протокол ICQ ...помогите пожалуйста , любая инфа будет полезной 
ЗЫ Не посылать на этим доки , я там всёравно ничего не понял :
http://www.ihse.net/icq/
http://iserverd.khstu.ru/oscar/
http://www.rejetto.com/icq/
http://www.oilcan.org/oscar/
....Помогите люди...
Ах да , и ещё , не спрашивайте почему именно по ICQ , просто заказчик идиот smile я ему говорил давай по ирк...шучю ) 

Это сообщение отредактировал(а) uid0gid0 - 11.5.2006, 14:25
PM MAIL   Вверх
cozzzy
Дата 11.5.2006, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 54
Регистрация: 29.4.2006
Где: Харьков

Репутация: нет
Всего: нет



Цитата(uid0gid0 @  11.5.2006,  08:39 Найти цитируемый пост)
ЗЫ Не посылать на этим доки , я там всёравно ничего не понял :

Ну почитай еще здесь:
http://www.icqinfo.ru/icqprotocol.shtml
http://www.realcoding.net/article/view/635
http://freshmeat.net/articles/view/359/
 
PM MAIL   Вверх
uid0gid0
Дата 12.5.2006, 06:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 27.3.2006

Репутация: нет
Всего: нет



Спасибо , там тоже почитаю. Мне бы на русском обьяснения всего этого smile продолжаем тему.... 
PM MAIL   Вверх
uid0gid0
Дата 12.5.2006, 16:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 27.3.2006

Репутация: нет
Всего: нет



Вот например , я приконнектился к серверу ( с сокетами я работать умею ) , патом туда надо отправить какойто пакет...хрен его знает как этот пакет делать .... smile  
PM MAIL   Вверх
Aike
Дата 14.5.2006, 00:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 30.4.2006
Где: Россия, Москва

Репутация: нет
Всего: нет



У меня вот на что фантазии хватило:

Код

#include "winsock2.h"
#include "packet.h"

void main()
{
    WSADATA wsa;
    WSAStartup(0x0202, &wsa);

    SOCKET hSocket = socket(AF_INET, SOCK_STREAM, 0);

    sockaddr_in sin;
    sin.sin_family = AF_INET;
    sin.sin_addr.s_addr = inet_addr ( "64.12.200.89" );
    sin.sin_port = htons( 5190 );

    connect(hSocket, (sockaddr *) &sin, sizeof(sin));

    char recvbuf[255];
    recv(hSocket, recvbuf, sizeof(recvbuf), 0);

    icq_cookie_login pack;

    pack.dwLeng = 0x2A;
    pack.uin = 123456789;
    pack.pass = "";
    pack.ClientProfile = "ICQBasic";
    pack.CliMajor = 20;
    pack.CliMinor = 34;
    pack.CliLesser = 0;
    pack.CliBuild = 2321;
    pack.CliSubBuild = 1085;
    pack.CliLang = 0x0F;
    pack.CliCountr = 0x0E;

    send(hSocket, (const char*) &pack, sizeof(pack), 0);
    
    closesocket(hSocket);
    WSACleanup();
    return;
}

packet.h
Код

typedef struct icq_cookie_login
{
  DWORD dwLeng;
  DWORD uin;
  void *pass;
  char* ClientProfile;
  BYTE CliMajor;
  BYTE CliMinor;
  DWORD CliLesser;
  DWORD CliBuild;
  DWORD CliSubBuild;
  int CliLang;
  int CliCountr;
} icq_cookie_login;
 
В зависимости от pack.dwLeng = 0x2A; сервер разные запросы присылает (проверял ICQMenace'ом) 

Это сообщение отредактировал(а) Aike - 14.5.2006, 00:11
PM MAIL ICQ   Вверх
uid0gid0
Дата 15.5.2006, 07:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 27.3.2006

Репутация: нет
Всего: нет



Айк дружЫще , спасибо попробую поковырять (только проснусь..) , тема не закрыта ! 
PM MAIL   Вверх
uid0gid0
Дата 15.5.2006, 08:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 53
Регистрация: 27.3.2006

Репутация: нет
Всего: нет



Это коннект ? 
PM MAIL   Вверх
Aleksiem
Дата 29.5.2006, 01:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 57
Регистрация: 4.5.2006
Где: Выкса

Репутация: нет
Всего: 2



Не знаю нужно ещё или нет ну вообщем смысл в следующем:
1. Ты присоединяешься к серваку login.icq.com порт 5190
2. Он тебе посылает первый пакет c данными $00000001 (не считая заголовка).
Эт типа стартовый пакет.
Далее ты ему посылаешь пакет с твоим логином проксоренным паролем, описанием твоего клиента и всякой фигней. Всё описано http://www.icqinfo.ru правда на английском, но довольно просто (я с шестью классами немецкого разобрался). 
Это указано в коде Aike, скорей всего верно, не могу говорить точно пишу в основном на Delphi.
3. В ответ на пакет с логином он тебе посылает пакет с твоим номером, ипаком и портом сервера к которому надо присоединиться и кукисами  (256 бит случайных данных). Сразу после этого пакета он тебе посылает прощальный пакет после которого разрывает соединение.
4. Ты присоединяешься к указанному серверу. Он тебе приветственный пакет, ты ему пакет с кукисами.
Дальше идёт нудный разбор SNAC и анализ всего пришедшего в них. Сам ещё не до конца разобрался.
Могу если надо выложить коды на Delphi что уже сделал. Правда там пока не очень много.
В описании мог пропустить некоторые детали так, как пишу на память. Но если какие проблемы будут в реализации всего вышеописанного, думаю специалисты по С тебе помогут. Опять же опускаю устройство пакетов принимаемых и отсылаемых данных. За всем на http://www.icqinfo.ru
Кстати есть вопрос по этой теме. Кто-нить знает по какому принципу запрашивается картинка для регистрации нового UIN, кроме  того не возбраняются ссылки на протоколы ICQ старше 8 (не включительно), желательно на 11.
uid0gid0, надеюсь не в обиде за эксплуатацию твоей темы???smile  

Это сообщение отредактировал(а) Aleksiem - 29.5.2006, 01:13
PM MAIL ICQ   Вверх
Nil
Дата 7.6.2007, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 15.4.2007

Репутация: нет
Всего: нет



Aleksiem
Цитата

Кто-нить знает по какому принципу запрашивается картинка для регистрации нового UIN

Очень просто. https://www.icq.com/register - там https протокол и все довольно-таки просто используя curl пишется за 15 мин.
----
Меня сейчас другое интересует, кто-нибудь может на данный момент сказать какой протокол последний ?..
Или хотя бы программа по какому протоколу написанная будет работать на нынешнем сервере icq ?..
Максимум нашел документацию по 9 версии[http://iserverd.khstu.ru/oscar/] все понятно, но стоит ли браться если не уверенности что протокол не устарел?..
Никак не пойму, OSCAR же вообще вроде закрытый протокол ?.. Откуда альтернативные клиенты и полные спецификации по каким-то его версиям берутся ? Реверс инженеринг ? 0_о Это же ужас, особенно snac'и
PM MAIL WWW ICQ   Вверх
BlackStar
Дата 8.6.2007, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 13.12.2006

Репутация: нет
Всего: 5



А может будет проще написать плагин к Миранде?
PM MAIL Jabber   Вверх
Santilka85
Дата 18.7.2007, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 202
Регистрация: 8.6.2007
Где: Новосибирск

Репутация: нет
Всего: 1



А вообще автор темы по-моему сказал с какой прогой ему надо работать. Зачем тада другие человеку предлагать?
--------------------
Снегоболотоходы WP8X8 всего за 480000 рублей и аксессуары к ним.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.1233 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.