Noname Client
noname Client | |
---|---|
Информация | |
Язык: | Java |
ОС/платформа: | Java ME |
Библиотека: | JXA |
Лицензия: | GPL |
Разработчик: | AndreyMal |
Характеристики | |
Мультиязычность: | нет |
Поддержка плагинов: | нет |
Несколько аккаунтов одновременно: | нет |
Поддержка стандартов | |
Обзор сервисов: | да |
Конференции: | да (частично) |
Закладки: | да |
Правка vCard: | нет |
Сжатие трафика: | нет |
Шифрование трафика: | нет |
noname Client — непонятно зачем и для чего созданный консольный (ещё) Jabber-клиент, разрабатываемый AndreyMal.
Contents
История
В качестве основы используется JXA. Первоначально программа называлась amj (AndreyMal Jabber client), но после гугления пришлось отказаться от этого названия, так как с ним могли быть проблемы.
По мере разработки возникало всё больше проблем с интерфейсом. В то же время было большое желание реализовать как можно больше возможностей протокола. Было принято, наверно, безумное решение — сделать графический интерфейс всего лишь дополнением, без которого можно было бы обойтись. Клиент был переписан с нуля и стал консольным. В то же время его временно переименовали в noname, а позже в noname Client. Нужно придумать название.
Возможности
Так как разработка только-только началась, возможности ещё малы. В данный момент только то, что было в библиотеке JXA. И ещё отправка уведомления о доставке сообщения. Со времён amj его коде осталась добавленная возможность получения закладок и подключения к конференции, но в noname Client они ещё не использованы.
Команды
В квадратных скобках указаны необязательные параметры
- подключение
connect <имя> <хост> <пароль> [ <адрес сервера> <порт> <ресурс> ]
- регистрация
register <имя> <хост> <пароль> [ <адрес сервера> <порт> ]
- отправка информации о присутствии
presence <получатель> <тип> [ <show> <текст> <приоритет> ]
В качестве получателя и типа можно указать «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
- Запрос списка контактов
getroster
- Запрос закладок
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кб).