Chase Your Dreams!

Christian Archer

  • Home
  • Profile
  • Friends
  • Forums
  • Gallery
  • Homepage
  • Copyright
Twitter Facebook RSS
Daily Archives: August 13, 2009

Psi Options –> Jabber Roster Utility (XSLT)

Posted on August 13, 2009 by SunChaser
7 Comments

Сервер с моим основным аккаунтом лёг. Видимо, наконец решил оправдать своё имя — unstable.nl

Соответственно встал вопрос о переносе контактов на новый сервер. Чем это можно сделать? Конечно же Jabber Roster Utility, чем же еще? Но! JRE сначала должен получить контакты со старого, а сервер-то лежит. Ростер, конечно же, скеширован клиентом, коим у меня является Psi. Но формат-то там неподходящий! Если перебивать ручками, то проще покажется добавить ручками же контакты прямо в клиенте. Не вариант.

Сначала в голову полезла шальная мысль написать парсер, но она была сразу отброшена. Psi хранит настройки в XML, a значит можно поступить проще.

Возьмем нужный нам файл настроек: %psidatadir%/profiles/%profilename%/accounts.xml и применим к нему xslt-стиль. Стиль этот очень прост:

<?xml version=”1.0″ encoding=”UTF-8″?>

<xsl:stylesheet version=”1.0″ xmlns:xsl=”http://www.w3.org/1999/XSL/Transform” xmlns=”http://psi-im.org/options”>
<xsl:output method=”text”/>

<xsl:template match=”/accounts/accounts/*”>
Account <xsl:value-of select=”jid”/><xsl:apply-templates select=”roster-cache”/>
</xsl:template>

<xsl:template match=”roster-cache/*”>+,<xsl:value-of select=”jid”/>,<xsl:value-of select=”name”/>,none,<xsl:value-of select=”groups/item”/></xsl:template>

</xsl:stylesheet>

В результате мы получим ростеры всех прописанных туда аккаунтов в формате, который хавает JRE

Account jid@domain.tld
+,elem1@dom1.tld,Element 1,none,Group
+,elem2@dom2.tld,Element 2,none,Group
+,elem3@dom3.tld,Element 3,none,Group 2

Account jid2@domain2.tld
+,elem1@dom1.tld,Element 1,none,
+,elem4@dom4.tld,Element 2,none,

Вуаля, кормим JRE.

Как применить стиль?

Самый простой способ — браузер. Открываем accounts.xml (рекомендую сделать копию и издеваться над ней, а не резать по живому), вписываем первой строкой

<?xml-stylesheet type=”text/xsl” href=”accounts-xslt.xml”?>

копируем стиль в папку с этим accounts.xml и открываем accounts.xml в браузере.

Если не сработает, удаляем из accounts.xml строку <!DOCTYPE accounts> и элемент xmlns=”http://psi-im.org/options”

Знаю, что не по фэн-шую, но мне почему-то помогло.

Скачать стиль: http://misc.sunchaser.info/software/psi2jre.zip

  • Share this:
  • Email
  • ВКонтакте
Categories: Jabber, XML | Tags: jabber roster utility, psi, xslt

За широкопрофильное образование

Posted on August 13, 2009 by SunChaser
No Comments

Вот наглядный пример того, что различные области знаний порой не должны меж собой пересекаться — во благо человечеству.

В фармацевтической компании есть один интересный сотрудник двадцати шести лет, химик по специальности. В компах смыслит мало (в своём предмете, по-моему, тоже), что компенсируется огромным желанием сделать с ними что-то эдакое. Компьютер у него не очень «персональный» — за него по делу часто садятся другие люди. Так вот, пользователи этой машины внезапно начали жаловаться на проклятие: человек, просидев у экрана около двадцати минут, падал в кратковременный обморок. Пострадавших набралось человек шесть.

Причина проклятия была крайне нетривиальной — оказалось, химик где-то услышал про жидкостную систему охлаждения и решил организовать нечто подобное. Пока за компом никого не было, сотрудник ставил внутрь системника банку эфира с добавлением вещества, отбивавшего характерный запах. Попавший под «удар» смеси пользователь быстренько отправлялся на боковую. Химика поругали нехорошими и не очень цензурными словами и потребовали с него объяснений. Тот в своё оправдание заявил, что теплоёмкость и теплопроводность у эфира очень хорошая, поэтому пары эфира вполне сойдут для охлаждения деталей компа.

Мораль: любой человек, серьёзно связанный с компами, должен чувствовать себя частью Особой Секты, секреты которой должны хоть как-то охраняться. А не то глядишь, и кто-то вспомнит, что у синильной кислоты тоже очень неплохие физические показатели…

http://ithappens.ru/story/1154

Если химик был клиничеким идиотом, это еще ничего не доказывает. Пусть учит биологию и корпоративные правила.

Вот откуда автор знает, что у синильной кислоты хорошие свойства? И что она вредна?

По-моему, тут как раз наоборот. Лучше бы айтишники (и химики, и прочие. а особенно врачи и “лоровские аналитики”) не чувствовали себя частью Особой Секты, как они это делают сейчас. Это и ведет к подобным бедам.

  • Share this:
  • Email
  • ВКонтакте
Categories: Random Thoughts, Science | Tags: chemistry, education, it happens
  • Blogroll

    • Блог android разработчика
  • FeedBurner

  • Calendar

    August 2009
    M T W T F S S
    « Jul   Sep »
     12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31  
  • Archives

  • Categories

    • ? (1)
    • Bookmarks (15)
    • Culture (186)
      • Books (10)
      • Comics (1)
      • Holidays (1)
      • Law (3)
      • Linguistics (13)
      • Movies and TV (45)
      • Music (25)
      • Nippon (47)
        • Anime (43)
      • Politics (25)
      • Quotes (20)
      • Religion (3)
      • Science (15)
      • Video (16)
    • Development (38)
      • Design (4)
      • Qt (4)
      • Ruby (1)
      • Web Development (19)
    • Fun (75)
    • IT (218)
      • Cross-site Connectivity (11)
        • oEmbed (2)
        • OpenID (9)
      • Games (15)
      • Howtos (11)
      • Instant Messaging (38)
        • Jabber (26)
      • Internet Misc (37)
      • Linux (46)
      • Multimedia (3)
      • Phones (1)
      • Windows (21)
        • Linux Software in Windows (4)
      • WordPress (13)
      • XML (4)
    • Miscellaneous (43)
    • Personal (95)
      • Blog Flashmob (2)
      • Random Thoughts (25)
      • Secret Wishes (3)
      • Travel (3)
    • Pictures (20)
      • Gallery Updates (10)
      • Photography (3)
  • Recent Comments

    • SunChaser on DNS Service
    • Johan on DNS Service
    • SunChaser on DNS Service
    • SunChaser on DNS Service
    • SunChaser on DNS Service
  • Forum Topics

    • Jabber Server
  • SunChaser on Twitter

    • RT @xenia_sobchak: Якеменко публичноотказал мне во вступлении в его партию.как жить дальше?есть ли смысл?обьявляюУстричную голодовку по ... 13 hours ago
    • @ilyabirmannet Most likely he uses some third party caching plugin 14 hours ago
    • RT @read_the_tweet: Вовочка очень хотел конфету, но отдал её Маше, потому что Машу он хотел больше. 16 hours ago
    • RT @KermlinRussia: Скоро начнут людей на улицах хватать и назначать полпредами. 3 days ago
    • @kwizme_en spare 3 days ago
© 2006-2012 by Christian Archer Proudly Powered by WordPress | Nest Theme by YChong
loading Cancel
Post was not sent - check your email addresses!
Email check failed, please try again
Sorry, your blog cannot share posts by email.