airmail 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c9710202c8bf57ba445332b14803f9f87149ffb4
4
- data.tar.gz: 59baa6d1b4bc05dc2742c815c943b2a5ab161ce4
3
+ metadata.gz: e0571b8e40b39f183158dcaa629ec8991d697b5f
4
+ data.tar.gz: c78054f2e35c4aeb2359dcd8dee8b0850ad1ea39
5
5
  SHA512:
6
- metadata.gz: a780b078507aa04f219dde6e1a28fc76bfbbd6ca1a6d2478c6826e5a400dc1b49336c0d7d7d74f6cf1f4f009f61bc10071324a44888da5e66b31a74a86ab75e0
7
- data.tar.gz: 75f69ff448caa3d4117d2c6bcd747847f4c9976f31b757defc9d74af57cb0dafa53b08ef9112d55193166cdecdea6621d080c2d835a06e1b73191596f764ff4e
6
+ metadata.gz: 0da7448e0b0822ae408244ad235dd7c0b6c2b5a41cf59ab52dc630de3a334392a71bf16a272c75562075e9e46003cc62e7fcc4a55659b368848df922f5426688
7
+ data.tar.gz: da4c8c774b03d7e42a1c5040981cb9dc74dba8315f32554aecf708f12768cecaeba55b94b06637b84fe8cbbcc59251138734f231f7481b3e1192ab07d679f6a3
data/README.md ADDED
@@ -0,0 +1,32 @@
1
+ # Airmail
2
+ Incoming Email Router. Bringing you from SMTP text format straight through routing to a ruby controller.
3
+ This project is looking to give you the tools to classify and handle incoming emails.
4
+
5
+ Set up routes, much like you would in Ruby on Rails. Perhaps in /config/mail_routes.rb?
6
+
7
+ Airmail.route do
8
+ deliver AttachmentController if has_attachment?
9
+
10
+ deliver DefaultEmailController
11
+ end
12
+
13
+ A controller can look like:
14
+
15
+ class DefaultEmailController < Airmail::Controller
16
+ def receive
17
+ logger.info("Email '#{subject}' received from #{from}")
18
+ end
19
+ end
20
+
21
+
22
+ Then receive emails!
23
+
24
+ mail = <<EOF
25
+ FROM: bob@thomas.com
26
+ TO: anyone@yourdomain.com
27
+ Subject: This is a great email!
28
+
29
+ This is the body.
30
+ EOF
31
+
32
+ Airmail.receive( mail )
@@ -6,7 +6,7 @@ module Airmail
6
6
  raise RoutesNotDefined unless defined? @@route
7
7
 
8
8
  mail = Mail.new( original )
9
- MailProcessor.new(mail, @@route).receive
9
+ MailProcessor.new(mail, @@route, original).receive
10
10
 
11
11
  mail
12
12
  end
@@ -1,7 +1,8 @@
1
1
  class MailProcessor
2
2
 
3
- def initialize mail, route
3
+ def initialize mail, route, original=nil
4
4
  @mail = mail
5
+ @raw_mail = original
5
6
  @route = route
6
7
  default_controller
7
8
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: airmail
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Trevor Grayson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-10 00:00:00.000000000 Z
11
+ date: 2016-01-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mail
@@ -38,12 +38,13 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: 2.0.0
41
- description: Ruby on Wings!
41
+ description: Incoming Email Router
42
42
  email: trevor@trevorgrayson.com
43
43
  executables: []
44
44
  extensions: []
45
45
  extra_rdoc_files: []
46
46
  files:
47
+ - README.md
47
48
  - lib/airmail.rb
48
49
  - lib/airmail/airmail.rb
49
50
  - lib/airmail/airmail_default_controller.rb