paubox 0.1.0 → 0.1.1

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: 6b17ee76a0b045040db36865f166c659df8b29ba
4
- data.tar.gz: 8618b773e3b75644e4480b815c66d3613e6a8ef1
3
+ metadata.gz: 71a4b58946b0869eac1768ba49c208950fc7d6f2
4
+ data.tar.gz: 704a4cf54c5ef966e0f060ad3186f7aab314ecca
5
5
  SHA512:
6
- metadata.gz: 4eaa0bc9cb2d23b0aa7f36e1f2a1a30bcfaf798a4914857f273160b8c4bd60ea351145ae226fe5d2cf7c913c93b22574ef0f4d4770a50d4043ad1a843939f89c
7
- data.tar.gz: d53e5917f0d7dbbefcad209a3b3a6bdc39b08bd0c1a5b8ffff85a5281772facb465df31d135baa88a2084b5eabcd10005b94c83eea96838609d33c5325b4629e
6
+ metadata.gz: 89fa8a685e2170ee6ebbf87c2845c7eb3eb875576fc9fd002034d6c33c94fd159c04a0cd5f13985311de9b614ceb8d5f1bd589767b60fad5ebf2adb999497c58
7
+ data.tar.gz: 44ab568c8b28b5f77c376851865e0892bf17cbb59f1975e8af47a69be6202cd8ea9ac152aa6c79ff37dcf39497ccd4bc8565254e619876c7ed0d5e314d738b51
data/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Paubox Gem
2
- This is the official Ruby wrapper for the Paubox Transactional Email HTTP API. The Paubox Transactional Email API allows your application to send secure, HIPAA-compliant email and track deliveries and opens. This gem is currently in pre-alpha development.
2
+ This gem and Paubox Transactional Email HTTP API are currently in pre-alpha development.
3
+
4
+ This is the official Ruby wrapper for the Paubox Transactional Email HTTP API. The Paubox Transactional Email API allows your application to send secure, HIPAA-compliant email via Paubox and track deliveries and opens.
5
+
6
+ It extends the [Ruby Mail Library](https://github.com/mikel/mail) for seamless integration in your existing Ruby application. The API wrapper also allows you to construct and send messages directly without the Ruby Mail Library.
3
7
 
4
8
  ## Installation
5
9
 
@@ -17,6 +21,83 @@ Or install it yourself as:
17
21
 
18
22
  $ gem install paubox
19
23
 
24
+ ### Getting Paubox API Credentials
25
+ You will need to have a Paubox account. Please contact [Paubox Customer Success](https://paubox.zendesk.com/hc/en-us) for details on gaining access to the Transactional Email API alpha testing program.
26
+
27
+ ### Configuring API Credentials
28
+ To set your API credentials you'll need to include these in an initializer (config/initializers/paubox.rb in Rails).
29
+
30
+ Be careful not to commit your API credentials to version control. It's best to store these in environmental variables.
31
+
32
+ Paubox.configure do |config|
33
+ config.api_key = ENV['PAUBOX_API_KEY']
34
+ config.api_user = ENV['PAUBOX_API_USER']
35
+ end
36
+
37
+
38
+ ### Sending Messages with the Ruby Mail Library
39
+
40
+ If you're already using the Ruby Mail Library, sending via Paubox is easy. Just build your message as normal and set Mail::Paubox as the delivery method.
41
+
42
+ message = Mail.new do
43
+ from 'you@yourdomain.com'
44
+ to 'someone@somewhere.com'
45
+ subject 'HIPAA-compliant email made easy'
46
+
47
+ text_part do
48
+ body 'This message will be sent securely by Paubox.'
49
+ end
50
+
51
+ html_part do
52
+ content_type 'text/html; charset=UTF-8'
53
+ body '<h1>This message will be sent securely by Paubox.</h1>'
54
+ end
55
+
56
+ delivery_method Mail::Paubox
57
+ end
58
+
59
+ message.deliver!
60
+ => {"message"=>"Service OK", "sourceTrackingId"=>"2a3c048485aa4cf6"}
61
+
62
+ message.source_tracking_id
63
+ => "2a3c048485aa4cf6"
64
+
65
+ ### Sending Messages without ensuring TLS
66
+
67
+ If you want to send non-PHI mail that does not need to be HIPAA-compliant, you can allow the message delivery to take place even if a TLS connection is unavailable.
68
+
69
+ message = Mail.new do
70
+ from 'you@yourdomain.com'
71
+ to 'someone@somewhere.com'
72
+ subject 'Sending non-PHI'
73
+ body 'This message delivery will not enforce TLS transmission.'
74
+
75
+ delivery_method Mail::Paubox
76
+ end
77
+
78
+ message.allow_non_tls = true
79
+ message.deliver!
80
+
81
+ ### Sending Messages using just the Paubox API
82
+
83
+ args = { from: 'you@yourdomain.com',
84
+ to: 'someone@domain.com, someone_else@domain.com',
85
+ cc: ['another@domain.com', 'yetanother@domain.com'],
86
+ bcc: 'bcc-recipient@domain.com',
87
+ reply_to: 'reply-to@yourdomain.com',
88
+ subject: 'Testing!',
89
+ text_content: 'Hello World!',
90
+ html_content: '<h1>Hello World!</h1>' }
91
+
92
+ message = Message.new(args)
93
+
94
+ client = Paubox::Client.new
95
+ client.deliver_mail(message)
96
+ => {"message"=>"Service OK", "sourceTrackingId"=>"2a3c048485aa4cf6"}
97
+
98
+
99
+
100
+
20
101
  ## Contributing
21
102
 
22
103
  Bug reports and pull requests are welcome on GitHub at https://github.com/paubox/paubox_ruby.
@@ -24,5 +105,16 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/paubox
24
105
 
25
106
  ## License
26
107
 
27
- Copyright &copy; 2018 Paubox, Inc. See LICENSE for details.
108
+ Licensed under the Apache License, Version 2.0 (the "License");
109
+ you may not use this file except in compliance with the License.
110
+ You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
111
+
112
+ Unless required by applicable law or agreed to in writing, software
113
+ distributed under the License is distributed on an "AS IS" BASIS,
114
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
115
+ See the License for the specific language governing permissions and
116
+ limitations under the License.
117
+
118
+ ## Copyright
119
+ Copyright &copy; 2018, Paubox Inc.
28
120
 
@@ -14,6 +14,6 @@ module Mail
14
14
  end
15
15
 
16
16
  class Message
17
- attr_accessor :source_tracking_id, :status
17
+ attr_accessor :source_tracking_id, :status, :allow_non_tls
18
18
  end
19
19
  end
@@ -34,8 +34,10 @@ module Paubox
34
34
  if mail.multipart?
35
35
  html_content = mail.html_part.body.to_s if mail.html_part
36
36
  text_content = mail.text_part.body.to_s if mail.text_part
37
- content[:html_content] = html_content unless html_content.empty?
38
- content[:text_content] = text_content unless text_content.empty?
37
+ content[:html_content] = html_content unless html_content.nil?
38
+ content[:text_content] = text_content unless text_content.nil?
39
+ elsif mail.content_type.to_s.include? 'text/html'
40
+ content[:html_content] = mail.body.to_s
39
41
  else
40
42
  content[:text_content] = mail.body.to_s
41
43
  end
@@ -1,3 +1,3 @@
1
1
  module Paubox
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paubox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paubox
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2018-04-17 00:00:00.000000000 Z
12
+ date: 2018-04-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -145,6 +145,7 @@ files:
145
145
  - lib/paubox/message.rb
146
146
  - lib/paubox/version.rb
147
147
  - lib/paubox_ruby.rb
148
+ - paubox-0.1.0.gem
148
149
  - paubox_ruby.gemspec
149
150
  homepage: https://www.paubox.com
150
151
  licenses: