[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[kagemai-users:0588] Re: 通知先のアドレス振り分け
Takadaです。
早速のレス、大変ありがとうございます。 >>小寺さん
早速、試してみます。
しかし、rb初心者のため、少し時間かかると思います。
結果、必ずアップします。
> 小寺です。
>
> > 要は、このA分類の障害なら乙さんに、B分類の障害ならば丙さん
> > にメールを送信したいわけです。
> こういった用途の場合は、送信時に処理するフックスクリプトを用意する必要があります。
> BTSテンプレートプロジェクトにある、email_message.rb の sendmail メソッドを
>
> map = []
> map << ["A分類", "乙さん@xxxxxxxxx"]
> map << ["B分類", "丙さん@xxxxxxxxx"]
> map << ["C分類", "乙さん@xxxxxxxxx,丙さん@xxxxxxxxx"]
> mappedaddrs = ""
> messages = [message]
> messages << report.at(report.size - 1) if report.size >= 2 #状態変化時に前状態の関係者にも通知する場合
> messages.each do |mess|
> ['bugtype'].each do |eid| #対象フィールドのIDリスト
> return unless mess.has_element?(eid)
> # カンマ区切りアドレスリストへ変換
> mess[eid].split(/[,\s]+/).each do |addrlist|
> mappedaddrs += ',' + Hash[*map.flatten][addrlist];
> end
> end
> # アドレスユニーク化して送信
> to = mappedaddrs.split(/[,\s]+/).uniq.find_all{|addr| valid_email_address?(addr)}
> if !to.empty? then
> project.sendmail_to(report, message, to, [], [])
> end
>
>
> という様な感じにして利用する様にすると、出来ると思います。
> (全く未確認なのでバグだらけかと思います。あくまでも感じという事で)