Editing Noname Client

From JaWiki (Jabber/XMPP wiki)
Jump to: navigation, search

Warning: The database has been locked for maintenance, so you will not be able to save your edits right now. You may wish to copy and paste your text into a text file and save it for later.

The administrator who locked it offered this explanation: MediaWiki upgrading

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
{{RealTitle|noname Client|noplate=1}}
+
<b>noname Client</b> - непонятно зачем и для чего созданный консольный (ещё) [[Jabber]]-клиент, разрабатываемый [[USER:Andreymal|AndreyMal]].
{{Client
+
|          name= noname Client <!-- название -->
+
|          logo= <!-- логотип -->
+
<!--      Общая информация          -->
+
|          url=[http://lek.andreymal.org/jabber/client/ lek-ded.narod.ru] <!-- сайт -->
+
|      language= {{lang|cl|Java}} <!-- язык -->
+
|            os= {{OS|cl|Java ME}} <!-- ОС или платформа -->
+
|      library= {{lib|JXA}} <!-- jabber-библиотека -->
+
|      license= {{GPL}} <!-- лицензия -->
+
|    developer= [[User:Andreymal|andreymal]] <!-- разработчик -->
+
<!--        Характеристики  -->
+
|          i18n=нет <!-- мультиязычность -->
+
|      plugins=нет <!-- поддерживает ли он плагины -->
+
|  acc_profiles= <!-- профили аккаунтов -->
+
|    acc_multi=да <!-- использование нескольких аккаунтов одновременно -->
+
|        smiles= <!-- поддержка смайликов -->
+
|      history= <!-- хранение истории сообщений -->
+
<!--        Поддержка стандартов  -->
+
|  filetransfer= <!-- способы передачи файлов -->
+
|      privacy= <!-- списки приватности -->
+
|        disco=да <!-- дискавери -->
+
|        adhoc= <!-- вызов Ad-Hoc команд -->
+
|            rc= <!-- удаленное управление клиентом через Ad-hoc -->
+
|          muc=да (частично) <!-- поддержка конференций -->
+
|    bookmarks=да <!-- закладки -->
+
|      headline= <!-- новости -->
+
|        vcard=нет <!-- просмотр и редактирование Vcard -->
+
|          zip=нет <!-- сжатие трафика (XEP-0138) -->
+
|        crypt=нет <!-- шифрование трафика -->
+
|          pgp= <!-- шифрование сообщений (GPG/PGP) -->
+
|        pubsub= <!-- работа с PubSub -->
+
|          pep= <!-- получение и отправка PEP событий -->
+
|    d_register= <!-- регистрация на транпортах и т.д. (XEP-0077) -->
+
|      d_search= <!-- поиск в JUD-ах, транпортах и т.д. (XEP-0055) -->
+
|          voip= <!-- голосовое и видеообщение -->
+
|        jingle= <!-- поддержка протокола Jingle -->
+
}}
+
  
<b>noname Client</b>&nbsp;— консольный [[Jabber]]-[[клиент]], разрабатывавшийся [[USER:Andreymal|andreymal]].
+
== История ==
  
=== Команды ===
+
В марте 2010 года 14-летний мальчик решил поучить [[Java ME|J2ME]]. Точнее, решил ещё в конце 2009, но тогда он не разобрался. А сейчас разобрался, и его первой программой стала [http://lek-ded.narod.ru/j2me/ Расписание уроков].
  
В квадратных скобках указаны необязательные параметры
+
После ещё пары месяцев изучения мальчик решил замахнуться на создание Jabber-[[Клиент|клиента]]. В качестве основы использовался [[JXA]]. Первоначально программа называлась amj (расшифровывается ак AndreyMal Jabber Client), но после гугления пришлось отказаться от этого названия, [http://amj.ru/ так как с ним могли быть проблемы].
  
* добавление аккаунта <pre>addacc <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]</pre>
+
По мере разработки возникало всё больше проблем с интерфейсом. В то же время было большое желание реализовать как можно больше возможностей проткола. Было принято, наверно, безумное решение: сделать GUI всего лишь дополнением, без которого можно было бы обойтись. Клиент был переписан с нуля и стал консольным. В то же время его временно переименовали в noname, а позже в noname Client. Нужно придумать название.
  
** В ответе будет указан номер нового аккаунта.
+
== Возможности ==
  
* удаление аккаунта <pre>delacc <номер_аккаунта></pre>
+
Так как разработка только-только началась, возможности ещё малы. В данный момент только то, что было в библиотеке JXA. И ещё отправка уведомления о доставке сообщения. Со времён amj его коде осталась добавленная возможность получения закладок и подключения к конференции, но в noname Client они ещё не использованы.
  
* подключение <pre>connect <номер_аккаунта></pre>
+
=== Команды ===
  
* регистрация <pre>register <имя> <хост> <пароль> [ <адрес сервера> <порт> ]</pre>
+
(жирным выделенны обязательные, или none - вместо параметра можно написать "none")
  
* отправка [[информация о присутствии|информации о присутствии]] <pre>presence <номер_аккаунта> <получатель> <тип> [ <show> <текст> <приоритет> ]</pre>
+
* connect <b><имя> <хост> <пароль></b> <сервер/ip> <порт> <ресурс> - подключение
В качестве получателя и типа можно указать «none», чтобы отправить информацию о присутствии без указания получателя и типа соответственно.
+
  
* упрощённая форма предыдущей команды, может использоваться вообще без параметров (кроме номера аккаунта) <pre>status <номер_аккаунта> [ <show> <текст> <приоритет> <название_клиента> <версия_клиента> ]</pre>
+
* presence <b><кому или none> <тип или none></b> <show> <текст> <приоритет> - отправка презенса
** show - тип статуса: '''online''' - онлайн, '''chat''' - готов поболтать, '''away''' - отошёл, '''xa''' - недоступен, '''dnd''' - не беспокоить.
+
  
* отключение <pre>disconnect <номер_аккаунта></pre>
+
* status <show> <текст> <приоритет> <caps> <ver> - одна из разновидностей презенса. Может использоваться вообще без параметров.
  
* отправка сообщения <pre>message <номер_аккаунта> <получатель> <тип> <подтверждение> <ID> <текст></pre> Подтверждение (0 или 1) и ID в настоящее время игнорируются. В качестве типа можно указать «none», чтобы отправить сообщение без указания его типа.
+
* disconnect - отключение
** В параметре &laquo;тип&raquo; указывается тип письма: '''normal''' - обычное, '''chat''' - чат, '''groupchat''' - для конференции.
+
  
* Диско <pre>disco <номер_аккаунта> <получатель> [ <info или items> <ID> ]</pre>
+
* message <b><кому> <тип или none> <подтверждение> <ID> <текст></b> - отправка сообщения. ПОдтверждение (0 или 1) и ID в данный момент игнорируются.
** info - зпарос информации, items - запрос списка сервисов.
+
** Можно дискаверить также контакты (info) и конференции (items).
+
  
* чистка консоли (работает с глюками) <pre>clear</pre>
+
* clear - чистка консоли, работает с глюками.
  
* Запрос [[Ростер|списка контактов]] <pre>getroster <номер_аккаунта></pre>
+
* gui <b><on/off/min></b> - управление GUI. Так как его ещё нету, можно не использовать.
  
* Запрос закладок <pre>getbook <номер_аккаунта></pre>
+
* help <команда> - список всех команд.
 
+
* Удаление подключенного аккаунта <pre>removeacc <номер_аккаунта></pre>
+
 
+
* управление графическим интерфейсом <pre>gui on|off|min</pre>
+
 
+
* список всех команд, а также справка по конкретной команде (может работать некорректно) <pre>help [ <команда> ]</pre>
+
 
+
* выход <pre>exit</pre>
+
  
 
=== Интерфейс ===
 
=== Интерфейс ===
  
Две формы: консоль (текст) и окно ввода. Есть возможность подключить GUI. Так как используются только стандартные элементы интерфейса (без внешнего GUI), возможно, можно использовать на чёрно-белых телефонах.
+
Две формы: консоль (текст) и окно ввода. Есть возможность подключить GUI, но ему ещё ничего не передаётся, поэтому это бесполезно. Так как используются только стандартные элементы интерфейса, возможно, при компиляции под MIDP1 можно использовать на чёрно-белых телефонах.
  
 
=== Подключение ===
 
=== Подключение ===
  
 
Без сжатия, без шифрования, пароль открытым текстом. Зато быстро.
 
Без сжатия, без шифрования, пароль открытым текстом. Зато быстро.
 
После подключения необходимо отправить статус (команда '''status <номер_аккаунта>''').
 
 
== Управление подпиской ==
 
 
Так как подписка управляется через presence, можно использовать следующие команды:
 
 
* Запрос подписки <pre>presence <номер_аккаунта> <JID> subscribe</pre>
 
 
* Дать подписку <pre>presence <номер_аккаунта> <JID> subscribed</pre>
 
 
* Отписаться <pre>presence <номер_аккаунта> <JID> unsubscribe</pre>
 
 
== Конференции ==
 
 
Подключение:
 
presence номер_аккаунта комната/ник available
 
 
Пример:
 
presence 0 support@conference.jabber.ru/Vasya available chat А_вот_и_я! 5
 
 
Сообщение в конференцию:
 
message номер_аккаунта комната groupchat 0 id текст
 
 
Пример:
 
message 0 support@conference.jabber.ru groupchat 0 id !?? bots
 
 
Отключиться:
 
presence номер_аккаунта комната/ник unavailable
 
  
 
== Загрузить ==
 
== Загрузить ==
  
Скачать можно отсюда: [http://lek.andreymal.org/jabber/client/noname002.jar JAR] (15кб).
+
Скачать можно только [http://lek-ded.narod.ru/files/noname.jar отсюда] (14кб). Но стоит ли?..

Please note that all contributions to JaWiki (Jabber/XMPP wiki) may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see JaWiki (Jabber/XMPP wiki):Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)