@@ -34,15 +34,19 @@ module Agents |
||
| 34 | 34 |
incoming_events.each do |event| |
| 35 | 35 |
self.memory[:queue] ||= [] |
| 36 | 36 |
self.memory[:queue] << event.payload |
| 37 |
+ self.memory[:events] ||= [] |
|
| 38 |
+ self.memory[:events] << event.id |
|
| 37 | 39 |
end |
| 38 | 40 |
end |
| 39 | 41 |
|
| 40 | 42 |
def check |
| 41 | 43 |
if self.memory[:queue] && self.memory[:queue].length > 0 |
| 44 |
+ ids = self.memory[:events].join(",")
|
|
| 42 | 45 |
groups = self.memory[:queue].map { |payload| present(payload) }
|
| 43 |
- log "Sending digest mail to #{user.email}"
|
|
| 46 |
+ log "Sending digest mail to #{user.email} with events [#{ids}]"
|
|
| 44 | 47 |
SystemMailer.delay.send_message(:to => user.email, :subject => options[:subject], :headline => options[:headline], :groups => groups) |
| 45 | 48 |
self.memory[:queue] = [] |
| 49 |
+ self.memory[:events] = [] |
|
| 46 | 50 |
end |
| 47 | 51 |
end |
| 48 | 52 |
|
@@ -41,6 +41,7 @@ describe Agents::DigestEmailAgent do |
||
| 41 | 41 |
{ :title => "Foo", :url => "http://google.com", :bar => 2 },
|
| 42 | 42 |
{ "message" => "hi", :woah => "there" },
|
| 43 | 43 |
{ "test" => 2 }]
|
| 44 |
+ @checker.memory[:events] = [1,2,3,4] |
|
| 44 | 45 |
@checker.save! |
| 45 | 46 |
|
| 46 | 47 |
Agents::DigestEmailAgent.async_check(@checker.id) |