Skip to content

Instantly share code, notes, and snippets.

@kennethkalmer
Created February 9, 2011 10:03
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save kennethkalmer/818236 to your computer and use it in GitHub Desktop.
Save kennethkalmer/818236 to your computer and use it in GitHub Desktop.
Simple SMTP sink for eventmachine
require 'rubygems'
require 'eventmachine'
class SmtpSink < EM::Protocols::SmtpServer
def receive_data_chunk( data )
buffer.concat data
end
def receive_message
puts
puts "<message>"
puts buffer.join("\n")
puts "</message>"
puts
clear_buffer!
true
end
def buffer
@buffer ||= []
end
def clear_buffer!
@buffer = []
end
end
EM.run {
EM.start_server( '0.0.0.0', 25, SmtpSink )
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment