Difference between revisions of "Noname Client"

From JaWiki (Jabber/XMPP wiki)
Jump to: navigation, search
(наведение порядка)
(Заполнение и дописывание информации)
Line 11: Line 11:
 
|    developer= [[User:Andreymal|AndreyMal]] <!-- разработчик -->
 
|    developer= [[User:Andreymal|AndreyMal]] <!-- разработчик -->
 
<!--        Характеристики  -->
 
<!--        Характеристики  -->
|          i18n= <!-- мультиязычность -->
+
|          i18n=нет <!-- мультиязычность -->
|      plugins= <!-- поддерживает ли он плагины -->
+
|      plugins=нет <!-- поддерживает ли он плагины -->
 
|  acc_profiles= <!-- профили аккаунтов -->
 
|  acc_profiles= <!-- профили аккаунтов -->
|    acc_multi= <!-- использование нескольких аккаунтов одновременно -->
+
|    acc_multi=нет <!-- использование нескольких аккаунтов одновременно -->
 
|        smiles= <!-- поддержка смайликов -->
 
|        smiles= <!-- поддержка смайликов -->
 
|      history= <!-- хранение истории сообщений -->
 
|      history= <!-- хранение истории сообщений -->
Line 20: Line 20:
 
|  filetransfer= <!-- способы передачи файлов -->
 
|  filetransfer= <!-- способы передачи файлов -->
 
|      privacy= <!-- списки приватности -->
 
|      privacy= <!-- списки приватности -->
|        disco= <!-- дискавери -->
+
|        disco=нет <!-- дискавери -->
 
|        adhoc= <!-- вызов Ad-Hoc команд -->
 
|        adhoc= <!-- вызов Ad-Hoc команд -->
 
|            rc= <!-- удаленное управление клиентом через Ad-hoc -->
 
|            rc= <!-- удаленное управление клиентом через Ad-hoc -->
|          muc= <!-- поддержка конференций -->
+
|          muc=да (частично) <!-- поддержка конференций -->
 
|    bookmarks= <!-- закладки -->
 
|    bookmarks= <!-- закладки -->
 
|      headline= <!-- новости -->
 
|      headline= <!-- новости -->
|        vcard= <!-- просмотр и редактирование Vcard -->
+
|        vcard=нет <!-- просмотр и редактирование Vcard -->
|          zip= <!-- сжатие трафика (XEP-0138) -->
+
|          zip=нет <!-- сжатие трафика (XEP-0138) -->
|        crypt= <!-- шифрование трафика -->
+
|        crypt=нет <!-- шифрование трафика -->
 
|          pgp= <!-- шифрование сообщений (GPG/PGP) -->
 
|          pgp= <!-- шифрование сообщений (GPG/PGP) -->
 
|        pubsub= <!-- работа с PubSub -->
 
|        pubsub= <!-- работа с PubSub -->
Line 42: Line 42:
 
== История ==
 
== История ==
  
В качестве основы в первых версиях использовался [[JXA]]. Первоначально программа называлась '''amj''' (AndreyMal Jabber client), но после гугления пришлось отказаться от этого названия, так как с ним могли быть проблемы.
+
В качестве основы используется [[JXA]]. Первоначально программа называлась '''amj''' (AndreyMal Jabber client), но после гугления пришлось отказаться от этого названия, так как с ним могли быть проблемы.
  
 
По мере разработки возникало всё больше проблем с интерфейсом. В то же время было большое желание реализовать как можно больше возможностей протокола. Было принято, наверно, безумное решение&nbsp;— сделать графический интерфейс всего лишь дополнением, без которого можно было бы обойтись. Клиент был переписан с нуля и стал консольным. В то же время его временно переименовали в '''noname''', а позже в '''noname Client'''. Нужно придумать название.
 
По мере разработки возникало всё больше проблем с интерфейсом. В то же время было большое желание реализовать как можно больше возможностей протокола. Было принято, наверно, безумное решение&nbsp;— сделать графический интерфейс всего лишь дополнением, без которого можно было бы обойтись. Клиент был переписан с нуля и стал консольным. В то же время его временно переименовали в '''noname''', а позже в '''noname Client'''. Нужно придумать название.
Line 55: Line 55:
  
 
* подключение <pre>connect <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]</pre>
 
* подключение <pre>connect <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]</pre>
* отправка [[информация о присутствии|информации о присутствии]] <pre>presence <получатель> <тип> [ <show> <текст> <приоритет> ]</pre> В качестве получателя и типа можно указать «none», {{fixme|и что это будет символизировать?}} {{fixme|что такое show?}}
+
 
* упрощённая форма предыдущей команды, может использоваться вообще без параметров <pre>status [ <show> <текст> <приоритет> <caps> <ver> ]</pre> {{fixme|что такое show?}} {{fixme|что такое caps?}} {{fixme|что такое ver?}}
+
* отправка [[информация о присутствии|информации о присутствии]] <pre>presence <получатель> <тип> [ <show> <текст> <приоритет> ]</pre>
 +
В качестве получателя и типа можно указать «none», чтобы отправить информацию о присутствии без указания получателя и типа соответственно.
 +
 
 +
* упрощённая форма предыдущей команды, может использоваться вообще без параметров <pre>status [ <show> <текст> <приоритет> <название_клиента> <версия_клиента> ]</pre>  
 +
** show - тип статуса: '''online''' - онлайн, '''chat''' - готов поболтать, '''away''' - отошёл, '''xa''' - недоступен, '''dnd''' - не беспокоить.
 +
 
 
* отключение <pre>disconnect</pre>
 
* отключение <pre>disconnect</pre>
* отправка сообщения <pre>message <получатель> <тип> <подтверждение> <ID> <текст></pre> Подтверждение (0 или 1) и ID в настоящее время игнорируются. В качестве типа можно указать «none», {{fixme|и что это будет символизировать?}}
+
 
 +
* отправка сообщения <pre>message <получатель> <тип> <подтверждение> <ID> <текст></pre> Подтверждение (0 или 1) и ID в настоящее время игнорируются. В качестве типа можно указать «none», чтобы отправить сообщение без указания его типа.
 +
** В параметре &laquo;тип&raquo; указывается тип письма: '''normal''' - обычное, '''chat''' - чат, '''groupchat''' - для конференции.
 +
 
 
* чистка консоли (работает с глюками) <pre>clear</pre>
 
* чистка консоли (работает с глюками) <pre>clear</pre>
 +
 +
* Запрос списка контактов <pre>getroster</pre>
 +
 
* управление графическим интерфейсом <pre>gui on|off|min</pre> Так как его ещё нету, можно не использовать.
 
* управление графическим интерфейсом <pre>gui on|off|min</pre> Так как его ещё нету, можно не использовать.
* список всех команд {{fixme|или справка по конкретной команде}} <pre>help [ <команда> ]</pre>
+
 
 +
* список всех команд, а также справка по конкретной команде <pre>help [ <команда> ]</pre>
 +
 
 +
* выход <pre>exit</pre>
  
 
=== Интерфейс ===
 
=== Интерфейс ===
Line 70: Line 84:
  
 
Без сжатия, без шифрования, пароль открытым текстом. Зато быстро.
 
Без сжатия, без шифрования, пароль открытым текстом. Зато быстро.
 +
 +
После подключения необходимо отправить статус (команда '''status''').
 +
 +
== Конференции ==
 +
 +
Подключение:
 +
presence комната/ник available
 +
 +
Пример:
 +
presence support@conference.jabber.ru/Vasya available chat А_вот_и_я! 5
 +
 +
Сообщение в конференцию:
 +
message комната groupchat 0 id текст
 +
 +
Пример:
 +
message support@conference.jabber.ru groupchat 0 id !?? bots
 +
 +
Отключиться:
 +
presence комната/ник unavailable
  
 
== Загрузить ==
 
== Загрузить ==
  
 
Скачать можно только [http://lek-ded.narod.ru/files/noname.jar отсюда] (14кб). Но стоит ли?..
 
Скачать можно только [http://lek-ded.narod.ru/files/noname.jar отсюда] (14кб). Но стоит ли?..

Revision as of 14:27, 9 June 2010

В соответствии с принятыми в данной вики договорённостями, правильное название этой статьи — noname Client.
noname Client
Информация
Язык: Java
ОС/платформа: Java ME
Библиотека: JXA
Лицензия: GPL
Разработчик: AndreyMal
Характеристики
Мультиязычность: нет
Поддержка плагинов: нет
Несколько аккаунтов одновременно: нет
Поддержка стандартов
Обзор сервисов: нет
Конференции: да (частично)
Правка vCard: нет
Сжатие трафика: нет
Шифрование трафика: нет


noname Client — непонятно зачем и для чего созданный консольный (ещё) Jabber-клиент, разрабатываемый AndreyMal.

История

В качестве основы используется JXA. Первоначально программа называлась amj (AndreyMal Jabber client), но после гугления пришлось отказаться от этого названия, так как с ним могли быть проблемы.

По мере разработки возникало всё больше проблем с интерфейсом. В то же время было большое желание реализовать как можно больше возможностей протокола. Было принято, наверно, безумное решение — сделать графический интерфейс всего лишь дополнением, без которого можно было бы обойтись. Клиент был переписан с нуля и стал консольным. В то же время его временно переименовали в noname, а позже в noname Client. Нужно придумать название.

Возможности

Так как разработка только-только началась, возможности ещё малы. В данный момент только то, что было в библиотеке JXA. И ещё отправка уведомления о доставке сообщения. Со времён amj его коде осталась добавленная возможность получения закладок и подключения к конференции, но в noname Client они ещё не использованы.

Команды

В квадратных скобках указаны необязательные параметры

  • подключение
    connect <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]

В качестве получателя и типа можно указать «none», чтобы отправить информацию о присутствии без указания получателя и типа соответственно.

  • упрощённая форма предыдущей команды, может использоваться вообще без параметров
    status [ <show> <текст> <приоритет> <название_клиента> <версия_клиента> ]
    • show - тип статуса: online - онлайн, chat - готов поболтать, away - отошёл, xa - недоступен, dnd - не беспокоить.
  • отключение
    disconnect
  • отправка сообщения
    message <получатель> <тип> <подтверждение> <ID> <текст>
    Подтверждение (0 или 1) и ID в настоящее время игнорируются. В качестве типа можно указать «none», чтобы отправить сообщение без указания его типа.
    • В параметре «тип» указывается тип письма: normal - обычное, chat - чат, groupchat - для конференции.
  • чистка консоли (работает с глюками)
    clear
  • Запрос списка контактов
    getroster
  • управление графическим интерфейсом
    gui on|off|min
    Так как его ещё нету, можно не использовать.
  • список всех команд, а также справка по конкретной команде
    help [ <команда> ]
  • выход
    exit

Интерфейс

Две формы: консоль (текст) и окно ввода. Есть возможность подключить GUI, но ему ещё ничего не передаётся, поэтому это бесполезно. Так как используются только стандартные элементы интерфейса, возможно, при компиляции под MIDP1 можно использовать на чёрно-белых телефонах.

Подключение

Без сжатия, без шифрования, пароль открытым текстом. Зато быстро.

После подключения необходимо отправить статус (команда status).

Конференции

Подключение:

presence комната/ник available

Пример:

presence support@conference.jabber.ru/Vasya available chat А_вот_и_я! 5

Сообщение в конференцию:

message комната groupchat 0 id текст

Пример:

message support@conference.jabber.ru groupchat 0 id !?? bots

Отключиться:

presence комната/ник unavailable

Загрузить

Скачать можно только отсюда (14кб). Но стоит ли?..