Gajim, jabber-клиент

Настройка интернет-соединений, популярных интернет-мессенджеров, браузеров, firewall -ов
Ответить
Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Gajim, jabber-клиент

Сообщение nk » 27 ноя 2014, 21:01

Gajim (a Jabber/XMPP client)
Изображение
  • Цель Gajim — предоставить полнофункциональный и простой в использовании jabber-клиент.
  • Gajim хорошо работает в среде GNOME, но не требует её для работы.
  • Лицензия: Gajim выпущен на условиях Стандартной общественной лицензии (GNU General Public License).
  • Сайт: https://gajim.org

Как зайти в jabber-конференцию?:
  • Меню: Действия - Войти в комнату - Войти в новую комнату
  • комната: linuxhub
  • сервер: linuxhub@conference.xmpp.ru
  • Присоединиться

Загрузка и установка:
  • Release: Информация по различным дистрибутивам на сайте gajim
  • Devel (deb-пакеты): Для пользователей debian , на сайте заявлено:
    Если вы используете нестабильную ветвь Debian, сделайте apt-get install gajim
    Так же обновляется ежедневный пакет. Чтобы использовать его, удалите gajim (apt-get remove gajim), добавьте эту строку к вашему /etc/apt/sources.list:
    deb ftp://ftp.gajim.org/debian unstable main
    и установите его с помощью apt-get install gajim-nightly. Вы можете получить GPG ключ для этого пакета, установив gajim-dev-keyring из этого же репозитория. Для этого выполните apt-get install gajim-dev-keyring.
Ubuntu / Mint / Debian - Установка gajim-nightly:
  • На данный момент пакет (0.16 и даже разрабатываемая hg-версия) у меня прекрасно работает на mint-17 / ubuntu-14.04-lts, как-никак программа на python'е, расскажу как я сделал, прописав реп и что бы обновляться можно было, тем самым будет всегда последняя версия gajim у Вас. Вернее, покажу в командах:

    Код: Выделить всё

    echo "" >> /etc/apt/sources.list.d/my.list
    echo "### gajim-nightly" >> /etc/apt/sources.list.d/my.list
    echo "deb ftp://ftp.gajim.org/debian unstable main"  >> /etc/apt/sources.list.d/my.list
    apt-get update
    apt-get install --force-yes -y gajim-dev-keyring 
    А дальше по желанию ставим
    • разрабатываемую версию: apt-get install gajim-nightly
    • или релизную: apt-get install gajim
    Вывод того что получилось и доказательство того что работает:

    Код: Выделить всё

    $ aptitude versions gajim
    Пакет gajim:                                       
    p   0.15.4-2                                              trusty                             500 
    i   0.16-1                                                unstable                           500 
    
    Пакет gajim-dev-keyring:
    i   2007.06.12                                            unstable                           500 
    
    Пакет gajim-nightly:
    p   20141127-1                                            unstable                           500
    
    
    $ aptitude show gajim
    Пакет: gajim                                     
    Состояние: установлен
    Автоматически установлен: нет
    Версия: 0.16-1
    Приоритет: необязательный
    Раздел: net
    Сопровождающий: Yann Leboulanger <asterix@lagaule.org>
    Архитектура: all
    Размер в распакованном виде: 13,5 M
    Зависимости: python:any (>= 2.6.6-7~), python-gtk2 (>= 2.22.0), dnsutils, python-nbxmpp
    Рекомендует: dbus, python-dbus, notification-daemon, python-openssl (>= 0.12), python-crypto,
                            python-pyasn1
    Предлагает: python-gconf, python-gnome2, nautilus-sendto, avahi-daemon, python-avahi,
                          network-manager, libgtkspell0, aspell-en, python-gnomekeyring,
                          gnome-keyring, python-kerberos (>= 1.1), texlive-latex-base, dvipng,
                          python-farstream, gstreamer0.10-plugins-ugly, python-pycurl,
                          python-gupnp-igd
    Описание: Jabber client written in PyGTK
     Gajim is a Jabber client. It has a tabbed user interface with normal chats, group chats, and has
     many features such as, TLS, GPG, SSL, multiple accounts, avatars, file transfers, audio/video
     call, D-Bus and Metacontacts.
    Сайт: http://www.gajim.org
Slackware / SBo - Установка (сборка) gajim с зависимостями для pyOpenSSL:
  • Slackware-14.1_SBo - gajim-0.16.5

    Код: Выделить всё

    # sbopkg -Bki "pysetuptools pycparser cffi six enum34 pyasn1 cryptography pycrypto python-gnupg pygpgme docutils "
    # sbopkg -Bki "pyOpenSSL python-nbxmpp gajim "
  • Slackware-14.2_SBo - gajim-0.16.6 (проверялось на 0.16.7)

    Код: Выделить всё

    # sbopkg -Bki "enum34 ipaddress pyasn1 idna asn1crypto pycparser cffi six pyparsing packaging "
    # sbopkg -Bki "cryptography pyOpenSSL python-nbxmpp pycrypto "
    # sbopkg -Bki "gajim "

Аватара пользователя
ZEN
Администратор
Сообщения: 1357
Зарегистрирован: 27 сен 2012, 18:23
Темы: 208
Откуда: Украина, Одесса
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение ZEN » 27 ноя 2014, 22:24

класс! Добавлю ссылку в тему "Мы в jabber"
бог создал труд и обезьяну
чтоб получился человек
а вот пингвина он не трогал
тот сразу вышел хорошо

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение nk » 29 ноя 2014, 19:30

• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение nk » 07 май 2015, 10:08

Обзор данного клиента на wiki.jrudevels.org
http://wiki.jrudevels.org/Gajim
• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение nk » 14 май 2015, 13:13

Полезные советы и FAQ


Как включить проверку орфографии?
Правка - Параметры - Вкладка: Общие - галку на Выделять слова с опечатками

Как отредактировать историю?
Команда gajim-history-manager или Действия - Дополнительно - Менеджер истории и удаляем кнопкой Del переписку или отдельные сообщения

Не удается подключить учетку на gmail.com. Что делать?
http://trac.gajim.org/wiki/GajimGoogleTalk

Как включить одноконный режим, что бы ростер, переписка были в одном окне?
Правка - Параметры - вкладка Общие: Настройки окна чата - Поведение окна: Все в одном окне

Как скрыть баннер/полосу с информацией о теме в окне комнаты?
Правка - Параметры - Вкладка: Расширенные - Открыть: Расш. редактор настроек - hide_groupchat_banner - делаем: Активно

Как сделать что бы иконка в трее появлялась только при получении новых сообщений Вам и упоминаний Вашего ника в конференции?
Правка - Параметры - Вкладка: Расширенные - Открыть: Расш. редактор настроек -
trayicon: on_event
trayicon_notification_on_event: Активно
и по желанию можно отключить мигающую иконку в трее и что бы вместо ее была иконка письма
trayicon_blink: Неактивно

Автоматически перезаходить в конференцию после кика
(подобное реализовано в vacuum-im и даже есть соотв.пункт меню)
Правка - Параметры - Вкладка: Расширенные - Открыть: Расш. редактор настроек - muc_autorejoin_on_kick - Активно

При запуске gajim вылазит, окно ругаещееся на avahi, можно ли убрать?
В настройках Учетной записи, там локальный, попробуйте отключить локальный;
можно еще avahi поставить и это бы окно пропало, но это как уже Вы хотите в своем дистре, так же неисключено, что он как зависимость мог подхватиться и установиться вас не спросив

Можно ли сделать область ввода текста двухстрочной?
Есть специальный плагин для этого дела: message box size
*там что бы применилось может потребовать вкл-выкл модуль, просто такое замечание на всякий случай

Упоминание/Обращение к другим членам в конференции
Добавление ника по клику на нем для этого есть специальный плагин: clicable nicknames ;
Еще можно обратиться к конкретному собеседнику так: ПКМ по области ввода сообщения и там Вставить ник;
И конечно же стандартный способ: вводим первую букву или первые две буквы ника и для автозаполнения нажимаем Tab
• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение nk » 30 май 2015, 00:27

Модули

В последних версиях gajim появилась возможность подключения различных модулей.
Для это проходим в Меню:Правка - Модули и там подключаем желаемый нам плагин/аддон/модуль

Изображение
Примеры модулей, которые можно подключить:
  • Clients icon - показывает иконки клиентов собеседников в окне конференции и ростере
  • Url image preview - делает предпросмотр картинки в окне переписки, если ссылка указывает на изображение
• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение nk » 06 окт 2016, 19:58

Где хранятся настройки:

Код: Выделить всё

~/.config/gajim/
~/.local/share/gajim/
~/.cache/gajim/
Пояснения:
  • ~/.config/gajim/config/ и ~/.config/gajim/pluginsconfig/ - здесь хранятся пользовательские настройки для gajim и отдельных plugin'ов его же
  • ~/.local/share/gajim/plugins/ - сюда загружаются сами plugin'ы, установленные пользователем через gajim
  • ~/.local/share/gajim/logs.db - файл (БД) в который пишутся логи переписки и которые можно просмотреть либо через сам gajim либо через отдельное окно gajim-history-manager
  • ~/.cache/gajim/ - кэш различных аватаров, vcard'ов загруженных при использовании gajim
PS: a standard procedure to backup one's Gajim messaging history
• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение nk » 23 окт 2016, 17:56

Для тех у кого проблемы с закладками (bookmarks) на jabber.ru - не удаляются, не изменяются после перезапуска
в hg вышло обновление исправляющее данную проблему: Store optional fields correctly in Bookmarks
Причины, предположение и обсуждение здесь: https://conference.gajim.org:5281/muc_l ... /#21:42:29 (англ.яз.)

В версии 0.16.6 данного исправления нет, только в 0.16.7 будет,
но на старую версию прекрасно можно наложить данный патч: patch -Np1 --verbose -i bookmark.patch
https://upload.jabber.at/http_upload/YI ... mark.patch или же качайте и собирайте версию из hg/mercurial
bookmark.patchПоказать

Код: Выделить всё

# HG changeset patch
# User lovetox <forenjunkie@chelo.at>
# Date 1477082450 -7200
#      Fri Oct 21 22:40:50 2016 +0200
# Branch gajim_0.16
# Node ID e34411e66704ae89b4cf2dce801b92ec37121772
# Parent  738aa5082b6a8daca2aa550f882406cbe01ebb97
Store optional fields correctly in Bookmarks

diff -r 738aa5082b6a -r e34411e66704 src/common/connection.py
--- a/src/common/connection.py	Sun Oct 16 22:40:41 2016 +0200
+++ b/src/common/connection.py	Fri Oct 21 22:40:50 2016 +0200
@@ -2473,7 +2473,8 @@
         """
         if not gajim.account_is_connected(self.name):
             return
-        if self.pubsub_supported and storage_type != 'xml':
+        if self.pubsub_supported and self.pubsub_publish_options_supported \
+                and storage_type != 'xml':
             self.send_pb_retrieve('', 'storage:bookmarks')
             # some server (ejabberd) are so slow to answer that we request via XML
             # if we don't get answer in the next 30 seconds
@@ -2488,6 +2489,7 @@
         storage_type can be set to 'pubsub' or 'xml' so store in only one method
         else it will be stored on both
         """
+        NS_GAJIM_BM = 'xmpp:gajim.org/bookmarks'
         if not gajim.account_is_connected(self.name):
             return
         iq = nbxmpp.Node(tag='storage', attrs={'xmlns': 'storage:bookmarks'})
@@ -2495,8 +2497,9 @@
             iq2 = iq.addChild(name = "conference")
             iq2.setAttr('jid', bm['jid'])
             iq2.setAttr('autojoin', bm['autojoin'])
-            iq2.setAttr('minimize', bm['minimize'])
             iq2.setAttr('name', bm['name'])
+            iq2.setTag('minimize', namespace=NS_GAJIM_BM). \
+                setData(bm['minimize'])
             # Only add optional elements if not empty
             # Note: need to handle both None and '' as empty
             #   thus shouldn't use "is not None"
@@ -2505,7 +2508,8 @@
             if bm.get('password', None):
                 iq2.setTagData('password', bm['password'])
             if bm.get('print_status', None):
-                iq2.setTagData('print_status', bm['print_status'])
+                iq2.setTag('print_status', namespace=NS_GAJIM_BM). \
+                    setData(bm['print_status'])
 
         if self.pubsub_supported and self.pubsub_publish_options_supported and \
         storage_type != 'xml':
diff -r 738aa5082b6a -r e34411e66704 src/common/connection_handlers_events.py
--- a/src/common/connection_handlers_events.py	Sun Oct 16 22:40:41 2016 +0200
+++ b/src/common/connection_handlers_events.py	Fri Oct 21 22:40:50 2016 +0200
@@ -508,29 +508,41 @@
 class BookmarksHelper:
     def parse_bookmarks(self):
         self.bookmarks = []
+        NS_GAJIM_BM = 'xmpp:gajim.org/bookmarks'
         confs = self.storage_node.getTags('conference')
         for conf in confs:
             autojoin_val = conf.getAttr('autojoin')
-            if autojoin_val is None: # not there (it's optional)
+            if not autojoin_val:  # not there (it's optional)
                 autojoin_val = False
-            minimize_val = conf.getAttr('minimize')
-            if minimize_val is None: # not there (it's optional)
-                minimize_val = False
-            print_status = conf.getTagData('print_status')
-            if not print_status:
-                print_status = conf.getTagData('show_status')
+            minimize_val = conf.getTag('minimize', namespace=NS_GAJIM_BM)
+            if not minimize_val:  # not there, try old Gajim behaviour
+                minimize_val = conf.getAttr('minimize')
+                if not minimize_val:  # not there (it's optional)
+                    minimize_val = False
+            else:
+                minimize_val = minimize_val.getData()
+
+            print_status = conf.getTag('print_status', namespace=NS_GAJIM_BM)
+            if not print_status:  # not there, try old Gajim behaviour
+                print_status = conf.getTagData('print_status')
+                if not print_status:  # not there, try old Gajim behaviour
+                    print_status = conf.getTagData('show_status')
+            else:
+                print_status = print_status.getData()
+
             try:
                 jid = helpers.parse_jid(conf.getAttr('jid'))
             except helpers.InvalidFormat:
-                log.warn('Invalid JID: %s, ignoring it' % conf.getAttr('jid'))
+                log.warning('Invalid JID: %s, ignoring it'
+                            % conf.getAttr('jid'))
                 continue
             bm = {'name': conf.getAttr('name'),
-                'jid': jid,
-                'autojoin': autojoin_val,
-                'minimize': minimize_val,
-                'password': conf.getTagData('password'),
-                'nick': conf.getTagData('nick'),
-                'print_status': print_status}
+                  'jid': jid,
+                  'autojoin': autojoin_val,
+                  'minimize': minimize_val,
+                  'password': conf.getTagData('password'),
+                  'nick': conf.getTagData('nick'),
+                  'print_status': print_status}
 
 
             bm_jids = [b['jid'] for b in self.bookmarks]
• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Аватара пользователя
nk
Модератор
Сообщения: 413
Зарегистрирован: 14 сен 2014, 00:35
Темы: 78
Статус: Не в сети

Re: Gajim, jabber-клиент

Сообщение nk » 28 апр 2017, 00:32

Приложения: Использовать приложения по умолчанию

В настройках Gajim - Расширенные можно увидеть секцию Приложения
и бывает такое то что у нас задано Использовать приложения по умолчанию , но вот, !н-р, мы часто пользуемся firefox, а по клику на ссылке открывается chrom* или наоборот.

Решение здесь простое и это в продолжение темы [WM] Открыть с помощью...
здесь в помощь нам файл ~/.config/mimeapps.list и в нем секция именно [Default Applications],
надо прописать или скопировать с [Added Associations] что-то вида:

Код: Выделить всё

[Default Applications]
x-scheme-handler/http=mozilla-firefox.desktop
x-scheme-handler/https=mozilla-firefox.desktop
и тогда при клике на ссылку в Gajim уже точно будет открываться и будет указан возможно для каких-то других программ - браузер по-умолчанию
• Web: Firefox • Jabber: Gajim • WM: Openbox
Изображение

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость