Before asking questions, please, read FAQ.

qutIM project's forum


qutIM - multiplatform instant messenger

V-SQL History

Раздел содержит плагины для qutIM 0.2

Moderator: Zombieff

V-SQL History

Postby sendel » Mon Feb 08, 2010 6:09 pm

Данный плагин базируется на коде плагина viewtopic.php?f=62&t=1120
В данном плагине мною был изменен процесс взаимодействия с пользователем.

Пример:
Допустим задача такая:
имеем контакт лист (ну можно несколько листов) в нем по 100 контактов (может даже в каждом)... ведется довольно обширная переписка (помощь клиентам и т.д.) и вот ситуация, нужно найти сообщение: не помню когда послал, не помню кому, но знаю что в сообщении содержится некий текст "#5683" ..
. можно ли быстро решить задачу с существующим интерфейсом? думаю что с ходу и быстро, врядли... это недостаток присущь всей QIP-подобной организации вывода и тем более хранения...
Итак, представляю вам улучшенный интерфейс плагина: qutim-vsqlhistory 0.3

От оригинального отличается пока только интерфейсом, обмен с БД не претерпел изменений.
Теперь можно довольно гибко задавать то что ищем, выбирая начальну-конечную даты, направление сообщений и т.д.
Все получается довольно просто и логично.

(8.02.2010 v0.3)
Пофиксены некоторые незначительные ошибки, добавлен дополнительный контроль.

(15.02.2010 v0.4)
Добавлены для MySQL:
Нотификация при потере связи.
При первом использовании: создает новую БД указанную в настройках или qutim по умолчанию.
Таблица создается в режиме INNODB и с collate для поля с сообщениями.

(13.06.2010 v1.7)
Переработан интерфейс, что позволило избавится от тормозов.
Добавлена попытка присоединения к БД если было отсоединение (пока полностью не протестировано)

(18.06.2010 v1.8 )
Добавлены преопределенные значения дат (+1,+7,+14,+30 от текущей)
Добавлено окно вызываемое двойным щелчком по записи, в котором показывается 10 сообщений до и 10 после выделенного, полезно при поиске сообщений.

(18.06.2010 v1.9 )
Фиксы мелких багов.

PS. Для тех кто использует удаленный сервер MySQL:
wolfovich » Wed Feb 17, 2010 7:29 am
Короче нашлось обходное и простое решение... Потому поставил mysql-proxy и теперь все в шоколаде (проверка выдергивания кабеля прошла успешно). От qutim'а до mysql-proxy соединение не рвется, а mysql-proxy к mysql даже и не надо перепдключаться.


А вообще нужно по возможности настроить MySQL: /etc/my.cnf
Code: Select all
[mysqld]
interactive_timeout=999999999
wait_timeout=999999999


и перезапустить сервер.


Downloads:
git: http://gitorious.org/vsqlhistory/vsqlhistory

http://sourceforge.net/projects/qutimstuffs/files
plugins/vlibsqlhistory_qt46_v1.9.tar.bz2 бинарник, для linux i386 с библиотекой QT4.6


ScreenShot:
Image

Image
Last edited by sendel on Fri Jun 18, 2010 8:32 pm, edited 9 times in total.
(C) VIOLONIX inc. 1995-2009
Утоли жажду общения!
Мои ветки разработок: http://gitorious.org/~sendel , http://qutimstuffs.sourceforge.net/
User avatar
sendel
User
 
Posts: 50
Joined: Tue Dec 01, 2009 10:31 am

Re: V-SQL History

Postby wolfovich » Thu Feb 11, 2010 6:25 am

Спасибо Вам за ваш труд. А пофикшен баг с переподключением к БД при временных потерях коннекта?

PS Подключил я его... Историю не показывает, но сохраняет т.к. в старом плагине я ее вижу.
wolfovich
User
 
Posts: 31
Joined: Mon Mar 16, 2009 6:42 am

Re: V-SQL History

Postby sendel » Thu Feb 11, 2010 7:32 pm

wolfovich wrote:Спасибо Вам за ваш труд. А пофикшен баг с переподключением к БД при временных потерях коннекта?

PS Подключил я его... Историю не показывает, но сохраняет т.к. в старом плагине я ее вижу.

Пока даже не знал про баг, где можно о нем почитать?
Сам использую пока sqlite, но в ближайшее время пройдусь и по MySQL...
Спасибо за багрепорт... совсем не показывает? а контакты заполняются?
(C) VIOLONIX inc. 1995-2009
Утоли жажду общения!
Мои ветки разработок: http://gitorious.org/~sendel , http://qutimstuffs.sourceforge.net/
User avatar
sendel
User
 
Posts: 50
Joined: Tue Dec 01, 2009 10:31 am

Re: V-SQL History

Postby proDOOMman » Thu Feb 11, 2010 7:56 pm

Плагин будет доступен через git/svn? Так удобнее обновлять пакеты :)
P.S.: убунтоводы могут идти на ланчпад за debами
qutIM 0.2 repository for Ubuntu: https://launchpad.net/~qutim/+archive/qutim.svn
qutIM 0.3 unstable testing repository for Ubuntu: https://launchpad.net/~qutim/+archive/sdk03
User avatar
proDOOMman
User
 
Posts: 220
Joined: Mon Jun 16, 2008 5:32 pm

Re: V-SQL History

Postby Mind =_= » Thu Feb 11, 2010 9:43 pm

Ежели там в направлениях "оба" должно быть, то это "Both". У Вас Booth, очепятка.
И это.. я хороший Image
// А он с мускулем-то работает в итоге?
[Ubuntu 10.04, Gnome, qutIM 0.2]
User avatar
Mind =_=
User
 
Posts: 290
Joined: Tue Jun 30, 2009 6:23 pm
Location: Russia, Moscow

Re: V-SQL History

Postby sendel » Fri Feb 12, 2010 6:35 pm

Mind =_= wrote:Ежели там в направлениях "оба" должно быть, то это "Both". У Вас Booth, очепятка.
И это.. я хороший Image
// А он с мускулем-то работает в итоге?

Ок спасибо поправлю... мускуль отлажу в ближайшее время....

На счет git, выложу тоже в ближайшее время...
(C) VIOLONIX inc. 1995-2009
Утоли жажду общения!
Мои ветки разработок: http://gitorious.org/~sendel , http://qutimstuffs.sourceforge.net/
User avatar
sendel
User
 
Posts: 50
Joined: Tue Dec 01, 2009 10:31 am

Re: V-SQL History

Postby wolfovich » Mon Feb 15, 2010 8:02 am

Список пользователей заполняется, а вот список внизу, где сообщения должны быть, пуст. Насчет бага mysql... Если я работаю и в это время инет переподключился, то плагин молча не пишет(и не читает) историю и она вылетает вся в трубу. Помогает только перезапуск qutim'а.

PS Может лучше как все, файлики сначало в директорию ложить, а ее уже потом архивировать? :)
wolfovich
User
 
Posts: 31
Joined: Mon Mar 16, 2009 6:42 am

Re: V-SQL History

Postby sendel » Mon Feb 15, 2010 7:16 pm

wolfovich wrote:Список пользователей заполняется, а вот список внизу, где сообщения должны быть, пуст. Насчет бага mysql... Если я работаю и в это время инет переподключился, то плагин молча не пишет(и не читает) историю и она вылетает вся в трубу. Помогает только перезапуск qutim'а.

PS Может лучше как все, файлики сначало в директорию ложить, а ее уже потом архивировать? :)

Проблема с mysql... впринципе концептуально не разрешима в лоб... пока сделал нотификацию, чтоб знать когда пропали сообщения.
То чтоб хранить отдельно а потом загружать... думаю лично я этого делать не буду, ибо моя цель локальная история... для решения могу посоветовать: дописать самому (или нанять/попросить заинтересованого) или второе решение, сделать кластероподобную систему... т.е. коннектится всегда будет к локальной, а та уже в свою очередь будет синхронизироваться с внешней;)
(C) VIOLONIX inc. 1995-2009
Утоли жажду общения!
Мои ветки разработок: http://gitorious.org/~sendel , http://qutimstuffs.sourceforge.net/
User avatar
sendel
User
 
Posts: 50
Joined: Tue Dec 01, 2009 10:31 am

Re: V-SQL History

Postby wolfovich » Tue Feb 16, 2010 6:10 am

sendel wrote:Проблема с mysql... впринципе концептуально не разрешима в лоб...

Я так понимаю это особенность работы класса QtSQL что он молча теряет соединение и не жужжит? Хотя нотификация уже хорошо. А сильно будет нагружать, перед отправкой каждого сообщения , проверка на то потерялось ли соединение или нет и если что, то хотя бы одна попытка переподключиться?
Скачал с гита исходники. Так теперь еще и список пользователей не заполняется :crazy:
wolfovich
User
 
Posts: 31
Joined: Mon Mar 16, 2009 6:42 am

Re: V-SQL History

Postby torkvemada » Tue Feb 16, 2010 10:43 am

Я что-то не догоняю?
bool QSqlDatabase::isOpen () const
Returns true if the database connection is currently open; otherwise returns false.

Кроме того, конкретно в MySQL есть свой пинг внутри соединения, не знаю, реализован ли он в Qt и других движках БД.
Code: Select all
wall<---------------->Debian sid (2.6.32-5.19-amd64)<----->OpenSSH 5.5p1-4
qutIM 0.2<----------->Ubuntu 10.10 (2.6.35-19.28-i686)<--->Gnome 2.31.90
Miranda IM 0.9.2<---->Windows 7 Professional EN
talkonaut 5.69.12<--->Symbian OS 9.4
User avatar
torkvemada
inquisitor
 
Posts: 884
Joined: Tue Jun 17, 2008 10:37 am
Location: Russia, @ARRAY()

Next

Return to Плагины / Plugins

Who is online

Users browsing this forum: No registered users and 2 guests