Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: miranda -> pidgin (контакт лист)  (Прочитано 4826 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tremor

  • Автор темы
  • Участник
  • *
  • Сообщений: 212
  • Промышляю локальными сетями
    • Просмотр профиля
    • Компьютерные сети в Екатеринбурге
miranda -> pidgin (контакт лист)
« : 17 Августа 2009, 12:24:02 »
Как экспортировать из миранды оочень большой контакт-лист (желательно с историей, но прежде всего Локальные ники, привязанные к UIN'ам)?
Нашел плагин для miranda mContact - он все делает отлично в отдельный файл, но файл этот текстовый. ini расширение.
В pidgin есть плагин list handler, но он работает только с xml.
Пока остановился на поиске экспортировщика контактлиста для миранды в xml виде.

PS Так же не понимаю, почему миранда не записывает все свои контакты в icq профиль в на сервере icq. Возможно она записывает только свежедобавленные uin'ы, но там было много экспортированных контактов из более старой миранды (файл .dat видимо). Как бы эти контакты синхронизировать с icq сервером. Причем в настройках миранды включено синхронизировать контакт лист с сервером.

PSS еще пара вопросов: как отключить уведомления о том что контакт вошел в сеть. мне это совсем знать не надо, а контактов куча. как найти в какой группе тот или иной контакт находится? групп тоже много. еще есть плагин в миранде - быстрые сообщения (заготовки) в пиджине не нашел что то (plugin-pack поставил)
« Последнее редактирование: 17 Августа 2009, 12:36:53 от tremor »

Оффлайн Ksertoo

  • Активист
  • *
  • Сообщений: 314
  • храм фирэфохэ
    • Просмотр профиля
Re: miranda -> pidgin (контакт лист)
« Ответ #1 : 17 Августа 2009, 13:34:45 »
PS Так же не понимаю, почему миранда не записывает все свои контакты в icq профиль в на сервере icq. Возможно она записывает только свежедобавленные uin'ы, но там было много экспортированных контактов из более старой миранды (файл .dat видимо). Как бы эти контакты синхронизировать с icq сервером. Причем в настройках миранды включено синхронизировать контакт лист с сервером.

Миранда записывает все. Только в некоторых сборках, как в зелебобавской например, контакты при добавлении заносились только в локальный контакт-лист, а чтоб на сервак icq добавились, так это надо было самому отдельно уже добавлять.
Kubuntu 10.04 LTS   Linux kernel 2.6.32   KDE 4.4.5

Мой Живой Журнал-Дневник

Оффлайн tremor

  • Автор темы
  • Участник
  • *
  • Сообщений: 212
  • Промышляю локальными сетями
    • Просмотр профиля
    • Компьютерные сети в Екатеринбурге
Re: miranda -> pidgin (контакт лист)
« Ответ #2 : 17 Августа 2009, 13:51:07 »
0.8.3 миранда с постоянно переносимым профилем .dat сейчас стоит. не все контакты занесены на сервер. но большинство контактов там 2х годичной и годичной давности, может миранда не проверяет на наличие на сервере контактов, которые ей подсунули в профиле, а вот если она сама добавляет контакт, когда ктото постучится, то тогда может только добавляет?

Пользователь решил продолжить мысль 18 Августа 2009, 08:03:18:
UP!
Очень надо плагин "Быстрые ответы"
На экспорт контактов пока забил видимо...
« Последнее редактирование: 18 Августа 2009, 08:03:18 от tremor »

Оффлайн tremor

  • Автор темы
  • Участник
  • *
  • Сообщений: 212
  • Промышляю локальными сетями
    • Просмотр профиля
    • Компьютерные сети в Екатеринбурге
Re: miranda -> pidgin (контакт лист)
« Ответ #3 : 20 Августа 2009, 17:49:45 »
Ок, надеюсь я открыл что то новое...

Итак я экспортировал из миранды лист с помощью mContact. Получился оогромный текстовый лист какогото своего формата.
Я нашел что pidgin создает свой xml лист с контактами. Видимо при первом подключении взял все с сервера и xml создал.
Ну и осталось самое очевидное и невероятное: привести огромный текстовый файл к xml виду в pidgin.
Поработав 2 дня на работе с sed и awk я кажется добился чего нужно, с некоторыми потерями информации. Группы не знаю как отделить. (BEGIN и END в awk работает только на начало и конец всего обрабатываемого файла), а группы это было важно у нас... и вообще в текстовике больше полей получилось чем в xml файле, но видимо pidgin или его libpurple меньше инфы о юзере пользуют чем миранда.
Теперь надо бы привести примеры: Что было и что стало.


ProtoMode=0
Proto=ICQ
CListNick=Тулун
CListGroup=08.2009
IDStr=UIN
ID=********
IDType=4
[1]
ProtoMode=0
Proto=ICQ
CListNick=ООО Особняк, г.Улан-Удэ, ул. Проспек
CListGroup=08.2009
IDStr=UIN
ID=********
IDType=4

где звездочки - сами uid'ы

А это - то что в pidgin'е:

<group name='mygroup'>
         <setting name='collapsed' type='bool'>1</setting>
         <contact>
            <buddy account='++++++++' proto='prpl-icq'>
               <name>хххххххх</name>
               <alias>Dmitry</alias>
            </buddy>
         </contact>
         <contact>
            <buddy account='++++++++' proto='prpl-icq'>
               <name>уууууууу</name>
               <alias>Alexandr</alias>
               <setting name='servernick' type='string'>Alexandr</setting>
               <setting name='last_seen' type='int'>1250750585</setting>
            </buddy>
Вот теперь мой скрипт:

cat /home/tremor/miranda_0.8.3/contactlist_utf8.txt | sed -e 's/^\[[0-9]*\]/<\/contact>\n<contact>/' -e 's/^CListNick=/\t\t<alias>/' -e 's/^ID=/\t\t<name>=/' | awk 'BEGIN{print"<group name='MirandaOldClients'>";print"<setting name='collapsed' type='bool'>1</setting>"}{if($1~"<alias>"){print"<contact>";print"\t<buddy account=++++++++ proto='prpl-icq'>";print$a;print"\t\t</alias>"}if($1~"<name>"){print$a;print"\t\t</name>";print"\t</buddy>";print"</contact>"}}END{print"</group>"}' | sed -e s/++++++++/\'++++++++\'/

+++++++ - это мой уин - учетка пиджина. ******** - уины юзеров.

Вот, теперь боюсь его пиджину подсовывать. А пока я решаюсь. Может знатоки подскажут как по группам разделить? "CListGroup=08.2009" - это нужная мне запись группы из листа в миранде, надо сделать так, что пока идут блоки уинов с этой группой, писать все новые записи в xml файл между блоками <group lalala> и </group>. Но я ума не приложу как это сделать, это наверное перлом только. А то так у меня щас все в одну группу между BEGIN и END свалилось. BEGIN и END и задают теги group в начале и в конце.

За более подробной информацией по формату xml файла в пиджине - смотрите свои файлы в дом. папке в папкен .purple. По мирандовскому файлу - просто идут uin между тегами "
  • , [1], [2]" и т.д. Плюсом, а может и нет, авляется то что по группам они упорядочены в файле. Т.е. первые 15 [N] блоков с одинаковой записью CListGroup=, следующие 30 со следующей CListGroup=... Вот эти 15 и 30 преобразовать надо в формат buddies, name и т.д. и позасовывать между тегами group. Кто может подскажите?
« Последнее редактирование: 20 Августа 2009, 17:53:31 от tremor »

Оффлайн tremor

  • Автор темы
  • Участник
  • *
  • Сообщений: 212
  • Промышляю локальными сетями
    • Просмотр профиля
    • Компьютерные сети в Екатеринбурге
Re: miranda -> pidgin (контакт лист)
« Ответ #4 : 24 Августа 2009, 15:09:37 »
Ну я привел оба листа к идентичному формату, но пиджин не ест контакты из него. на миг контакт при логине профиля появляется и когда логин происходит, контакт удаляется, типа libpurple не находит его на сервере icq. нужна какаято функция экспорта контактов.

Оффлайн Sam Stone

  • Старожил
  • *
  • Сообщений: 1131
    • Просмотр профиля
Re: miranda -> pidgin (контакт лист)
« Ответ #5 : 24 Августа 2009, 15:17:45 »
Ищи в миранде кнопку Manage server's list. Оно тебе зальет на сервак все контакты как они поименованы. После этого они такими же должны открыться в другом клиенте.
Jellyfish 6.5.0-45-generic
2690v4 64Gb

Оффлайн Vovans

  • Активист
  • *
  • Сообщений: 311
  • zenway.ru
    • Просмотр профиля
    • Про Linux по-русски
Re: miranda -> pidgin (контакт лист)
« Ответ #6 : 24 Августа 2009, 17:10:32 »
что ещё за быстрые ответы? Да, нет, что ли?  ???

Оффлайн SureGOOD

  • Активист
  • *
  • Сообщений: 724
  • suregood.ru
    • Просмотр профиля
    • suregood.ru
Re: miranda -> pidgin (контакт лист)
« Ответ #7 : 25 Августа 2009, 10:18:21 »
он имеет ввиду шаблоны ответов, наверно

 

Страница сгенерирована за 0.016 секунд. Запросов: 19.