motofan logo
> 

[Masya] ICQ Client by G-XaD, Еще не вся нужная функциональность

G-XaD
сообщение 18.4.2010, 20:21


Мастер
****

Группа: Разработчики
Сообщений: 171
Регистрация: 6.11.2007
Из: Donetsk City / Ukraine
Пользователь №: 153 083
Модель телефона: E1, k810
Прошивка: r373_g_0e.30.79r

Рейтинг: 323



Дожал. Протокол разобрал еще в начале года, он ужасен! Только сейчас собрал все воедино и исправил парсеры пакетов от сервера. Минимум функциональности, примитив.

Файлы:
picq.so - в принципе является клиентом. В либе реализован ICQ протокол.
masya.elf - эльф, который использует протокол. По сути графическая оболочка для клиента.
libuix.so - либа, в корой реализуются диалоги. Эта либа может использоваться многими эльфами, поэтому ее лечше положить рядом с library.bin.
masya.bcfg - конфиг, создается при запуске эльфа.
/b/_icq.log - дамп общения клиента с сервером (FLAP заголовки вырезаны).


Много чего было написано для клиента:
- libuix
- picq
- one socket static lib. Теперь не нужен SynSock ;).
- BCFG file firmat. Посмотрел реализацию на SE, написал по своему. Редактор не написан.
- list_ctrl. Статическая либа управления динамическими списками. (используется почти везде). Идею взял у SE

Что умеет:
- Подключаться. (не умеет использовать безопасную md5 авторизацию)
- Читать SSI (Server Side Information). Аккуратно вырезает только список контактов.
- Получать онлайн статусы тех, кто в списке (от остальных просто не приходят)
- Принимать сообщения (Win1251 и Unicode)
- Отправлять сообщения (только Win1251)
- Выставлять статус. (не проверено).
- Какойто стандартный звук при входящих. Не отключается.

Исправлено:
- Пароль вводится не только цифрами.
- UTF8 в списке контактов (только для кирилицы), в т.ч. буквы Ё и ё.
- Добавлены иконки статуса. Кроме "Invis 4 all": этот статус в доке не описан и в миранде я не нашел.
- Если изначально выставлен статус, то при коннекте он выставляется. Если изначально стоит offline, при коннекте выбирается online. Выбор статуса off после подключения = отключение.
- Выставление статуса в доке и миранде описаны по-разному. Протокол использует реализацию миранды.
- Показывает прогресс подключения.

Особенности:
- Хранит только 16 последних сообщений от одного UIN'а. Выделяет по 2 Кб на сообщение, если от 10 пользователей по 16 сообщений запомнить, то выйдет 2*16*10 = 320 Кб, многовато памяти.
- История сообщений заполнятеся снизу вверх.
- Контакт, у которого есть чат выделен. (по умолчанию желтым).
- Эльф сворачивается красной кнопкой, запоминая стэйт (стэйты это "главное меню", "список контактов", "прогресс подключения", "сообщение об ошибке". Из чата вернется в список контактов). Возвращается из фона откуда угодно комбинацией [*-*-RED].
- Особенно не проверял, но должен выдавать ссобщения об ошибках.
- Не рекомендую сворачивать во время коннекта, у меня эльф завис.
- НЕТ XStatus, и не нужно.
- Не показывает процесс подключения (сделаю потом).
- Кнопка "Connect" работает один раз и блокируется. Чтобы отключиться выбирайте "Exit".
- Не оповещает о входящих (както не до этого было).
- Кнопка выставления своего статуса заблокирована.
- Не принимает сообщения от тех, кто не в списке. Тоесть в клиенте реализовано, но эльф не обрабатывает сообщения вообще, их хранит клиент и прикрепляет к контактам из списка.
- Нет поиска, добавления контактов в список. (Не реализовано в протоколе)
- Нет инфы контакта (не реализовано в протоколе), нет запроса и авторизации.
- Тормозит :). Один поток, что из него можно взять? ГУЙ выполняется тамже где клиент, поэтому когда сервак начинает присылать входящее сообщение ГУЙ зависает.
- Другие не могут определить клиент(это понятно) и версия протокола(я прото не знаю как она определяется :)).
- Не показывает кирилицу в списке контактов. (я не проверял какая там кодировка)
- т.к. редактора bcfg нет, то сделал редактирование UIN/pw из эльфа. Настройки сохраняются в 'masya.bcfg' в папке с эльфом.
- Задумка bcfg предполагает, что дефолтный конфиг зашит эльф. В этом эльфе прописан аккаунт, на котором я тестировал.
- Не читает офф сообщения.


Не выкладывайте файлы 'masya.bcfg' и '_icq.log'!!!
В первом настройки аккаунта в открытом виде с пояснениями где UIN, а где пароль. Во втором UIN/pw не в открытом, но простом виде.


Обновленные:
Ссылка на архив Masya.zip - Эльф и протокол к нему.
Ссылка на архив libuix.zip - Библиотека диалогов. Положить в /b/Elf2/ или в папку с эльфом.
Требуется обновление либы: архив готовых либ по данным с svn. Файл для своей прошивки распаковать и переименовать в library.bin, положить в /b/Elf2/.

Исходники доступны на svn://svn.vilko.ru/elfs2/masya


Изображение Изображение

Сообщение отредактировал om2804 - 19.6.2013, 16:00
Прикрепленный файл masya.zip   ( 477.81 килобайт ) Кол-во скачиваний: 546
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
 
Ответ в темуСоздание новой темы
Ответов
baat
сообщение 19.4.2010, 18:09


Самый Наглый
******

Группа: В отставке
Сообщений: 1 282
Регистрация: 18.5.2006
Из: Дом, милый дом...
Пользователь №: 83 674
Модель телефона: старая модель...
Прошивка: какая уж есть...
Победитель конкурса 2008


Настроение:
...



Рейтинг: 1535



G-XaD, чтот я твоих исходников на свн не наблюдаю, только хотел сделать себе, для личного пользования, версию не зависящую от эльфпака и модели телефона... поделишься? просто при всём желании если я прошьюсь на рецензия эльфпака которая должна бы запускать твой эльф и пускай ты даже придумаеть как заставить клавиши работать, 10-30 самопроизвольных ребутов, за пол часа, не позволят не то что эльфом пользоватся, телефоном даже...

ты конечно мозг, но при всём уважении, пол года мудрить интерфейс, чтобы эльф только на е398 работал? это уже изврат... учитывая что протокол давным давно был готов...
я конечно не спец... но мои эльфы по большей мере у 98% работали, а поле обновления либы у 99,9%.. а тут видимо на л7е вообще не грозит... ну да, телефон головная боль... поделись исходниками и я попробую доказать обратное, что на л7е может прекрасно работать...
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить

Сообщений в этой теме
G-XaD   [Masya] ICQ Client by G-XaD   18.4.2010, 20:21
G-XaD   Тут будет описание API либы picq.   19.4.2010, 8:17
Venik   motorola L7 EOR_RB.работает. и даже подключается   19.4.2010, 9:36
CarbonZyn   Venik, :shok: как работает :shok: у меня не раб...   19.4.2010, 10:31
Venik   Карбон,у меня стоит пока своя сборка.   19.4.2010, 11:18
baat   Вобщем L7e подобная платформа как всегда - головна...   19.4.2010, 12:22
SaniaZ   L7_ACR_RB прекрасно запустилась :thumbup: ! П...   19.4.2010, 12:24
MANЬЯК   У398 проша ДаР 13 ноль реакции :(   19.4.2010, 12:31
Pieeer   L7e запустился, НО только первое окошко с подклчен...   19.4.2010, 12:31
L7EeePC   L7e, EP2 Loading ELF success и больше ничего. EP...   19.4.2010, 13:21
DarkCoder   У меня не работает(( Консоль даже не вылезла. Пра...   19.4.2010, 13:38
L7EeePC   L7e, EP2 rev. 65, окошко аськи появилось. На клави...   19.4.2010, 13:46
Мачо   На Dar 2 test 14.2 аська запустилась и работает, ...   19.4.2010, 14:08
Pieeer   Moto L7e потестил на трех ревизиях EP2: ревизия 53...   19.4.2010, 15:34
Andy51   G-XaD, мы с Тимом боремся со статус-строкой таким ...   19.4.2010, 16:54
MaratMD   А че пароль только цифрами пишется?   19.4.2010, 17:47
baat   G-XaD, чтот я твоих исходников на свн не наблюдаю,...   19.4.2010, 18:09
CarbonZyn   G-XaD, а что ты мне скажешь с моим логом :sorry:   19.4.2010, 18:18
NobleTracer   Дар тест 14,2. Аська работает, даже подключилась. ...   20.4.2010, 4:03
Mazzog   c семизнака ася не подключается,создал 9-ти знак з...   20.4.2010, 7:58
erafeika   с шестизнака на дар14.2 всё отлично   20.4.2010, 9:09
SpyHEX   E398. DAR 14.2 У меня аська не подключается. Хотя ...   20.4.2010, 9:16
Matrasa   На дар 2.14.2 работает! Большое спасибо за чуд...   20.4.2010, 9:41
Andy51   G-XaD, у меня работает на EP2 r65.. вроде бы :) Ес...   20.4.2010, 10:21
G-XaD   Я не дома. Прошу пока результаты тестирования не п...   20.4.2010, 10:25
Mazzog   erafeika, значит не в 7-ми знаке дело а в чем? 20~...   20.4.2010, 11:18
erafeika   у меня в одной группе 90 контактов другие две по 2...   20.4.2010, 12:01
CarbonZyn   G-XaD, : ) а если эльф пак перекомплю заработает?...   20.4.2010, 13:36
baat   Andy51, я всё понимаю, но можно было сделать на ст...   20.4.2010, 13:52
SpyHEX   Взял новый уин, в него добавил 1 контакт. Вбил уин...   20.4.2010, 14:52
Zloy!   Спасибо, хорошая работа Пожелания: Добавьте измен...   21.4.2010, 6:04
Мачо   Zloy! нажимй 7 * * красная фонарик не загорит   21.4.2010, 9:57
MaratMD   Zloy!,можно просто нажать *красная она разверн...   21.4.2010, 11:54
Ykraina1992   Если запускать с пункта меню то получается такое:   21.4.2010, 21:18
dikont777   оч оч необходимо сделать ввод пароля с буквами   22.4.2010, 7:25
harchello   v3i 01.03R (rev65) полет нормальный: подключается,...   22.4.2010, 11:35
G-XaD   Ykraina1992, ну... Анимация пункта меню отрисовыв...   22.4.2010, 17:26
zema00   Для ввобда пароля доступны: - Латиница (верхний/н...   22.4.2010, 19:50
AScorpio   G-XaD, на Е398 Dar 2.14.2 не переключается на лати...   22.4.2010, 18:17
G-XaD   Действительно, в том, что я выкладывал забыл флажк...   22.4.2010, 20:26
zema00   G-XaD, При отправке сообщения получаю ребут, в м...   22.4.2010, 20:38
NobleTracer   дар 14,2 всё равботает хорошо. Только я не смог иТ...   23.4.2010, 4:09
CarbonZyn   :cry: у меня как всегда не подключается. просто ка...   23.4.2010, 4:13
daFix   G-XaD, Отличный эльф! Очень надеюсь что будеш...   24.4.2010, 12:38
G-XaD   Обновил эльф. Без обновления либы не запускать...   26.4.2010, 9:31
daFix   не понял :pardon: Я говорил о том, что было бы н...   27.4.2010, 21:11
Ykraina1992   L7 ACR_RB после замены либы перестали работать эль...   26.4.2010, 10:19
SaniaZ   Пренкрасно работает L7 ACR_RB ----------------- ...   26.4.2010, 10:41
CarbonZyn   G-XaD, :clapping: Урааааааааа рабоатет! L7 EO...   26.4.2010, 12:15
Fenja   Поддерживаю : ) З.Ы. На V3i 01.03R работает : ...   26.4.2010, 12:37
Gray One   G-XaD, А вот на l7e с старой ревизией EP2 не рабо...   26.4.2010, 12:46
zema00   На v3r при запуске в консоле ошибка 101, т.е. нехв...   26.4.2010, 12:49
zema00   Извините, ступил :cry: . (не ту версию запускал)...   26.4.2010, 17:39
Pieeer   Too G-XaD что касаеться L7e!! На ревизии 6...   26.4.2010, 13:51
RIP   На дар14.2 запустился но на нажатия клавиш не реаг...   26.4.2010, 14:08
RomeRo_001   у меня фигня какая то. закидываю либу перезагружаю...   26.4.2010, 14:15
G-XaD   Владельцы L7e/K1/Z3/L9 с EP2 ревизии ниже 61, прот...   26.4.2010, 14:47
Gray One   Владельцы L7e/K1/Z3/L9 с EP2 ревизии ниже 61, про...   26.4.2010, 17:03
Carela   Протестил не работает : ) Либу сменил, потом поп...   26.4.2010, 18:00
erafeika   G-XaD, Сделай пожалуйста либу на DaR. ---- G-XaD...   26.4.2010, 15:50
Pieeer   :clapping: ооо теперь работает!!! Мог...   26.4.2010, 15:51
CarbonZyn   : ) еще нашел неприятный глючок корочей сидел с эт...   26.4.2010, 17:46
Alesha_Pl   скачал вроде сложил все верно. При запуске консо...   27.4.2010, 4:50
Mazzog   выложите либу на дар2 14,2 самому добавить не полу...   27.4.2010, 6:56
baat   Mazzog, соберёт Maчо, не переживай...   27.4.2010, 9:20
Gray One   Carela, Спасибо, действительно забыл про libuix.s...   27.4.2010, 16:54
G-XaD   Ну есть же дебаг версия эльфа (релиз протокола не ...   27.4.2010, 19:33
Pieeer   Лог не запуска на 53 ревизии!! MotoCMD2: d...   27.4.2010, 19:53
Gray One   G-XaD, Да я наверно не в силах собрать и запустит...   30.4.2010, 12:42
G-XaD   Gray One, Первый отчет об ошибке со скрином - там...   30.4.2010, 14:58
Pieeer   Кинул все /c/Elf2/ на запускается ---- G-XaD: р...   1.5.2010, 9:22
Rastаman   G-XaD, Будет в будушем поддерживать анимированые ...   3.5.2010, 8:35
mirba   круто на дар14.2, работает без проблем, какой объе...   3.5.2010, 12:09
SpyHEX   Как писал раньше Masya подключалась у меня с новог...   4.5.2010, 8:39
Serg398   подключение стоит на 1 проценте. тел К1. еп2 стары...   6.5.2010, 14:53
sever20067   Можно реализовать показ/скрытие офлайн контактов, ...   11.5.2010, 9:08
bobert   на дар 15 все нормально подключается, принимает и ...   15.5.2010, 2:25
CarbonZyn   Скажите, что можно сделать со статус строкой? Она ...   17.5.2010, 13:12
sever20067   А можно изменить объём вводимой информации в сообщ...   18.5.2010, 17:10
Mazzog   только у меня ася часто дисконектит?? jimm работае...   19.5.2010, 15:07
G-XaD   sever20067, На втором скрине сокращенные сообщени...   5.6.2010, 8:54
sever20067   G-XaD, а лог выкладывать, это тот который в корне ...   6.6.2010, 1:19
NeoBeZ_33   у меня тож не работаит.мот в 360 мож дело в нестан...   19.6.2010, 21:03
CarbonZyn   NeoBeZ_33, в звере еп2 старый : )   3.7.2010, 7:03
DarkCoder   Сегодня поставил себе эльфпак 65 ревизии. Масю и l...   3.7.2010, 10:55
sever20067   А реально ли ресурсы графические переделать от mJa...   17.7.2010, 16:11
sever20067   G-XAD, хотел бы узнать, это проблема в libuix.so, ...   10.8.2010, 2:54
sever20067   мне повторить не удалось. А вообще за графический ...   23.8.2010, 10:55
G-XaD   Если мне не удалось повторить проблему, то как я ...   24.8.2010, 9:35
sever20067   G-XaD, libuix.so у мя была последняя, 1.0.2.8, хот...   27.8.2010, 3:38
igoripp   G-XaD, огромный респект тебе за masya Если знаю чт...   11.9.2010, 4:37
T@urn4ik   Сначала эльф работал. Потом перестал. При выборе и...   28.9.2010, 17:05
ГлюЧный_МоторчеГ-Л7   можно немножко тупых вопросов? есть ли звук/вибра...   23.11.2010, 17:51
baat   ГлюЧный_МоторчеГ-Л7, а почитать или попробывать?   23.11.2010, 20:13
ГлюЧный_МоторчеГ-Л7   baat, уж наверное если я спросил, то у меня не был...   24.11.2010, 4:49
Justik   Можна зделать чтобы все кто анлаийн онибыли первие...   24.11.2010, 8:47
ГлюЧный_МоторчеГ-Л7   подключается и стоит на 100%, через какое-то время...   24.11.2010, 16:31
sanekl9   А кто нибудь ставил на Л9 с Данжер монстром?чет не...   22.12.2010, 18:57
Лекс Ливень   Некропостинг. Максимальная длина пароля в протокол...   17.5.2013, 11:41
MaratMD   Лекс Ливень, как видишь,эльфы уже 2года мертвы   17.5.2013, 12:04
2 страниц V  1 2 >

[Masya] ICQ Client by G-XaD, Еще не вся нужная функциональность · Эльфы, их разработка и портирование · Forum
 

Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 7.7.2025, 20:10

Форум живёт: