重い処理が終わったらgoogle talkで通知する – 橋本詳解
が便利で、サーバーでの処理が終わったらIM通知するのに使っている。

IMはポップアップして音も鳴るので、Terminalを睨んでなくても良くなる
google talkで重い処理が終わったら通知


(サーバーで使う物と、自分が普段使うのとでGoogleアカウントが2つ必要)

追記:どうやらtoもuserも同じアドレスを指定して大丈夫らしい



最近使用頻度が上がってきたので、ちょっとなおした。デフォルト送信先を追加した。設定を、ホームディレクトリに設定ファイルとして置けるようにしたいな

#!/usr/bin/ruby

require ‘rubygems’
require ‘xmpp4r’
require ‘kconv’

user = ‘your-account@gmail.com’
pass = ‘gmail-password’

exit(1) if ARGV.length == 0
to = ‘hashimoto.shokai@gmail.com’ # デフォルトの送信先
to = ARGV.shift if ARGV.length > 1
body = ARGV.shift.toutf8

puts ‘sending ‘ + body + ‘ to ‘ + to

client = Jabber::Client.new(Jabber::JID.new(user))
client.connect(‘talk.google.com’, 5222)
client.auth(pass)


msg = Jabber::Message.new(to, body)
client.send(msg)


これをパスの通ったディレクトリにgtalk-sendという名前にして置いておけば、コマンド一発でGoogleTalkに通知できる



gtalk-send hashimoto.shokai@gmail.com “mag server: レンダリング終了しました”



あるいはデフォルト送信先には引数1つでいける

gtalk-send “mag server: レンダリング終了しました”




コンソールで ; で区切って複数コマンド入力できるので、こんな感じで

sudo apt-get update ; gtalk-send “アップデート終了”

update終わったらIMが来る。