<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>has_many :thoughts: Tag Jabber</title>
    <link>http://blog.kineticweb.com/articles/tag/jabber</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Musings from a Ruby on Rails development team</description>
    <item>
      <title>Jabber with Ruby</title>
      <description>&lt;p&gt;I got curious on how easy it might be to integrate Jabber with some Ruby projects. Turns out, it&amp;#8217;s dead simple. (Why would I ever think otherwise?) That&amp;#8217;s due to the efforts of the folks over at the &lt;a href="http://home.gna.org/xmpp4r/"&gt;xmpp4r  project&lt;/a&gt;. One can do it with a simple little script of a dozen lines or so, once that package is installed. Something like this:&lt;/p&gt;


&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;require&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;xmpp4r/client&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="ident"&gt;include&lt;/span&gt; &lt;span class="constant"&gt;Jabber&lt;/span&gt;
&lt;span class="ident"&gt;client&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Client&lt;/span&gt;&lt;span class="punct"&gt;::&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="constant"&gt;JID&lt;/span&gt;&lt;span class="punct"&gt;::&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;username&lt;/span&gt;&lt;span class="punct"&gt;'))&lt;/span&gt;
&lt;span class="ident"&gt;client&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;connect&lt;/span&gt;
&lt;span class="ident"&gt;client&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;auth&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;password&lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;
&lt;span class="ident"&gt;client&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;send&lt;/span&gt; &lt;span class="constant"&gt;Message&lt;/span&gt;&lt;span class="punct"&gt;::&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;colinbartlett&lt;/span&gt;&lt;span class="attribute"&gt;@gmail&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;com&lt;/span&gt;&lt;span class="punct"&gt;,&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;test!!&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;).&lt;/span&gt;&lt;span class="ident"&gt;set_type&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="symbol"&gt;:normal&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;set_id&lt;/span&gt;&lt;span class="punct"&gt;('&lt;/span&gt;&lt;span class="string"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;')&lt;/span&gt;
&lt;span class="ident"&gt;client&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;close&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

	&lt;p&gt;On our project list coming up is integrating Jabber with our Nagios server so that notifications can be sent to us via IM when we&amp;#8217;re online instead of &lt;span class="caps"&gt;SMS&lt;/span&gt;. (To avoid the $70 &lt;span class="caps"&gt;SMS&lt;/span&gt; bills in months when one of the servers has a bad day!).&lt;/p&gt;</description>
      <pubDate>Wed, 19 Dec 2007 21:09:00 -0500</pubDate>
      <guid isPermaLink="false">urn:uuid:036133bd-c3ba-4a89-a0b9-d567dd554d13</guid>
      <author>Colin A. Bartlett</author>
      <link>http://blog.kineticweb.com/articles/2007/12/19/jabber-with-ruby</link>
      <category>ruby</category>
      <category>Jabber</category>
    </item>
  </channel>
</rss>
