Вступление
Не так давно решил вплотную познакомиться со всей кухней OpenSource со стороны разработчика и в качестве первой пробы решил написать плагин к Gwibber для поддержки Вконтакте. Надо сказать, что тикет на Launchpad на эту тему висит с середины 2010 года (датирован 2010-05-01) с довольно длинным обсуждением, было несколько попыток реализовать поддержку, но готового решения никто не предложил. Помимо Launchpad, появился топик на форуме Ubuntu.ru, в котором топикстартер сообщил, что реализовал поддержку ВК, но код так никому и не показал.
Так что в начале декабря
взялся за работу и через 2 месяца рабочая протестированная версия плагина была готова. На данный момент я уже отправил запрос о включении плагина в официальную ветку Gwibber и буквально сегодня разработчики отметили его для включения в
релиз 2.91.5.
Описание функционала, инструкция для желающих протестировать плагин в работе уже сейчас под катом...
Доступный функционал
На данный момент работает:
- Загрузка текстовых постов из новостей
- Загрузка видео - постов
- Загрузка постов - ссылок
- Загрузка постов с фото и граффити
- Отправка сообщений на свою стену
- Комментирование постов
- "Мне нравится" (сердечко)
- Удаление моих постов
Хочется добавить:
- Поддержку "ретвитов" ("Мне нравится"+"Рассказать друзьям") Пока архитектура Gwibber не позволяет это сделать
- Поддержку mentions (упоминание). Вконтакте выглядит как ссылка "ответить на моей странице". В Gwibber сейчас отображается как "[id535397|Сергей Прохоров], ". Примитивную поддержку сейчас добавить ничего не мешает.
- Поддержку личных сообщений (Пока что в сомнениях нужно ли это. В любом случае будет отдельная галочка в настройках аккаунта)
Известные проблемы:
- После смены IP адреса появляется сообщение об ошибке "Unknown method passed". Дело в том, что авторизационный "токен" API вконтакте привязан к IP адресу (видимо для защиты от взлома аккаунта) и после каждой смены IP его нужно обновлять. Делать это в фоновом режиме в текущей реализации самого Gwibber сейчас нельзя. Особенно доставляет тот факт, что сообщение об ошибке ни о чем не говорит... Так что нажимаем "редактировать" и заново проходим процедуру авторизации, жмем F5 для получения последних сообщений.
Инструкция по установке
Прежде всего хочу отметить, что пользоваться этой инструкцией стоит только если очень хочется протестировать плагин прямо сейчас, т.к. скорее всего через месяцок-другой, надеюсь, плагин войдет в официальный релиз. Итак, от слов перейдем к делу.
Подготовка
UPD: для natty этот пункт можно пропустить, т.к. там установлена новая версия Gwibber.
Важно! Не пропустите! Т.к. поддержка плагинов появилась только в ветке 2.91.x, а в Ubuntu Maverick установлена версия 2.32.x, то необходимо сперва установить последнюю версию из девелоперского PPA "deb http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu maverick main #Gwibber-Daily PPA" командами
sudo add-apt-repository ppa:gwibber-daily/ppa sudo apt-get update sudo apt-get upgrade
Эти команды обновят основные модули Gwibber.
Важно! Т.к. все протоколы теперь поставляются в виде отдельных пакетов, нужные протоколы необходимо устанавливать самостоятельно. Если этого не сделать, то Gwibber не запустится, а при запуске
gwibber
из консоли увидим
Traceback (most recent call last): File "/usr/bin/gwibber", line 87, in client.Client() File "/usr/lib/python2.6/dist-packages/gwibber/client.py", line 621, in __init__ self.w = GwibberClient() ......... File "/usr/lib/pymodules/python2.6/mako/runtime.py", line 278, in return lambda *args, **kwargs:callable_(self.context, *args, **kwargs) File "base_mako", line 251, in render_image File "base_mako", line 192, in profile_url File "base_mako", line 829, in render_profile_url KeyError: u'twitter'
Посмотреть список протоколов можно командой
aptitude search gwibber-service-+
Установим минимум - протоколы facebook и twitter:
sudo aptitude install gwibber-service-{twitter,facebook}
После этого можете попробовать запустить Gwibber и убедиться что версия обновилась.
Установка плагина Vkontakte.ru
UPD 2011-05-22: Вариант номер ноль. Используйте его! - установка из PPA
Для поддержки плагина создан PPA на Launchpad. Можно установить плагин, подключив этот PPA:
sudo apt-add-repository ppa:gwibber-vkontakte-plugin/ppa sudo apt-get update sudo aptitude install gwibber-service-vkontakte
Обновляться теперь будет автоматически!
Вариант номер раз - установка из DEB пакета
Добрый товарищ
ZwS (Антон Судак?) с форума Ubuntu.ru
собрал .DEB пакет, многие уже писали что установили этот пакет и у них все успешно заработало. Вот ссылки для скачивания DEB пакета для установки плагина
(
оригинальная), (
мое зеркало) md5 e3ce23c5328fec6b54c2d549a4870812
UPD: новая версия
(
оригинальная), (
мое зеркало) md5 d9cdb8299eebf8d7145dd219a3f75219
Просто скачиваете файл, запускаете, все подтверждаете, перезапускаете Gwibber, готово. Преимущества такого подхода - легко удалить если что-то сломается (
sudo aptitude remove gwibber-service-vkontakte
) и если выйдет официальная версия плагина, то она без проблем установится поверх этой.
Вариант номер два (им пользуюсь я) - установка симлинков из bzr исходного кода
Пользуюсь потому что так можно запускать код написанный прямо сейчас, но просто так им пользоваться не советую.
Устанавливаем bazaar
sudo aptitude install bzr
Загружаем исходники Gwibber из моего репозитория Launchpad
bzr branch lp:~seriy-pr/gwibber/vkontakte-ru-plugin
После этого главная магия - делаем симлинки на некоторые кукски моего кода в директории откуда Gwibber их подхватит:
sudo ln -s /home/$USER/vkontakte-ru-plugin/gwibber/microblog/plugins/vkontakte/ /usr/share/gwibber/plugins/ sudo ln -s /home/$USER/vkontakte-ru-plugin/ui/icons/breakdance/16x16/vkontakte.* /usr/share/gwibber/ui/icons/breakdance/16x16/ sudo ln -s /home/$USER/vkontakte-ru-plugin/ui/icons/breakdance/22x22/vkontakte.* /usr/share/gwibber/ui/icons/breakdance/22x22/ sudo ln -s /home/$USER/vkontakte-ru-plugin/ui/icons/breakdance/scalable/vkontakte.* /usr/share/gwibber/ui/icons/breakdance/scalable/
И тогда должно заработать (только это небезопасно т.к. содержимое /home/$USER/vkontakte-ru-plugin доступно для записи). Если удалить директорию vkontakte-ru-plugin из домашней папки то работать перестанет. Чтобы этого избежать можно в предыдущем списке команд заменить команды "ln -s" на "cp"
Преимущества - для НЕразработчика - вам будет доступна самая последняя-распоследняя версия плагина. Недостатки - относительно сложно, небезопасно, могут возникнуть проблемы при обновлении.
Если после этого у вас Gwibber вдруг перестанет стартовать, можно подчистить следы деятельности командами
sudo rm -r /usr/share/gwibber/plugins/vkontakte sudo rm -r /usr/share/gwibber/ui/icons/breakdance/*/vkontakte*
Способ номер три (я не проверял, но есть люди у которых он работает) - установка из "исходного кода" с помощью setup.py
Gwibber поддерживает distutils, соответственно его можно установить непосредственно из исходного кода с помощью файла setup.py. Преимущества и недостатки у этого метода примерно такие - же как у второго, но в случае неудачи подчистить следы будет сложнее. Сам я этот метод не проверял, поэтому скопирую краткое резюме из инструкции, приведенной товарищем M.CoRN в его блоге (мои благодарности ему):
bzr branch lp:~seriy-pr/gwibber/vkontakte-ru-plugin sudo apt-get install python-dbus python-gtk2 python-gconf python-notify python-simplejson python-egenix-mxdatetime python-distutils-extra python-feedparser cd vkontakte-ru-plugin sudo python setup.py install
Если решите воспользоваться этой инструкцией, настоятельно рекомендую воспользоваться ее оригиналом, там есть дополнительные комментарии и рекомендации на случай появления ошибок.
Настройка учетной записи вконтакте в Gwibber
Ну тут как обычно все. Редактировать -> Учетные записи (или запустить приложение "gwibber-accounts") -> Добавить -> в выпадающем списке выбрать " Vkontakte" -> Добавить -> Выставьте галочки ("Получать сообщения" - чтобы получать сообщения вообще, "Посылать сообщения" - чтобы можно было отправлять сообщения и комментарии, "Receive groups" - это уже моя самодеятельность, если отмечено, будет загружать новости от групп, помимо новостей от друзей) -> Авторизовать -> Вводим логин-пароль, выставляем все галочки, жмем "Разрешить". Если все прошло успешно, закрываем окно, жмем F5 для обновления и пользуемся!
Что дальше?
Если есть какие-то пожелания/советы/отчеты об ошибках милости прошу в комментарии. Если хотите помочь и у вас есть аккаунт на Launchpad, отпишитесь тут https://bugs.launchpad.net/gwibber/+bug/572753 и тут https://code.launchpad.net/~seriy-pr/gwibber/vkontakte-ru-plugin/+merge/47651 что у вас все работает или наоборот ничего не работает, так этот плагин быстрее попадет в официальную поставку.
Как водится, выражаю благодарность Stanislav Hanzhin, sergeyreym за активное участие, советы и багрепорты, Nazar Vinnichuk и остальным разработчикам Rhythmbox's plugin for Vkontakte.ru - их наработки послужили основой для плагина, ZwS (Антон Судак?) за .DEB пакет,ну и всем остальным кто принимал и принимает посильное участие.
у меня не работает и в терминале выдает такое вот:
** (gwibber:13759): WARNING **: Trying to register gtype ‘WnckWindowState’ as enum when in fact it is of type ‘GFlags’
** (gwibber:13759): WARNING **: Trying to register gtype ‘WnckWindowActions’ as enum when in fact it is of type ‘GFlags’
** (gwibber:13759): WARNING **: Trying to register gtype ‘WnckWindowMoveResizeMask’ as enum when in fact it is of type ‘GFlags’
Traceback (most recent call last):
File «/usr/bin/gwibber», line 87, in
client.Client()
File «/usr/lib/python2.6/dist-packages/gwibber/client.py», line 621, in __init__
self.w = GwibberClient()
File «/usr/lib/python2.6/dist-packages/gwibber/client.py», line 71, in __init__
self.setup_ui()
File «/usr/lib/python2.6/dist-packages/gwibber/client.py», line 251, in setup_ui
self.stream_view.set_state(streams)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 463, in set_state
for item in state: self.new_stream(item)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 457, in new_stream
if state: item.set_state(state)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 593, in set_state
self.update()
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 586, in update
self.messages.update(self.selected_stream)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 751, in update
self.messages = self.message_view.render([selected_stream], count)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 813, in render
accounts=accounts)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 256, in render
content = template.render(theme=util.get_theme_colors(), util=util, resources=resources, _=_, **kwargs)
File «/usr/lib/pymodules/python2.6/mako/template.py», line 189, in render
return runtime._render(self, self.callable_, args, data)
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 403, in _render
_render_context(template, callable_, context, *args, **_kwargs_for_callable(callable_, data))
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 434, in _render_context
_exec_template(inherit, lclcontext, args=args, kwargs=kwargs)
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 457, in _exec_template
callable_(context, *args, **kwargs)
File «memory:0xb7d410c», line 52, in render_body
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 278, in
return lambda *args, **kwargs:callable_(self.context, *args, **kwargs)
File «base_mako», line 897, in render_messages
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 278, in
return lambda *args, **kwargs:callable_(self.context, *args, **kwargs)
File «base_mako», line 490, in render_message
File «base_mako», line 451, in messagebox
File «base_mako», line 581, in render_messagebox
File «base_mako», line 482, in body
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 278, in
return lambda *args, **kwargs:callable_(self.context, *args, **kwargs)
File «base_mako», line 968, in render_dupes
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 278, in
return lambda *args, **kwargs:callable_(self.context, *args, **kwargs)
File «base_mako», line 490, in render_message
File «base_mako», line 451, in messagebox
File «base_mako», line 581, in render_messagebox
File «base_mako», line 467, in body
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 278, in
return lambda *args, **kwargs:callable_(self.context, *args, **kwargs)
File «base_mako», line 513, in render_sidebar
File «/usr/lib/pymodules/python2.6/mako/runtime.py», line 278, in
return lambda *args, **kwargs:callable_(self.context, *args, **kwargs)
File «base_mako», line 251, in render_image
File «base_mako», line 192, in profile_url
File «base_mako», line 829, in render_profile_url
KeyError: u’friendfeed’
Миленько)))
нужно выполнить
sudo aptitude install gwibber-service-friendfeed
Но вообще странно. Наверное после недавнего обновления начало проявляться
Пишет: sudo: aptitude: command not found
Но знаешь, ты видимо мне плагин для FF предлагаешь поставить? Я его через центр приложений ставил, но результата ноль..
Как мне быть?
И ничего страшного, что я сюда пишу?)
Да, это плагин для FriendFeed… Но вообще странно что оно так пишет — у меня такого не было. Просто по аналогии — такая же ошибка но со словом ‘twitter’ вываливалась — помогала установка плагина для twitter, я решил что тут то же самое.
А можешь из терминала запустить
gwibber-service —debug -o
и отправить сюда что оно напечатает?
насчет «sudo: aptitude: command not found» — вроде в последних версиях Ubuntu aptitude не идет в комплекте. Можно вместо aptitude писать apt-get, т.е.
sudo apt-get install gwibber-service-friendfeed
Да, пиши сюда, все ок.
Установил последнюю версию, однако:
q88b@ubuntu:~$ gwibber-service –debug -o
Loading plugin Facebook version 1.1
Loading plugin Twitter version 1.0
Loading plugin FriendFeed version 0.1
Gwibber Dispatcher: ERROR Twitter: Request failed — Incorrect signature
Gwibber Dispatcher: ERROR Twitter: Request failed — Incorrect signature
Gwibber Dispatcher: ERROR Twitter: Request failed — Incorrect signature
Gwibber Dispatcher: ERROR Twitter: Request failed — Incorrect signature
Gwibber Dispatcher: ERROR Facebook: Authentication failed — Auth needs updating
Gwibber Dispatcher: INFO Loading complete: 1 — []
Вижу что Gwibber вообще не загружает vkontakte плагин… У меня это выглядит так:
Честно говоря затрудняюсь ответить в чем может быть проблема… Т.е. если плагин Vkontakte удалить
apt-get remove gwibber-service-vkontakte
то Gwibber все равно не стартует? Или только если установить мой плагин?
[…] снова зайти в систему. Подробная инструкция находится здесь. […]
А у меня после авторизации во вконтакте появляется надпись «Login success» и все. А аккаунт не добавляется. Версия gwibber — 3.1.0.
Смотря как устанавливали. Если из DEB пакета, то странно. Если из репозитория, то я буквально сегодня там нашел баг в авторизации, планирую вечером поправить))
Баг поправил. Попробуйте обновиться — должно работать нормально теперь.
Обновил из исходников, все заработало. Спасибо 🙂
То что из DEB пакета не работало странно, т.к. баг я внес уже после того как был собран DEB пакет.
Но раз все заработало, то замечательно!
Устанавливал из deb-пакета. Обновляться, как я понимаю, надо из исходников.
Не хочет сохранять учетную запись vkontakte
А как устанавливали? Из DEB или из bzr?
Посмотрите по ссылке http://forum.ubuntu.ru/index.php?topic=65621.msg1100430#new
Попробуйте из консоли запустить gwibber-accounts —debug
Отлично! всё работает! даже баг со сменой ай-пи работает, честно выдаёт ошибку 🙂 надеюсь, скоро починишь! большое спасибо за плагин!
Баг со сменой IP? Да не, это не получится починить т.к. это баг на стороне ВКонтакте. Они сессию привязывают к IP
deb пакет от ZsW не работает с gwibber-3.0.0 (ubuntu 11.04)
из bzr всё работает.
кстати, оно подхватывается, если складывать не в /usr/share а в /usr/local/share
что несколько кошернее при установке из bzr.
Ну вообще я старался setup.py файл менять по-минимуму так что устанавливает он так-же, как и стандартный Gwibber.
Тем не менее можно это поправить — перед запуском
sudo python setup.py install
в файлике setup.cfg в корне проекта заменитьprefix=/usr
наprefix=/usr/local
Почему из DEB не работает, а из bzr работает — хз. Кстати — недавно собрали еще один пакет с версией поновее — сделал апдейт поста, вот ссылка http://dl.seriyps.ru/soft/gwibber-service-vkontakte_3.0.0~bzr966-0_all.deb
Назревает у меня идея вынести плагин как отдельный проект, ибо в основную ветку Gwibber-а как-то не спешат вливать, а собрать автобилд в PPA Launchpad у меня как-то не получилось.
да, отдельным проектом/пакетом хорошо будет.
и обновляться и баги репортить/патчить.
внезапно, вывалилась воттакая дичь:
http://www.ljplus.ru/img4/q/m/qmax/Screenshot.png
оригинал заметки вотон: http://vkontakte.ru/note633634_11118269
это не просто выравнивание вправо, но также отрывание нескольких символов пунктуации с одного края строки на другой и инвертирование их в другую сторону!
как еслибы для хвостов строк включалось RTL направление текста.
наблюдается и в «ubuntu» и в «default» стилях.
Хохо… У меня такое тоже иногда попадается, я тоже удивлялся что за чудеса. Лень было разбираться, думаю займусь на днях.
А к записи вконтакте http://vkontakte.ru/note633634_11118269 доступ закрыт у меня.
странно. ну да ничего там особенного и нету.
текст копировался plain/textом и из мусора там толко U+FEFF в начале.
а как поглядеть в каком виде оно долетело до гвиббера?
Посмотреть можно через DBus — например в консоли набрать
dbus-monitor "type='signal',sender='com.Gwibber.Messages',interface='com.Gwibber.Messages'"
и запустить обновление сообщений.Оно правда будет в виде JSON строк и все строки будут в виде кодов символов, но думаю тут разберетесь)
Пофиксил баг с выравниванием. Действительно нужно было U+FEFF повырезать всего-навсего.
Нет смысла делать «Поддержку личных сообщений», ибо личные сообщения ВК прекрасно работают в качестве джаббера!
За остальное — спасибо!
а что с комментариями к записям?
В смысле? Вроде все работает…
Хотя да, поломались… На новой Ubuntu используется python2.7 по-умолчанию и в нем появился новый JSON сериализатор, который мой хак поломал…
Ок, будем чинить)
Пофиксил баг с комментариями. Можно из bzr обновиться.
Добавили PPA https://launchpad.net/~gwibber-vkontakte-plugin/+archive/ppa
Так что теперь устанавливаем из него.
На 11.04 поставил — работает. На 10.10 и так и сяк, но никак. В дебаге что-то про неймспейсы пишет: Untiy, DBus… хз даже, какие пакеты нужно поставить.
Ну, напишите что в дебаге выдает. Так пока ничего не понятно. Ставили из PPA?
dan-volkonsky@desktop:~$ gwibber —debug -o
ERROR:dbus.proxies:Introspect error on com.Gwibber.Service:/com/gwibber/Service: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ChildExited: Process /usr/bin/gwibber-service exited with status 1
Traceback (most recent call last):
File "/usr/bin/gwibber", line 98, in <module>
client.Client()
File "/usr/lib/python2.6/dist-packages/gwibber/client.py", line 697, in __init__
self.w = GwibberClient()
File "/usr/lib/python2.6/dist-packages/gwibber/client.py", line 40, in __init__
self.model = gwui.Model()
File "/usr/lib/python2.6/dist-packages/gwibber/gwui.py", line 50, in __init__
self.services = json.loads(self.daemon.GetServices())
File "/usr/lib/pymodules/python2.6/dbus/proxies.py", line 68, in __call__
return self._proxy_method(*args, **keywords)
File "/usr/lib/pymodules/python2.6/dbus/proxies.py", line 140, in __call__
**keywords)
File "/usr/lib/pymodules/python2.6/dbus/connection.py", line 620, in call_blocking
message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ChildExited: Process /usr/bin/gwibber-service exited with status 1
dan-volkonsky@desktop:~$ gwibber-service —debug -o
ERROR:root:Typelib file for namespace 'Unity' (any version) not found
Traceback (most recent call last):
File "/usr/lib/pymodules/python2.6/gtk-2.0/gi/importer.py", line 52, in find_module
repository.require(namespace)
RepositoryError: Typelib file for namespace 'Unity' (any version) not found
ERROR:root:Typelib file for namespace 'Dbusmenu' (any version) not found
Traceback (most recent call last):
File "/usr/lib/pymodules/python2.6/gtk-2.0/gi/importer.py", line 52, in find_module
repository.require(namespace)
RepositoryError: Typelib file for namespace 'Dbusmenu' (any version) not found
Loading plugin FriendFeed version 0.1
Loading plugin Twitter version 1.0
Loading plugin Facebook version 1.1
Facebook : DEBUG Setting up monitors
DEBUG:Facebook:Setting up monitors
Traceback (most recent call last):
File "/usr/bin/gwibber-service", line 77, in <module>
connection_monitor = dispatcher.ConnectionMonitor()
File "/usr/lib/python2.6/dist-packages/gwibber/microblog/dispatcher.py", line 823, in __init__
log.logger.debug("NM Version is %s", str(self.nm.Get(NM_DBUS_INTERFACE, "Version")))
File "/usr/lib/pymodules/python2.6/dbus/proxies.py", line 68, in __call__
return self._proxy_method(*args, **keywords)
File "/usr/lib/pymodules/python2.6/dbus/proxies.py", line 140, in __call__
**keywords)
File "/usr/lib/pymodules/python2.6/dbus/connection.py", line 620, in call_blocking
message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.InvalidArgs: No such property Version
В общем, в ходе переписки в Skype выяснили, что проблема была внесена в этом http://bazaar.launchpad.net/~gwibber-committers/gwibber/trunk/revision/991 коммите в сам Gwibber (плагин ВК тут не при чем). И проблема была в том, что… в Ubuntu 10.10 установлен NetworkManager версии 0.8.1 а в 11.04 версии 0.8.4 . И у первой нет DBus параметра Version а у 4-й есть:
ubuntu10.10:
qdbus --system org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.Version
Error: org.freedesktop.DBus.Error.UnknownMethod
Method «Version» with signature «» on interface «org.freedesktop.NetworkManager» doesn’t exist
ubuntu11.04:
qdbus --system org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.Version
0.8.3.998
В итоге помогло обновление NetworkManager до версии 0.8.4
Ничего без проблем не бывает.
Поставил — отлично работает.
Единственный косяк, который немного напрягает в gwibber’e — скролл больших сообщений.
За поддержку личный сообщений я бы проголосовал: твиттер, фейсбук и контакт в одном приложении — крайне удобно, имхо.
Спасибо за отзыв!
По поводу скролла больших сообщений — проблема известная давно, есть и тикеты на ланчпаде No «smooth scrolling» in Gwibber Scrolling behaviour prevents looking at messages taller than the window, но что-то ее не торопятся решать.
Личные сообщения в ближайшее время не обещаю, но буду иметь в виду.
классный плагин. спасибо!
личные сообщения было бы не плохо.
пока прикрутил личные сообщения через empathy через jabber
вводите login@vk.com
пароль
vkmessenger.com
5222
и все работает 🙂
А что насчет репозитория для оцелота?
И правда… Залил для oneric пакет, через часок-другой будет доступен.
Но, честно говоря, с новым Gwibber плагин работает кривовато..
что-то совсем печально с плагином, на gwibber 3.2.1 плагин подгружается, но при выборе какой типа учетной записи добавить, его с сожалению нет.
Очень может быть. Я после НГ попробую все пофиксить.
Хм… Попробовал на Ubuntu 11.10 запустить с Gwibber 3.2.1 — работает более-менее нормально.
Вы из PPA устанавливали? Попробуйте прибить все процессы gwibber-service (
killall gwibber-service
), запустить из консоли командуgwibber-service -o --debug
. Запостите сюда или на какой-нить pastebin что оно напечатает при этом.все из стандартных ppa ubuntu 11.10
вот вывод:
killall gwibber-service
gwibber-service: процесс не найден
murat@13:~$ gwibber-service -o —debug
/usr/lib/python2.7/dist-packages/gobject/constants.py:24: Warning: g_boxed_type_register_static: assertion `g_type_from_name (name) == 0′ failed
import gobject._gobject
Loading plugin Vkontakte version 0.2
Loading plugin Twitter version 1.0
Loading plugin Identi.ca version 1.1
Loading plugin Facebook version 1.1
Gwibber Dispatcher: DEBUG Setting up monitors
Gwibber Dispatcher: DEBUG NM Version is 0.9.1.90
Gwibber Dispatcher: DEBUG NM Version is greater than 0.8.997
Gwibber Dispatcher: DEBUG Creating indexes
(gwibber-service:4230): libindicate-WARNING **: Menu being changed when the indicator is visible. Listeners will NOT be notified of this change.
Gwibber Dispatcher: DEBUG Refresh interval is set to 15
Gwibber Dispatcher: DEBUG ** Starting Refresh — 2012-01-06 17:43:20,04 **
Gwibber Dispatcher: DEBUG Performing operation
Gwibber Dispatcher: DEBUG Performing operation
Gwibber Dispatcher: DEBUG Finished operation
Gwibber Dispatcher: DEBUG Performing operation
Gwibber Dispatcher: DEBUG Finished operation
Gwibber Dispatcher: DEBUG Performing operation
Gwibber Dispatcher: DEBUG Finished operation
Gwibber Dispatcher: DEBUG Finished operation
Gwibber Dispatcher: INFO Loading complete: 1 — []
Gwibber Dispatcher: DEBUG Private Messages Indicator count updated to 0
Gwibber Dispatcher: DEBUG Replies Indicator count updated to 0
Gwibber Dispatcher: DEBUG Messages Indicator count updated to 0
Gwibber Dispatcher: DEBUG Total unseen count: 0
Gwibber Dispatcher: INFO Cleaning up database…
Плагин Vkontakte загрузился, ошибок никаких не пишет. Странно. Не могу понять в чем проблема.
На неделе еще разок попробую, но пока не понял что не так.
Починил плагин — действительно проблема была из-за обновленного расположения иконок в новом Gwibber. Можно обновиться из PPA.
ERROR:dbus.connection:Unable to set arguments (‘all’, u’ffb7c9b8e29711e0abbabcaec57be4fe’, 0, ‘0’, ‘0’, ‘time’, ‘desc’, 50) according to signature u’ssd’: : Fewer items found in D-Bus signature than in Python arguments
Traceback (most recent call last):
File «/usr/bin/gwibber», line 98, in
client.Client()
File «/usr/lib/python2.6/dist-packages/gwibber/client.py», line 697, in __init__
self.w = GwibberClient()
File «/usr/lib/python2.6/dist-packages/gwibber/client.py», line 74, in __init__
self.setup_ui()
File «/usr/lib/python2.6/dist-packages/gwibber/client.py», line 264, in setup_ui
self.stream_view.set_state(streams)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 410, in set_state
self.update()
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 397, in update
self.messages.update(self.navigation.selected_stream)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 751, in update
self.messages = self.message_view.render([selected_stream], count)
File «/usr/lib/python2.6/dist-packages/gwibber/gwui.py», line 774, in render
msgs = json.loads(self.model.streams.Messages(streams[0][«stream»] or «all», streams[0][«account»] or «all», time, streams[0][«transient»] or «0», streams[0].has_key(«recipient») and streams[0][«recipient»] or «0», orderby, order, limit))
File «/usr/lib/pymodules/python2.6/dbus/proxies.py», line 140, in __call__
**keywords)
File «/usr/lib/pymodules/python2.6/dbus/connection.py», line 610, in call_blocking
message.append(signature=signature, *args)
TypeError: Fewer items found in D-Bus signature than in Python arguments
Жажду больше подробностей!
Какая версия Ubuntu, какая версия Gwibber, какая версия плагина, в какой момент происходит ошибка и т.д. и т.п.
Или это после вчерашнего апдейта началось?
Ubuntu 12.04, Gwibber 3.4.1, gwibber-service-vkontakte (3.3.92~bzr990~precise~1)
Плагин просто не появляется в списке доступных в gwibber. Facebook и twitter при этом работают нормально.
Ок, проверю.
Спасибо.
Уточнение: показывается, но для этого нужно полностью перезагрузить систему. Рестарта gwibber недостаточно. Возможно, стоит добавить в how to.
Интересное замечание, спасибо. Возможно вы не рестартуете gwibber а уводите в Background? Чтобы его рестартовать недостаточно просто нажать крестик, нужно набрать Ctrl+Q либо выбрать в меню Gwibber -> Выход
Можете проверить что он выключен, набрав в консоли
ps xa | grep gwibber-service