document.write('<link rel="stylesheet" href="http://gist.github.com/stylesheets/gist/embed.css"/>')





document.write('<div id=\"gist-48582\" class=\"gist\">\n  \n  \n    \n            \n\n      <div class=\"gist-file\">\n        <div class=\"gist-data gist-syntax\">\n          \n          \n          \n            <div class=\"gist-highlight\"><pre><div class=\"line\" id=\"LC1\"><span class=\"c1\">#!/usr/bin/env ruby<\/span><\/div><div class=\"line\" id=\"LC2\"><span class=\"nb\">require<\/span> <span class=\"s1\">&#39;rubygems&#39;<\/span><\/div><div class=\"line\" id=\"LC3\">&nbsp;<\/div><div class=\"line\" id=\"LC4\"><span class=\"vg\">$running<\/span> <span class=\"o\">=<\/span> <span class=\"kp\">true<\/span><\/div><div class=\"line\" id=\"LC5\"><span class=\"no\">Signal<\/span><span class=\"o\">.<\/span><span class=\"n\">trap<\/span><span class=\"p\">(<\/span><span class=\"s2\">&quot;TERM&quot;<\/span><span class=\"p\">)<\/span> <span class=\"k\">do<\/span><\/div><div class=\"line\" id=\"LC6\">&nbsp;&nbsp;<span class=\"vg\">$running<\/span> <span class=\"o\">=<\/span> <span class=\"kp\">false<\/span><\/div><div class=\"line\" id=\"LC7\"><span class=\"k\">end<\/span><\/div><div class=\"line\" id=\"LC8\">&nbsp;<\/div><div class=\"line\" id=\"LC9\"><span class=\"nb\">require<\/span> <span class=\"s1\">&#39;twitter/console&#39;<\/span><\/div><div class=\"line\" id=\"LC10\"><span class=\"nb\">require<\/span> <span class=\"s1\">&#39;memcache&#39;<\/span><\/div><div class=\"line\" id=\"LC11\"><span class=\"n\">gem<\/span><span class=\"p\">(<\/span><span class=\"s1\">&#39;twitter4r&#39;<\/span><span class=\"p\">,<\/span> <span class=\"s1\">&#39;0.3.0&#39;<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC12\"><span class=\"nb\">require<\/span> <span class=\"s1\">&#39;twitter&#39;<\/span><\/div><div class=\"line\" id=\"LC13\"><span class=\"nb\">require<\/span> <span class=\"s1\">&#39;time&#39;<\/span><\/div><div class=\"line\" id=\"LC14\"><span class=\"nb\">require<\/span> <span class=\"s1\">&#39;open-uri&#39;<\/span><\/div><div class=\"line\" id=\"LC15\"><span class=\"nb\">require<\/span> <span class=\"s1\">&#39;daemons&#39;<\/span><\/div><div class=\"line\" id=\"LC16\">&nbsp;<\/div><div class=\"line\" id=\"LC17\"><span class=\"n\">sleep_time<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">0<\/span><\/div><div class=\"line\" id=\"LC18\"><span class=\"n\">starling<\/span> <span class=\"o\">=<\/span> <span class=\"no\">MemCache<\/span><span class=\"o\">.<\/span><span class=\"n\">new<\/span><span class=\"p\">(<\/span><span class=\"s1\">&#39;127.0.0.1:22122&#39;<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC19\"><span class=\"n\">config_file<\/span> <span class=\"o\">=<\/span> <span class=\"no\">File<\/span><span class=\"o\">.<\/span><span class=\"n\">join<\/span><span class=\"p\">(<\/span> <span class=\"no\">File<\/span><span class=\"o\">.<\/span><span class=\"n\">dirname<\/span><span class=\"p\">(<\/span><span class=\"bp\">__FILE__<\/span><span class=\"p\">)<\/span> <span class=\"o\">+<\/span> <span class=\"s1\">&#39;/../../&#39;<\/span><span class=\"p\">,<\/span> <span class=\"s1\">&#39;config&#39;<\/span><span class=\"p\">,<\/span> <span class=\"s1\">&#39;twitter.yml&#39;<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC20\">&nbsp;&nbsp;<span class=\"n\">message<\/span> <span class=\"o\">=<\/span> <span class=\"n\">starling<\/span><span class=\"o\">.<\/span><span class=\"n\">get<\/span><span class=\"p\">(<\/span><span class=\"s1\">&#39;twitter_post&#39;<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC21\"><span class=\"k\">while<\/span><span class=\"p\">(<\/span><span class=\"vg\">$running<\/span><span class=\"p\">)<\/span> <span class=\"k\">do<\/span><\/div><div class=\"line\" id=\"LC22\">&nbsp;&nbsp;<span class=\"n\">message<\/span> <span class=\"o\">=<\/span> <span class=\"n\">starling<\/span><span class=\"o\">.<\/span><span class=\"n\">get<\/span><span class=\"p\">(<\/span><span class=\"s1\">&#39;twitter_post&#39;<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC23\">&nbsp;&nbsp;<span class=\"k\">if<\/span> <span class=\"n\">message<\/span><\/div><div class=\"line\" id=\"LC24\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"vi\">@post_client<\/span> <span class=\"o\">=<\/span> <span class=\"no\">Twitter<\/span><span class=\"o\">::<\/span><span class=\"no\">Client<\/span><span class=\"o\">.<\/span><span class=\"n\">from_config<\/span><span class=\"p\">(<\/span><span class=\"n\">config_file<\/span><span class=\"p\">,<\/span> <span class=\"s1\">&#39;user&#39;<\/span> <span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC25\">&nbsp;<\/div><div class=\"line\" id=\"LC26\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">begin<\/span><\/div><div class=\"line\" id=\"LC27\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">status<\/span> <span class=\"o\">=<\/span><span class=\"vi\">@post_client<\/span><span class=\"o\">.<\/span><span class=\"n\">status<\/span><span class=\"p\">(<\/span><span class=\"ss\">:post<\/span><span class=\"p\">,<\/span> <span class=\"n\">message<\/span><span class=\"o\">[<\/span><span class=\"ss\">:send<\/span><span class=\"o\">]<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC28\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">rescue<\/span> <span class=\"no\">Exception<\/span><\/div><div class=\"line\" id=\"LC29\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"nb\">print<\/span> <span class=\"s1\">&#39;X&#39;<\/span><\/div><div class=\"line\" id=\"LC30\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">starling<\/span><span class=\"o\">.<\/span><span class=\"n\">set<\/span><span class=\"p\">(<\/span><span class=\"s1\">&#39;twitter_post&#39;<\/span><span class=\"p\">,<\/span> <span class=\"n\">message<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC31\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">sleep_time<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">30<\/span><\/div><div class=\"line\" id=\"LC32\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"k\">end<\/span><\/div><div class=\"line\" id=\"LC33\">&nbsp;&nbsp;<span class=\"k\">else<\/span> <span class=\"c1\">#no work<\/span><\/div><div class=\"line\" id=\"LC34\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"c1\"># print &#39;.&#39;<\/span><\/div><div class=\"line\" id=\"LC35\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">sleep_time<\/span> <span class=\"o\">=<\/span> <span class=\"mi\">5<\/span><\/div><div class=\"line\" id=\"LC36\">&nbsp;&nbsp;<span class=\"k\">end<\/span><\/div><div class=\"line\" id=\"LC37\">&nbsp;&nbsp;<span class=\"vg\">$stdout<\/span><span class=\"o\">.<\/span><span class=\"n\">flush<\/span><\/div><div class=\"line\" id=\"LC38\">&nbsp;&nbsp;<span class=\"nb\">sleep<\/span> <span class=\"n\">sleep_time<\/span><\/div><div class=\"line\" id=\"LC39\"><span class=\"k\">end<\/span> <span class=\"c1\">#loop end<\/span><\/div><\/pre><\/div>\n          \n        <\/div>\n\n        <div class=\"gist-meta\">\n          <a href=\"http://gist.github.com/raw/48582/0dfe253eec101ecd676770761ba2853f00cec406/starling.rb\" style=\"float:right;\">view raw<\/a>\n          <a href=\"http://gist.github.com/48582#file_starling.rb\" style=\"float:right;margin-right:10px;color:#666\">starling.rb<\/a>\n          <a href=\"http://gist.github.com/48582\">This Gist<\/a> brought to you by <a href=\"http://github.com\">GitHub<\/a>.\n        <\/div>\n      <\/div>\n    \n  \n<\/div>\n')
