トップ «前の日(07-04) 最新 次の日(07-06)» 追記

猫熊は燃えつきた?!日記

最近なんにもやっていませんが、なにかやったらこちらに置くようにしています。
2002|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|
2011|09|
2012|02|


2005-07-05 (Tue)

MHC のアラーム

以前使っていた DDI Pocket の HV-210 のときは3ヶ月分のスケジュールを毎日 cron で配送してアラームがわりにしていたのだけど、今の AU の A1402SII だと vcal にしないといけないので面倒くさくなって作業途中でやめてしまった。
で、パケット料金もたくさん余っているので、サーバからそのつど携帯電話にメールを送って、『メール受信=アラーム』にするようにしてみた。大体、サーバからメールを出して数秒後に携帯電話に届くし。モトネタは、乃村さんの mhc-alarm だけど A1402SII だと From で受信時の音とか変えられないから、その辺がちょっとわかりにくい。
---- mhc-alarm-mail ----
#!/usr/local/bin/ruby
 
mail_address = 'hoge@exsample.co.jp'
mail_address_from = 'foo@exsample.co.jp'
 
MailServer    = 'localhost'  ## for --mail option
MyHostName    = 'localhost'  ## for --mail option
 
require 'mhc-schedule'
require 'mhc-kconv'
require 'net/smtp'
 
$db    = MhcScheduleDB .new()
$alarm = MhcAlarm .new($db)
 
$alarm .signal_connect('time-arrived'){|date, sch|
  header    = "To: #{mail_address}\n"
  header   += "Subject: アラーム (#{sch .subject})\n"
  header   += "From: #{mail_address_from}\n"
  header   += "\n"
  contents = "#{sch .dump_header}\n"
  contents = contents.gsub(/^X-SC-Cond:.*\n/, "")
  contents = contents.gsub(/^X-SC-Duration:.*\n/, "")
  contents = contents.gsub(/^X-SC-Priority:.*\n/, "")
  contents = contents.gsub(/^X-SC-Record-Id:.*\n/, "")
  contents = contents.gsub(/^X-SC-/, "")
  contents = contents.gsub(/^Mime-Version:.*\n/, "")
  contents = contents.gsub(/^Content.*\n/, "")
  message = MhcKconv::tomail(header + contents)
 
  Net::SMTPSession .start(MailServer, 25, MyHostName) {|server|
    server .sendmail(message, mail_address, [mail_address])
  }
}
$alarm .check
 
sleep  ## wait forever.
exit 0 ## unreached.

書いている人: 白井秀行 (mailto:shirai@meadowy。org)
訪問して下さった人: 今日: 人, 昨日: , 過去: 人 (2007年5月10日から)
RDF Feed