smtp_with_gmail 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
data/lib/tlsmail.rb ADDED
@@ -0,0 +1,30 @@
1
+ require "net/smtp"
2
+ require "net/pop"
3
+ # If smtp or pop is already loaded, remove all constants.
4
+ module Net
5
+ if defined?(SMTP)
6
+ SMTP.class_eval do remove_const(:Revision) end
7
+ [:SMTP, :SMTPSession].each do |c|
8
+ remove_const(c) if constants.include?(c.to_s)
9
+ end
10
+ end
11
+ if defined?(POP)
12
+ POP.class_eval do remove_const(:Revision) end
13
+ [:POP, :POPSession, :POP3Session, :APOPSession].each do |c|
14
+ remove_const(c) if constants.include?(c.to_s)
15
+ end
16
+ end
17
+ end
18
+
19
+ load File.dirname(__FILE__) + "/net/smtp.rb"
20
+ load File.dirname(__FILE__) + "/net/pop.rb"
21
+
22
+ Net::SMTP.class_eval do
23
+ def quit # gmail smtp server disconnects as soon as get quit message.
24
+ begin
25
+ getok('QUIT')
26
+ rescue EOFError
27
+ end
28
+ end
29
+ end
30
+
@@ -0,0 +1,10 @@
1
+ # This file is a template for parameters.rb
2
+ # Copy this file and change variables below.
3
+ SMTP_SERVER = "smtp.gmail.com"
4
+ SMTP_PORT = "587"
5
+ POP_SERVER = "pop.gmail.com"
6
+ POP_PORT = "995"
7
+ DOMAIN = "localhost.localdomain"
8
+ AUTH = :plain
9
+ USER = "XXXXXXXXXXXX@gmail.com"
10
+ PASS = "ZZZZZZZZZZ"
@@ -0,0 +1,4 @@
1
+ $:.unshift(File.dirname(__FILE__) + '/../lib')
2
+ require 'test/unit'
3
+ require File.dirname(__FILE__) + '/../lib/tlsmail'
4
+ require "parameters"
@@ -0,0 +1,34 @@
1
+ require File.dirname(__FILE__) + '/test_helper.rb'
2
+
3
+ class TlsmailTest < Test::Unit::TestCase
4
+
5
+ def setup
6
+ end
7
+
8
+ def test_truth
9
+ assert true
10
+ end
11
+
12
+ def test_send_mail
13
+ require "time"
14
+ msgstr = <<END_OF_MESSAGE
15
+ From: Your Name <#{USER}@gmail.com>
16
+ To: Destination Address <#{USER}@gmail.com>
17
+ Subject: test message
18
+ Date: #{Time.now.rfc2822}
19
+
20
+ test message.
21
+ END_OF_MESSAGE
22
+ Net::SMTP.enable_tls(OpenSSL::SSL::VERIFY_NONE)
23
+ Net::SMTP.start(SMTP_SERVER, SMTP_PORT, DOMAIN, USER, PASS, AUTH) do |smtp|
24
+ smtp.send_message msgstr, "#{USER}@gmail.com", "#{USER}@gmail.com"
25
+ end
26
+ end
27
+
28
+ def test_receive_mail
29
+ Net::POP.enable_ssl(OpenSSL::SSL::VERIFY_NONE)
30
+ Net::POP.start(POP_SERVER, POP_PORT, USER, PASS) do |pop|
31
+ p pop.mails[0].pop
32
+ end
33
+ end
34
+ end
metadata ADDED
@@ -0,0 +1,104 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: smtp_with_gmail
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Eric Raio
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-04-06 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rdoc
16
+ requirement: &70118864862340 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '3.12'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *70118864862340
25
+ - !ruby/object:Gem::Dependency
26
+ name: bundler
27
+ requirement: &70118864861760 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *70118864861760
36
+ - !ruby/object:Gem::Dependency
37
+ name: jeweler
38
+ requirement: &70118864861220 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 1.8.3
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *70118864861220
47
+ - !ruby/object:Gem::Dependency
48
+ name: simplecov
49
+ requirement: &70118864860660 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70118864860660
58
+ description: easily authenticate into your google apps account and send mail through
59
+ google's free smtp
60
+ email: ericraio@gmail.com
61
+ executables: []
62
+ extensions: []
63
+ extra_rdoc_files:
64
+ - LICENSE.txt
65
+ - README.rdoc
66
+ files:
67
+ - .document
68
+ - Gemfile
69
+ - LICENSE.txt
70
+ - README.rdoc
71
+ - Rakefile
72
+ - VERSION
73
+ - lib/net/pop.rb
74
+ - lib/net/smtp.rb
75
+ - lib/tlsmail.rb
76
+ - test/template.parameters.rb
77
+ - test/test_helper.rb
78
+ - test/tlsmail_test.rb
79
+ homepage: http://github.com/ericraio/smtp_with_gmail
80
+ licenses:
81
+ - MIT
82
+ post_install_message:
83
+ rdoc_options: []
84
+ require_paths:
85
+ - lib
86
+ required_ruby_version: !ruby/object:Gem::Requirement
87
+ none: false
88
+ requirements:
89
+ - - ! '>='
90
+ - !ruby/object:Gem::Version
91
+ version: '0'
92
+ required_rubygems_version: !ruby/object:Gem::Requirement
93
+ none: false
94
+ requirements:
95
+ - - ! '>='
96
+ - !ruby/object:Gem::Version
97
+ version: '0'
98
+ requirements: []
99
+ rubyforge_project:
100
+ rubygems_version: 1.8.15
101
+ signing_key:
102
+ specification_version: 3
103
+ summary: Very simple way to add smtp gmail into any ruby application
104
+ test_files: []