mikutterである時刻にある数だけあるツイートをする

mikutterでは,Alt-xで下部にコンソールが出て来ます.
入力した内容はCtrl+Enterで実行できます.*1

39 * 39

とか

`ntpdate -b ntp.nict.jp`

とかすると,Rubyのコードが動いてTLにmikutter_botが結果を教えてくれます.
もちろん,次のコードを使えばツイートすることもできます.

Post.primary_service.update(:message => "hoge")

Rubyのコードが動くならRubyの機能を使いたいですよね!
さっそくThreadとn.timesを使いましょう!

Thread.new{
  20.times{|x|
    Post.primary_service.update(:message => "@toshi_a ★#{" "*x}")
  }
}

このコードではとしぁさんに20回非公式ふぁぼ*2を飛ばします.
ちなみに,ツイートの末尾に全角空白を入れると,その数によって異なるツイートと認識されるので,
同じ(に見える)ツイートを何度もすることが可能になります.

ておくれたみなさんなら,これをある時刻に実行したい!と思いますよね.
最新のmikutterなら,次のコードでせいべさんを夢の中から現実に引き戻せます.*3

Reserver.new(Time.local(2011,10,23,7,0)){
  20.times{|x|
    Post.primary_service.update(:message => "@seibe2 #{"せいべー"*(x+1)}")
  }
}

古いmikutterで動かしたいときは,Reserverを使わずに

Thread.new{
  start = Time.local(2011,10,23,7,0)
  sleep(0.5) while start - Time.new > 0
  Thread.new{
    20.times{|x|
      Post.services.first.post :message => "@seibe2 #{"せいべー"*(x+1)}"
    }
  }
}

え,もっとですか・・・?

Reserver.new(Time.local(2011,10,23,23,20)){
  7.times{
    20.times{|x|
      Post.primary_service.update(:message => "@toshi_a ★#{" "*x}")
    }
    sleep(2.0)
  }
}

こうすると,おそらく限界までツイートできるんじゃないかと.
ちなみに,20スレッドごとにしてるのは,あまりスレッドをつくりすぎるとmikutterが落ちるためです.
確実に規制されたい方は次のコードを貼っておもむろにC-Retしていただけると幸せになるんじゃないかと思います.

Reserver.new(Time.local(2011,10,23,23,20)){
  127.times{|x|
    t = Post.primary_service.update(:message => "@toshi_a ★#{" "*x}")
    t.join
  }
}

上記のコードを応用すると,ミスらずによるほーすることができます!!*4
それでは,迷惑な楽しいコードを紹介したところで,
すばらしいmikutterライフを送りましょう!*5

追記:上記の内容はmikutterが落ちると無効になりますのでご注意ください

*1:このショートカットはmikutterの設定から変更可能です

*2:★リプライを飛ばすこと

*3:http://mikutter.blogspot.com/2011/10/blog-post.html

*4:ネットワークの遅延により失敗する可能性があります

*5:この記事は迷惑行為を推奨するものではありません