Появилась надобность написать icq клиент на C#, порыскался в нете, нашел только icq#, но он не работает, да и документации нет. Написал автору, молчит. Есть ещё C исходники Miranda, но я посмотрел - такая жуть (сам я избалован элегантным C#). Так что вот. Но надо бы ещё найти информацию по icq протоколу и вообще как с этим всем работать в C#.
Информация о протоколе: http://iserverd.khstu.ru/oscar/ Компонент для работы с icq на C# (кажется даж апдейтенный) был тут: http://www.gotdotnet.ru/Forums/Common/318944.aspx Ну плюс еще открытые сорцы &RQ: http://www.rejetto.com/&RQ/
вуаахаха )))) мне самому нравится с# пишу на нем. но после знакомства с руби и питоном. элегантным его назвать язык не повернется ))) по сабжу... http://shaim.net/ вот месяц назад всьо работало.
Спасибо, ознакомился с этим OscarLib, но там пример WinForms не идет. Чтож приннимаюсь за подробное изучение этого протокола и работу с протоколами в C#. Результаты выложу где-то через неделю. P.S. Имхо у руби и питона синтаксис какой-то непривычный. {} как-то роднее...
Скачал я этот shaim. Он затребовал 3 framework. Установил. Как работает программа, так и не понял. Но там меня заинтересовали 3 dll в папке protocol: JabberLib.dll, MsnLib.dll, OscarLib.dll. Очевидно, что именно с их помощью осуществляется передача мессагов. Но примеров использования не было. Я ввел в гугл кодсёрч lang:C# using jabber.client; и так для всех namespace'ов но он ничего не нашел. Может кто-нибудь привести пример работы с этими библиотеками?
вот не надо... и на сорцы есть ссылка http://shaim.net/trac/trac.fcgi/shaim/attachment/wiki/0.4%20Release/shaim-0.4.src.zip?format=raw .. рабочая... и их сабвершна можно сорс скачать.
http://shaim.net/trac/oscarlib => To get the bleeding edge source code, download it from our Subversion repository at svn://shaim.net:41120/oscarlib/trunk - невозможно отобразить страницу За рабочую ссылку +1
^)))) мдяя.. качай из сабвершна .. в чем проблема ?? установи клиент... TortoiseSVN например. под винды.
Короче не работает этот шайм. Зашел им на свою аську, да котнакты мои все отобразились. Отпарвил себе навторой контакт, вышел, зашел через кфип - не пришло. Вобщем фигня этот shaim и этот oscarlib И icq#. Нет ничего лучше сделанного своими руками )) слышал, есть проги, которыми можно отслеживать сообщения icq (сниферы). я думал они и протокол в работе покажут, но нет. нет ли проги, которая может показать, какие данные отправляются на сервер, какие принимаются. ведь icq - закрытый протокол, и открытого описания его послдней 11 версии нет.
Покажу, и у меня будет не хуже. Если думаешь что я лох какой то, то ошибаешься. Я что, не могу воспользоваться сторонней библиотекой, и при некорректной ее работе решить написать свою? Это означает, что я ламер?
Вобщем долго рылся в этом OscarLib, получилось, наконец, отправить сообщение. Вот код, если кому-то интересно: Code: Session sess = new Session("uin", "pass"); sess.LoginCompleted += new LoginCompletedHandler(sess_LoginCompleted); sess.LoginFailed += new LoginFailedHandler(sess_LoginFailed); sess.ContactListFinished += new ContactListFinishedHandler (sess_ContactListFinished); sess.ClientCapabilities = Capabilities.SIMKopete | Capabilities.UTF8; sess.Logon("login.icq.com", 5190); sess.ActivateBuddyList(); } void sess_ContactListFinished(Session sess, DateTime lastModificationDate) { MessageBox.Show("Recieved Contact List"); } private void button2_Click(object sender, EventArgs e) { try { sess.Messages.SendMessage("421003132", "hello"); MessageBox.Show("Message was sent"); } catch (Exception ex) { MessageBox.Show(ex.Message); } MessageBox.Show("Сообщение отправлено"); } Теперь надо разобраться, как осуществлять поиск, и, считай клиент готов.
Как минимум это означает что тебе хочется делать лишнюю работу. Мог бы просто поправить несколько строк в чужой библиотеке. А так как ты начал писать свое, не оценив работу других библиотек - то это говьорит уже о профессионализме. Или точнее о его нехватке.