Предисловие: данный icq клиент написан непосредственно на коде ARM-процессора аппаратов на платформах SGold, NewSGold и NewSGold2, то есть это отдельное приложение, работающее аналогично сименсовскому программному обеспечению и использующее производственный стандарт ELF (executable link file). Именно поэтому данное приложение имеет расширение *.elf.

NatICQ - icq клиент для мобильных телефонов siemens, на платформе SGold, NewSGold. Работает через доп. сервер. Имеет небольшой размер, порядка 50-100 кб, содержит минимум функций и настроек. Для работы приложения требуется, прежде всего, ELFpack (2.3 и выше) и последняя библиотека, а также установка эльфа GPRSD.

Q: Какие преимущества имеет данный клиент по сравнению с другими, а именно с jimm'ом?
A: 1 - Одно из главных преимуществ - высокая скорость выполнения команд, ограничением в данном случае выступает только мощность процессора и оперативная память. Я всего лишь скажу, что приложение в прямом смысле слова летает... 
2 - вывод на рабочий стол иконки, показывающей работу эльфа (будь то ваш статус или подключение к сети, либо новое входящее сообщение) ; скриншоты прилагаются 
3 - история на каждый контакт пишется в отдельный текстовый файл (*.txt). Файл создается автоматически на каждый контакт и присваевает номер icq контакта, как имя файла (например, 222333566.txt, где 222333566-номер icq контакта). Никаких задержек в работе с историей, как на jimm'ме, повторюсь, работает очень шустро.
4 - Трафика кушает меньше
5 - Не роняет NewSGOLD

Q: Не глючат ли кодировки при отправке/приеме сообщений с других клиентов
A: Нет, работает корректно почти со всеми, если конечно на другом конце провода не пользуются чем-то странным. Не забывайте, что иногда, даже между номера бывают проблемы, в независимости от клиента. 

Q: Будет ли возможность управлять списком контакта (Добавление и Удаление контактов, групп)? 
A: Да, когда-нибудь будет. Пока в этом нет большой необходимости.

Q: При отправке/приеме сообщений появляется сообщение с ошибкой I/O #102(101)
A: Надо, чтобы каталог для истории, указанный в конфигурации, существовал, а также, чтобы в конце пути не стоял символ \. Если вы создали каталог не на самом диске, а в какой-нибудь папке, то папка должна иметь название из английских букв.

Q: Когда NatIcq находится в фоновом режиме. При получении звонка задача вылетает из хтаsк?
A: Нет

Q: Периодически во время общения появляется что-то вроде <##icqimage0001>
A: Ходят слухи, что это смайлик. Не обращаете внимания, ничего страшного. Это не вирус. :)

Q: Naticq у меня так и не работает. Проверял на Теле2 и Билайне. Теперь другое - Статус соединения 1 (Try to login) перескакивает сразу на 3 (Login), без промежуточного 2. Затем появляется контакт лист, начинают загружаться те, кто онлайн и сразу же статус соединения 0.
A: Попробуйте сменить номер icq.

Q: Планируется ли в будущем переход на штатный сервер (без промежуточного)
A: Не будет работать прямо с серверами АОЛа. 

Q: А naticq научили gprsd врубать? 
A: Нет.

Q: При включении профиля в телефоне (кроме general=общий), надписи других профилей начинают наезжать на иконку, как решить проблему? 
A: В настройках файла NATICQ.bcfg координате Y присвоить значение 45. 

Q: Хочется, чтобы иконка статуса на Гл. экране была всегда и не пропадала на время.
A: Может быть засунем в будущем иконку в иконбар, оттуда её уже никто не уберёт.

Q: Проблемы с текстами икс-статусов! Я пишу текст в трех строчках, жму сохранить, захожу обратно а там опять пусто :(
A: Сделать файл ZBin/NatICQ/templates/XStatuses.txt из 104 пустых строк или скачай заготовку  http://perk11.info/svn/ARM/NATICQ/NatICQ/templates/XStatuses.txt и положить ее туда же.

Q: Почему-то для всех других я нахожусь в оффлайне, хотя я всех вижу
A: Зайдите с квипа, поставьте статус "видимый для всех, кроме списка невидящих" и зайдите опять с NatICQ

Q: Я ниче не понял?
А: http://lleo.aha.ru/na

Q: Я хочу вставить голых девок вместо рамочек меню (или еще какое лайно прикрутить), дайте доступ к SVN!
A: http://lleo.aha.ru/na

Q: А я сам все сделал и выложил там-то!
А: Дело твое, а на форумах forum.siemens-club.org и forum.allsiemens.com тебя ждет бан.

Q: Где взять последнюю версию и остальные файлы?
A: http://perk11.info/elf и также необходимые файлы и структура каталогов http://perk11.info/svn/ARM/NATICQ/NatICQ/



Настройка и установка naticq:

!!! Одна из причин, почему naticq не подключается, в дополнительном сервере. Если он не работает (может повис, выключен...), то подключиться невозможно. Выход: пользоваться другими серверами, их список есть на forum.siemens-club.org; использование джимма на некоторое время. 

Копируете файл NATICQ.ELF куда надо и запускаете. При первом запуске происходит создание файла конфигурации и выход с сообщением "Please setup UIN/PASS!". Открываете файл ZBin/etc/NATICQ.bcfg и настраиваете параметры. Далее запускаете снова NATICQ.ELF. 
При запуске NATICQ автоматически пытается соединиться с сервером, используя сессию, созданную GprsD (должен быть установлен и настроен - подробности чуть ниже).
После того, как соединение установлено, появляется контакт-лист. Далее выбираете необходимый контакт и пишете сообщение. Послать сообщение - зеленая трубка. 

В меню при редактировании чата есть пункты:
"Цитировать" - цитировать все текущее сообщение (на котором стоит курсор)
"Вставить смайл" - соответственно
"Получить инфо" - получить информацию о контакте
"Добав./имя" - добавить контакт с свой список или переименовать его (если уже существует)
"Запрос авториз." - запросить авторизацию
"Авторизовать" - разрешить авторизацую
"Открыть историю" открыть всю историю для просмотра, используется функция ExecuteFile. История сохраняется в папке "4(0):\ZBin\NatICQ\history" в текстовых файлах с названием UIN.txt, где uin - понятно что за номер. ;) Папка настраивается в конфигурации (NATICQ.bcfg).
"Очистить чат" - очистить текущий чат; когда много сообщений, редактор начинает притормаживать, этот пункт помогает ;)

В контекстном меню (там где выделить, копировать и т.д.) чата есть опции:
"Следующий чат" - перейти к следующему активному чату (также можно долго нажать "вправо" в последней позиции поля ввода своего текста
"Предыдущий чат" - перейти к предыдущему активному чату

Также в это контекстное меню добавляются строки из файла "4(0):\ZBin\NatICQ\templates\UIN.txt", где UIN - уин контакта. Если файл не найден, то производится поиск файла 0.txt
Пример для бота GisMeteo.ru:
Создаем файл 474974.txt и в нем пишем
----CUT-----
Харьков
Киев
----CUT-----
Теперь эти строки появятся в контекстном меню контакта 474974 и при нажатии текст вставится в позицию курсора.

Меню в контакт-листе содержит пункты:
"Статус" - установить статус (статус сохраняется в .bcfg-файле)
"X-Статус" - установить иксстатус (сохраняется в .bcfg-файле)
"Добавить контакт" - добавить контакт по уину
"Режим вибры" - включение/выключение вибры (сохраняется в .bcfg-файле)
"Режим звука" - включение/выключение звука (сохраняется в .bcfg-файле)
"Офф. контакты" - показывать/не показывать контакты оффлайн (сохраняется в .bcfg-файле)
"Группы" - показывать/не показывать группы (сохраняется в .bcfg-файле, требуется переконнект)
"Настройки" - вызвать редактор .bcfg-файла
"Оборвать связь" - разорвать соедиение
"Пинг" - измерение и вывод времени ответа сервера
"Об эльфе" - соответственно

При нажатии 0-9,*(короткое),#(короткое) - происходит фильтация вывода контактов по принципу T9 (как в CallCenter)
Долгое нажатие * приводит к сворачиванию NatICQ в фон с запретом разворота при приходе сообщений.
Долгое нажатие # приводит к сворачиванию NatICQ в фон с блокировкой клавиатуры


На экране состояния (экран с логотипом) в верхней строке индицируется текущий статус соединения (State):
0 - Сейчас соединение отсутствует (возможно связь оборвалась). Для установления соединения нажмите зеленую трубку.
1 - Устанавливается TCP-соединение, при появлении в строке ниже статуса сообщения "Try to login..." производится попытка подключения к серверу ICQ.
2 - TCP-соединение установлено, пакет логина послан.
3 - Установлено соединение с сервером ICQ, нормальный режим работы.

!!! Имеется функция автоконнекта при обрыве связи. 

После регистрации и получения нового UIN необходимо создать хотя бы одну группу контактов в контакт-листе, иначе невозможно будет добавлять/переименовывать контакты из NatICQ (вылетает сообщение "Other error!").

Настройка и установка GPRSD:

Необходимо скопировать файл GprsD в папку ZBin/Daemons и перезагрузить телефон. При этом в каталоге ZBin/etc будет создан файл GprsD.bcfg, который необходимо открыть и установить параметры сессии, такие как: APN, Username, Password для GPRS-Internet. Никаких WAP-профилей!!! 
Кроме того, необходимо установить "Enable GprsD On". После выхода, в течение минуты, будет установлена сессия. После этого можно пользоваться эльфами, работающими с сокетами. При последующих перезагрузках телефона сессия будет стартовать автоматически.








