Difference between revisions of "Noname Client"

From JaWiki (Jabber/XMPP wiki)
Jump to: navigation, search
(Новые возможности)
(Новые возможности и ссылка на исходники)
Line 55: Line 55:
  
 
* подключение <pre>connect <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]</pre>
 
* подключение <pre>connect <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]</pre>
 +
 +
* регистрация <pre>register <имя> <хост> <пароль> [ <адрес сервера> <порт> ]</pre>
  
 
* отправка [[информация о присутствии|информации о присутствии]] <pre>presence <получатель> <тип> [ <show> <текст> <приоритет> ]</pre>
 
* отправка [[информация о присутствии|информации о присутствии]] <pre>presence <получатель> <тип> [ <show> <текст> <приоритет> ]</pre>
Line 67: Line 69:
 
** В параметре &laquo;тип&raquo; указывается тип письма: '''normal''' - обычное, '''chat''' - чат, '''groupchat''' - для конференции.
 
** В параметре &laquo;тип&raquo; указывается тип письма: '''normal''' - обычное, '''chat''' - чат, '''groupchat''' - для конференции.
  
* Диско <pre><получатель> [ <info или items> <ID> ]</pre>
+
* Диско <pre>disco <получатель> [ <info или items> <ID> ]</pre>
 
** info - зпарос информации, items - запрос списка сервисов.
 
** info - зпарос информации, items - запрос списка сервисов.
 
** Можно дискаверить также контакты (info) и конференции (items).
 
** Можно дискаверить также контакты (info) и конференции (items).
Line 73: Line 75:
 
* чистка консоли (работает с глюками) <pre>clear</pre>
 
* чистка консоли (работает с глюками) <pre>clear</pre>
  
* Запрос списка контактов <pre>getroster</pre>
+
* Запрос [[Ростер|списка контактов]] <pre>getroster</pre>
  
 
* Запрос закладок <pre>getbook</pre>
 
* Запрос закладок <pre>getbook</pre>
 +
 +
* Удаление подключенного аккаунта <pre>removeacc</pre>
  
 
* управление графическим интерфейсом <pre>gui on|off|min</pre> Так как его ещё нету, можно не использовать.
 
* управление графическим интерфейсом <pre>gui on|off|min</pre> Так как его ещё нету, можно не использовать.
Line 85: Line 89:
 
=== Интерфейс ===
 
=== Интерфейс ===
  
Две формы: консоль (текст) и окно ввода. Есть возможность подключить GUI. Так как используются только стандартные элементы интерфейса, возможно, можно использовать на чёрно-белых телефонах.
+
Две формы: консоль (текст) и окно ввода. Есть возможность подключить GUI. Так как используются только стандартные элементы интерфейса (без внешнего GUI), возможно, можно использовать на чёрно-белых телефонах.
  
 
=== Подключение ===
 
=== Подключение ===
Line 124: Line 128:
 
== Загрузить ==
 
== Загрузить ==
  
Скачать можно только [http://lek-ded.narod.ru/files/noname.jar отсюда] (22кб). Но стоит ли?..
+
Скачать можно только отсюда: [http://lek-ded.narod.ru/files/noname.jar JAR] (23кб) или [http://lek-ded.narod.ru/files/noname.zip ZIP] плюс исходные коды и небольшая справка для разработчиков (37кб).

Revision as of 18:58, 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 <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]
  • регистрация
    register <имя> <хост> <пароль> [ <адрес сервера> <порт> ]

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

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

Интерфейс

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

Подключение

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

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

Управление подпиской

Так как подписка управляется через presence, можно использовать следующие команды:

  • Запрос подписки
    presence <JID> subscribe
  • Дать подписку
    presence <JID> subscribed
  • Отписаться
    presence <JID> unsubscribe
  • Забрали подписку
    presence <JID> unsubscribed

Конференции

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

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

Загрузить

Скачать можно только отсюда: JAR (23кб) или ZIP плюс исходные коды и небольшая справка для разработчиков (37кб).