Hi,
Railmail doesnot leave an entry in the database if the delivery
method
is msmtp
Though the note in http://railmail.nullstyle.com/
states that "it can the take value of :passthrough can be any other
ActionMailer delivery method"
Any help is appreciated !11
Thanks,
Ashwin
SCJP
My environment.rb -------------------------------------------------
Be sure to restart your web server when you modify this file.
Uncomment below to force Rails into production mode when
you don’t control web/app server and can’t set it the proper way
ENV[‘RAILS_ENV’] ||= ‘production’
Specifies gem version of Rails to use when vendor/rails is not present
RAILS_GEM_VERSION = ‘1.1.6’
Bootstrap the Rails environment, frameworks, and default configuration
require File.join(File.dirname(FILE), ‘boot’)
Rails::Initializer.run do |config|
Settings in config/environments/* take precedence those specified
here
Skip frameworks you’re not going to use (only works if using
vendor/rails)
config.frameworks -= [ :action_web_service, :action_mailer ]
Add additional load paths for your own custom dirs
config.load_paths += %W( #{RAILS_ROOT}/extras )
Force all environments to use the same logger level
(by default production uses :info, the others :debug)
config.log_level = :debug
Use the database for sessions instead of the file system
(create the session table with ‘rake db:sessions:create’)
config.action_controller.session_store = :active_record_store
Use SQL instead of Active Record’s schema dumper when creating the
test database.
This is necessary if your schema can’t be completely dumped by the
schema dumper,
like if you have constraints or database-specific column types
config.active_record.schema_format = :sql
Activate observers that should always be running
config.active_record.observers = :cacher, :garbage_collector
Make Active Record use UTC-base instead of local time
config.active_record.default_timezone = :utc
config.after_initialize do
Railmail::ActionMailer::InstanceMethods.railmail_settings[:passthrough]
= :msmtp
end
end
Add new inflection rules using the following format
(all these examples are active by default):
Inflector.inflections do |inflect|
inflect.plural /^(ox)$/i, ‘\1en’
inflect.singular /^(ox)en/i, ‘\1’
inflect.irregular ‘person’, ‘people’
inflect.uncountable %w( fish sheep )
end
Include your application configuration below
#ActionMailer::Base.delivery_method = :msmtp
module ActionMailer
class Base
def perform_delivery_msmtp(mail)
IO.popen("/usr/local/bin/msmtp -t -C
/home/ashwin/workspace/govantra/.msmtprc -a ashwin --", “w”) do |sm|
sm.puts(mail.encoded.gsub(/\r/, ‘’))
sm.flush
end
if $? != 0
# why >> 8? because this is posix and exit code is in bits 8-16
logger.error(“failed to send mail errno #{$? >> 8}”)
end
end
end
end