Difference between revisions of "MicroXMPP"
From JaWiki (Jabber/XMPP wiki)
(1) |
(→Минималистический клиент '''uJabber''': ох, всё исправлять приходится...) |
||
Line 36: | Line 36: | ||
Из возможностей библиотеки особенно хочется отметить [[TLS]]. Для его поддержки требуется установить {{w|OpenSSL}} либо {{w|GnuTLS}}. Библиотека µXMPP задумана кроссплатформенной, пока проверена компиляция под {{w|MinGW}} и {{w|Cygwin}}. Готовая программа для [[Windows]] прилагается. | Из возможностей библиотеки особенно хочется отметить [[TLS]]. Для его поддержки требуется установить {{w|OpenSSL}} либо {{w|GnuTLS}}. Библиотека µXMPP задумана кроссплатформенной, пока проверена компиляция под {{w|MinGW}} и {{w|Cygwin}}. Готовая программа для [[Windows]] прилагается. | ||
− | == | + | == uJabber == |
− | Минималистический клиент | + | Минималистический клиент, иллюстрирующий работу библиотеки. |
− | + | === Сборка === | |
− | + | ||
− | + | ||
− | + | ||
− | Использование | + | * С установленной библиотекой {{w|OpenSSL}} всё должно собираться. Не забудьте выбрать ''Makefile'', соответствующий вашей системе. |
− | * Крайне рекомендуется запускать программу с | + | * Для библиотеки {{w|GnuTLS}} нужно поправить ''Makefile'', а также изменить имя подключаемого файла в ''sokio.c''. |
− | * Во время работы | + | * Для компиляции без поддержки SSL и TLS, нужно закомментировать строчку «#define SOCKIO_USE_TLS» в файле ''sokio.h''. |
− | * Чтобы пообщаться, | + | |
− | * Чтобы сменить статус, наберите | + | === Использование === |
− | * Чтобы получать сообщения о статусе других пользователей, их нужно добавить командой | + | |
− | * Всё, что не начинается с символов | + | * Крайне рекомендуется запускать программу с указанием конфигурационного файла (''config.xml'' или ''gtalk.xml''). Не забудьте прописать в нём данные вашего аккаунта. Если вы не хотите хранить в файле свой пароль, удалите элемент ''pass'', который находится в элементе ''/config/account''. |
− | * Помните, что любой ввод нужно завершать клавишей Enter. Иначе | + | * Во время работы uJabber создаёт лог-файл ''ujabber.log'', полезный при разборе полётов. Прежде чем его куда-либо отправлять, удалите оттуда ваш пароль. |
+ | * Чтобы пообщаться, выберите контакт командой «!''<jid>''», например, «!user@example.com». Ваши дальнейшие сообщения будут посланы ему. | ||
+ | * Чтобы сменить [[статус]], наберите «*''<status>'' ''<status message>''». Например, команда «*a I'm out» выставит статус away с сообщением «I'm out». | ||
+ | * Чтобы получать сообщения о статусе других пользователей, их нужно добавить командой «+''<jid>''». Удалить [[контакт]] можно командой «-''<jid>''». Заметьте, что команду «+''<jid>''» вам понадобится набрать дважды (сначала посылается запрос [[подписка|подписки]], затем отвечаем на запрос респондента). Это моя недоработка, я знаю (— ''прим. разработчика''). | ||
+ | * Всё, что не начинается с символов «!*+-», считается сообщением. Сообщение посылается контакту, выбранному командой «!''<jid>''». | ||
+ | * Помните, что любой ввод нужно завершать клавишей Enter. Иначе uJabber так и будет ждать вашего ввода, и его в конце концов отключит сервер. | ||
== Ссылки == | == Ссылки == | ||
* [http://xmppmicro.110mb.com/ Страничка проекта] | * [http://xmppmicro.110mb.com/ Страничка проекта] |
Revision as of 07:08, 18 May 2009
µXMPP | |
---|---|
Информация | |
Адрес: | http://xmppmicro.110mb.com/ |
Автор: | Дмитрий Григорьев |
Язык: | C |
Лицензия: | GPL v3 |
XML-парсер: | встроенный |
Реализация стандартов | |
Анализ JID-а: | да |
SASL-авторизация: | да (TLS, PLAIN) |
Регистрация компонента: | нет |
Ростер: | в разработке |
Data Forms: | нет |
Передача файлов: | нет |
Service Discovery: | нет |
Ad-Hoc команды: | нет |
Сжатие XML потока: | нет |
PubSub: | нет |
PEP: | нет |
Jingle: | нет |
Использование | |
Программы, использующие µXMPP |
В соответствии с принятыми в данной вики договорённостями, правильное название этой статьи — µXMPP.
Для ссылок сюда с других страниц
ЯВики используйте название
µXMPP
На других ресурсах
можно также давать ссылку
http://jawiki.ru/MicroXMPP
ЯВики используйте название
µXMPP
На других ресурсах
можно также давать ссылку
http://jawiki.ru/MicroXMPP
µXMPP — микроскопическая библиотека (скорее, даже набор функций), реализующая протокол XMPP (Jabber).
Проект обновляется понемногу, но регулярно.
От автора
Идея родилась несколько месяцев назад, когда мне приспичило написать свой Jabber-клиент. Скачав штук пять разных библиотек на С, я стал с ними разбираться, но никак не находил заветной функции «старт», которая бы подключилась к серверу с заданным идентификатором и паролем. Было решено, что проще всё сделать самому.
Возможности
На данный момент функциональность у библиотеки не слишком богатая. Клиент на её основе может подключиться к серверу (проверял jabber.org), отправить и принять сообщение. Однако и сам клиент невелик — менее 200 строк на C. Так что разобраться с ним несложно.
Из возможностей библиотеки особенно хочется отметить TLS. Для его поддержки требуется установить OpenSSL либо GnuTLS. Библиотека µXMPP задумана кроссплатформенной, пока проверена компиляция под MinGW и Cygwin. Готовая программа для Windows прилагается.
uJabber
Минималистический клиент, иллюстрирующий работу библиотеки.
Сборка
- С установленной библиотекой OpenSSL всё должно собираться. Не забудьте выбрать Makefile, соответствующий вашей системе.
- Для библиотеки GnuTLS нужно поправить Makefile, а также изменить имя подключаемого файла в sokio.c.
- Для компиляции без поддержки SSL и TLS, нужно закомментировать строчку «#define SOCKIO_USE_TLS» в файле sokio.h.
Использование
- Крайне рекомендуется запускать программу с указанием конфигурационного файла (config.xml или gtalk.xml). Не забудьте прописать в нём данные вашего аккаунта. Если вы не хотите хранить в файле свой пароль, удалите элемент pass, который находится в элементе /config/account.
- Во время работы uJabber создаёт лог-файл ujabber.log, полезный при разборе полётов. Прежде чем его куда-либо отправлять, удалите оттуда ваш пароль.
- Чтобы пообщаться, выберите контакт командой «!<jid>», например, «!user@example.com». Ваши дальнейшие сообщения будут посланы ему.
- Чтобы сменить статус, наберите «*<status> <status message>». Например, команда «*a I'm out» выставит статус away с сообщением «I'm out».
- Чтобы получать сообщения о статусе других пользователей, их нужно добавить командой «+<jid>». Удалить контакт можно командой «-<jid>». Заметьте, что команду «+<jid>» вам понадобится набрать дважды (сначала посылается запрос подписки, затем отвечаем на запрос респондента). Это моя недоработка, я знаю (— прим. разработчика).
- Всё, что не начинается с символов «!*+-», считается сообщением. Сообщение посылается контакту, выбранному командой «!<jid>».
- Помните, что любой ввод нужно завершать клавишей Enter. Иначе uJabber так и будет ждать вашего ввода, и его в конце концов отключит сервер.