次の簡単なスクリプトがあります。これは、電子メール アカウントをチェックし、新しいメールがある場合は電子メールを転送して SMS を送信します。なしでスクリプトを実行すると、これは予想どおりに発生しますProcess.daemon
。追加され、電子メール アカウントで電子メールが受信されると、何も起こらず (何も転送されず、SMS も送信されません)、コンソールにエラー メッセージは表示されません。助言がありますか?
#!/usr/bin/env ruby
require "bundler/setup"
require "mailman"
require "twilio-ruby"
Mailman.config.pop3 = {
:username => 'address@gmail.com',
:password => 'password',
:server => 'pop.gmail.com',
:port => 995,
:ssl => true
}
Mailman.config.poll_interval = 60
Mailman::Application.run do
default do
begin
Ticket.receive_mail(message)
MailForwarder.forwarded_email(message).deliver
@account_sid = 'xxxxxxxxxxx'
@auth_token = 'xxxxxxxxxx'
@client = Twilio::REST::Client.new(@account_sid, @auth_token)
@account = @client.account
@sms = @account.sms.messages.create(
:from => '+1111111111',
:to => '+122222222',
:body => message.subject
)
puts @sms
puts "#{message.subject}"
rescue Exception => e
Mailman.logger.error "Exception occurred whle receiving message:\n#{message}"
Mailman.logger.error [e, *e.backtrace].join("\n")
end
end
Process.daemon
end