ICQ клиент

Обсуждение проектов наших жителей.
Вы можете выставить проект на тест или найти помощников для его реализации.

Модератор: BV

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: ICQ клиент

Сообщение MIT » 11.01.2009 (Вс) 15:15

Всегда пожалуйста, приходите есчо :wink:
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Мамонт
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 479
Зарегистрирован: 21.02.2005 (Пн) 16:48
Откуда: Ленинград

Re: ICQ клиент

Сообщение Мамонт » 11.01.2009 (Вс) 22:12

ах...чёрт, неработает...сообщения отправляются, а от другово пользователя невсегда приходят, а если и приходят то неполностью :(
alibek
Злой Человек

Tiker
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 26.11.2008 (Ср) 13:08

Re: ICQ клиент

Сообщение Tiker » 15.01.2009 (Чт) 14:49

да.. что-то не так =(

Tiker
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 26.11.2008 (Ср) 13:08

Re: ICQ клиент

Сообщение Tiker » 15.01.2009 (Чт) 18:17

покапал посидел.. поразбирал пакеты..
вообще добавляем процедуру:

Код: Выделить всё
Function ToMsgFromICQStr(ByVal strInput As String) As String
    On Error Resume Next
    Dim i As Integer, strOut As String, intChar(1) As Integer
    For i = 1 To Len(strInput)
        intChar(0) = Asc(Mid(strInput, i, 1))
        If (intChar(0) = 0) Or (intChar(0) = 4) Then
            intChar(1) = Asc(Mid(strInput, i + 1, 1))
            If (intChar(1) <> 0 And intChar(1) <> 4) Then
                If (intChar(0) = 4) Then
                     strOut = strOut & Chr(176 + intChar(1)): i = i + 1
                Else
                     strOut = strOut & Mid(strInput, i + 1, 1): i = i + 1
                End If
            End If
        Else
            strOut = strOut & Chr(intChar(0))
        End If
    Next i
    ToMsgFromICQStr = strOut
End Function


далее заменяем кусок кода, который отвечает за приём сообщений. на этот:

Код: Выделить всё
If GetSnacFid(fData) = 4 And GetSnacSID(fData) = 7 Then
  fData = Mid$(fData, 21, Len(fData) - 20)
  t_len = GetByte(fData, 1)
  r_uin = Mid$(fData, 2, t_len)
  For i = 1 To Len(fData)
      If (str2hex(Mid$(fData, i, 4)) = "01060101") Then '//ищем опкод, который сообщает о начале мессаги
          t_len = 0
          If (GetByte(fData, CInt(i + 4)) = 1) Then
              t_len = GetByte(fData, (i + 4)) * 255 + 1 '//не уверен, что правильно, но мессаги длинее чем 255 символов принимает хорошо =)
          End If
          t_len = t_len + GetByte(fData, CInt(i + 5)) '//выдираем второе значение длины мессаги
          r_msg = ToMsgFromICQStr(Mid$(fData, i + 6, t_len))
          r_msg = Replace(r_msg, Chr(2), "") '//icq6 присылает зачем-то 2 символ.. - нам он не нужен. убираем
          RaiseEvent MsgRecv(r_uin, r_msg)
          Exit Sub
      End If
  Next i
End If


и всё =) проверял на ICQ6 Lite и на QIP Mobile.

Для тех кому в лом что-то искать и добавлять. прикрепил архив.
У вас нет доступа для просмотра вложений в этом сообщении.

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: ICQ клиент

Сообщение MIT » 15.01.2009 (Чт) 18:25

8) Мне не влом было бы и самому все реализовать (только вот все времени нет), но за проделанную работу - спасибо :wink:
Скачал.
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Tiker
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 26.11.2008 (Ср) 13:08

Re: ICQ клиент

Сообщение Tiker » 15.01.2009 (Чт) 18:52

MIT писал(а):8) Мне не влом было бы и самому все реализовать (только вот все времени нет), но за проделанную работу - спасибо :wink:
Скачал.


блин) только вот от самого себя не приходят пакеты ;) точнее формат сообщения не понятный))

Мамонт
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 479
Зарегистрирован: 21.02.2005 (Пн) 16:48
Откуда: Ленинград

Re: ICQ клиент

Сообщение Мамонт » 15.01.2009 (Чт) 20:15

да, работает нормально. отлично.
alibek
Злой Человек

Tiker
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 26.11.2008 (Ср) 13:08

Re: ICQ клиент

Сообщение Tiker » 21.01.2009 (Ср) 16:51

ппц... =( опять обновление протокола...

какие будут предложения? предложение типа переходим на XMPP не устраивают.... ибо и так есть уже свой xmpp коннект. тока надо и icq ...

Мамонт
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 479
Зарегистрирован: 21.02.2005 (Пн) 16:48
Откуда: Ленинград

Re: ICQ клиент

Сообщение Мамонт » 21.01.2009 (Ср) 18:57

да, теперь основательно всё поменяли
alibek
Злой Человек

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: ICQ клиент

Сообщение iGrok » 21.01.2009 (Ср) 19:21

Мамонт писал(а):да, теперь основательно всё поменяли

Судя по инфе в сети, в протоколе ничего не поменяли. Просто блокируют RU с альтернативными клиентами.
label:
cli
jmp label

Мамонт
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 479
Зарегистрирован: 21.02.2005 (Пн) 16:48
Откуда: Ленинград

Re: ICQ клиент

Сообщение Мамонт » 21.01.2009 (Ср) 23:16

да, у мнея кип заработал, а у некоторых нет. этот пример неработает, хотя тут нет идентификации клиента. но в теории можно АОЛ убедиьт что мы пользуемся icq6.5
alibek
Злой Человек

Tiker
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 26.11.2008 (Ср) 13:08

Re: ICQ клиент

Сообщение Tiker » 22.01.2009 (Чт) 9:43

Мамонт писал(а):да, у мнея кип заработал, а у некоторых нет. этот пример неработает, хотя тут нет идентификации клиента. но в теории можно АОЛ убедиьт что мы пользуемся icq6.5


хорошо бы это дело на практике...

Dakar
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 25.01.2009 (Вс) 12:41

Re: ICQ клиент

Сообщение Dakar » 25.01.2009 (Вс) 13:07

Парни что за трабла ??? Не подскажите??? Короче коннектится хорошо отправляет тоже замечательно, а вот на прием вообще глухо в чом проблема может быть ??

Dakar
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 25.01.2009 (Вс) 12:41

Re: ICQ клиент

Сообщение Dakar » 25.01.2009 (Вс) 13:59

Нашол где сабака зарыта :D
If (str2hex(Mid$(fData, i, 4)) = "01060101") Then '//ищем опкод, который сообщает о начале мессаги

Меняем вот это "01060101" на "01010101"
да и ещё вот тут
r_msg = Replace(r_msg, Chr(2), "") '//icq6 присылает зачем-то 2 символ.. - нам он не нужен. убираем

добавим ещё одну строку тк миранда присылает не 2 символ а 3-й
r_msg = Replace(r_msg, Chr(3), "") '//Миранда присылает зачем-то 3 символ.. - нам он не нужен. убираем

Пока работает ))

Dakar
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 25.01.2009 (Вс) 12:41

Re: ICQ клиент

Сообщение Dakar » 25.01.2009 (Вс) 15:19

Вот теперь последний вопрос, а как оргонизовать запрос о контактах???

Мамонт
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 479
Зарегистрирован: 21.02.2005 (Пн) 16:48
Откуда: Ленинград

Re: ICQ клиент

Сообщение Мамонт » 26.01.2009 (Пн) 2:08

Случайно по телеку увидел новости, АОЛ вроде хочет судиться с теми кто делает клиенты альтернативные! Так что...
alibek
Злой Человек

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: ICQ клиент

Сообщение MIT » 26.01.2009 (Пн) 2:42

Хорошие новости, ничего не скажешь...
А на каком основании-то? В соглашении, вроде, только про передаваемую информацию написано
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Dakar
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 25.01.2009 (Вс) 12:41

Re: ICQ клиент

Сообщение Dakar » 26.01.2009 (Пн) 7:40

Мамонт писал(а):Случайно по телеку увидел новости, АОЛ вроде хочет судиться с теми кто делает клиенты альтернативные! Так что...

Ты думаешь им есть ризон судится с таким количеством программистов?! Мне кажется это вилами по воде писанно!

А по поводу запросов может поможет кто?!

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: ICQ клиент

Сообщение MIT » 26.01.2009 (Пн) 8:03

Со всеми-то вряд ли, а вот с 2-3мя, в показательных целях, думаю могут
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Dakar
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 25.01.2009 (Вс) 12:41

Re: ICQ клиент

Сообщение Dakar » 26.01.2009 (Пн) 11:25

Ну не стиот же из-за этого тему замораживать :cry:

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

З.Ы. Заранее спасибо за помощь!

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: ICQ клиент

Сообщение MIT » 26.01.2009 (Пн) 17:58

Dakar писал(а):Мне кто нибуть поможет или нет
Ну как тебе сказать, если бы кто знал, наверно помогли бы уже. Если никто не ответил - чем не повод взять и поучить протокол самому? Ведь, если ты собрался что-то делать в этой области, без знания протокола все равно далеко не уедешь. А так допишешь клиент, все тебе благодарны и будут :wink:
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

Dakar
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 25.01.2009 (Вс) 12:41

Re: ICQ клиент

Сообщение Dakar » 26.01.2009 (Пн) 18:59

Понятно, ну ладно, придётся копатся

Dakar
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: 25.01.2009 (Вс) 12:41

Re: ICQ клиент

Сообщение Dakar » 01.02.2009 (Вс) 11:43

Парни не подскажете где описание рабочего протокола оторвать можно? чот всё перекопал ни один не фурычет ((

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: ICQ клиент

Сообщение alibek » 02.02.2009 (Пн) 10:22

Dakar писал(а):Парни не подскажете где описание рабочего протокола оторвать можно? чот всё перекопал ни один не фурычет ((

Не ври.
http://dev.aol.com/aim/oscar/
Lasciate ogni speranza, voi ch'entrate.

Мамонт
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 479
Зарегистрирован: 21.02.2005 (Пн) 16:48
Откуда: Ленинград

Re: ICQ клиент

Сообщение Мамонт » 02.02.2009 (Пн) 13:26

alibek это несовсем то что нужно

Dakar смотри на первой странице пример SSecurity там всё прекрасно работает и каждый снак прописан коментарием
alibek
Злой Человек

Мамонт
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 479
Зарегистрирован: 21.02.2005 (Пн) 16:48
Откуда: Ленинград

Re: ICQ клиент

Сообщение Мамонт » 11.03.2009 (Ср) 23:06

Вобщем разобрался с:
Подключение
Запрос офф месаг
Отправка сообщений
Получение сообщений
Загрузка контакт листа

Завис в получении информации над юзером потому как там события приходят в снаке отвечающем за офф месаги! Вобщем если есть люди которые разобрались или хотят помучить аську то отписывайтесь.
alibek
Злой Человек

Tiker
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 26.11.2008 (Ср) 13:08

Re: ICQ клиент

Сообщение Tiker » 08.06.2009 (Пн) 9:29

Мамонт писал(а):Вобщем разобрался с:
Подключение
Запрос офф месаг
Отправка сообщений
Получение сообщений
Загрузка контакт листа

Завис в получении информации над юзером потому как там события приходят в снаке отвечающем за офф месаги! Вобщем если есть люди которые разобрались или хотят помучить аську то отписывайтесь.


Можешь выложить? (

dormouse
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 140
Зарегистрирован: 10.01.2007 (Ср) 21:58
Откуда: Волжский

Re: ICQ клиент

Сообщение dormouse » 09.06.2009 (Вт) 8:45

извините за оффтоп, но я фигею, дорогая редакция..
зачем клепать очередную аську, которая вот-вот сдохнет, каждую неделю меняет протокол и люто ненавидит сторонние клиенты, если есть перспективный, открытый, расширяемый, поддерживающий подключение любых транспортов (аська из них самая популярная) протокол JABBER?
VBA, MSA97

Star Cat
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 73
Зарегистрирован: 25.07.2003 (Пт) 15:51
Откуда: От туда

Re: ICQ клиент

Сообщение Star Cat » 09.06.2009 (Вт) 11:48

dormouse писал(а):извините за оффтоп, но я фигею, дорогая редакция..
зачем клепать очередную аську, которая вот-вот сдохнет, каждую неделю меняет протокол и люто ненавидит сторонние клиенты, если есть перспективный, открытый, расширяемый, поддерживающий подключение любых транспортов (аська из них самая популярная) протокол JABBER?

Да, да! Еще бы найти исходник клиента Jabber.
Star Cat

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: ICQ клиент

Сообщение alibek » 09.06.2009 (Вт) 11:50

Star Cat писал(а):Да, да! Еще бы найти исходник клиента Jabber.

А своя голова для чего? Чтобы в нее есть?
XMPP это открытый протокол, никто не мешает сделать свой клиент.
Lasciate ogni speranza, voi ch'entrate.

Пред.След.

Вернуться в Наши проекты

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

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

    TopList