mikutterをついーとさーばに
mikutterとMessagePack::RPCを利用して,りもーとからツイートする方法について
書いてみたいと思う.
Server
まず,gem install msgpack-rpcとしてMessagePack::RPCをインストールします.
インストールしたら,以下の簡単なPluginをつくります.
require 'msgpack/rpc' Plugin.create(:tweet_server) do class Remote def tweet(str) Post.primary_service.update(:message => str) true end end on_boot do start_server end def start_server @server=MessagePack::RPC::Server.new UserConfig[:tw_port] ||= 5000 @server.listen '0.0.0.0', UserConfig[:tw_port], Remote.new Thread.new do @server.run end end settings "ついーとさーば" do adjustment "port", :tw_port, 1024, 65535 end end
このPluginは簡単なMessagePack::RPC::Serverとなっており,クライアントから
Remote.tweetを呼び出すと,strの内容をついーとしてくれます.さーばの設定と
して,ポート番号の指定のみをします.初回起動時,ポート番号は5000で起動します.
それ以降は指定したポートが利用されますがポート番号を変更したあとはmikutter
を再起動してMessagePack::RPC::Serverも再起動してください.
Client
つぎにクライアントから呼び出し,ついーとするためのコードを以下に示します.
require 'msgpack-rpc' cli = MessagePack::RPC::Client.new("mikutter_server", 5000) cli.call(:tweet, "( ゚∀゚)お彡°おっぱい!おっぱい!") cli.close
このコードを実行することにより,( ゚∀゚)o彡°おっぱい!おっぱい!とついーとされます.
まとめ
夜中に思いついたので簡単ですがまとめてみましたが,いかがでしょうか?
これを用いれば,mikutterでもりもーとから簡単についーとできるようになりますよ.