Message Bus Ruby API
Installation
gem install messagebus_ruby_api
Basic Use
Start by requiring MessabusApi:
require 'messagebus_ruby_api'
client = MessagebusApi::Messagebus.new("<INSERT_YOUR_API_KEY>")
Sending a single message
Create Required Parameters
params = { :toEmail => '[email protected]',
:toName => 'EmailUser',
:fromEmail => '[email protected]',
:fromName => 'API',
:subject => 'Unit Test Message',
:customHeaders => ["sender"=>"[email protected]"],
:plaintextBody => 'This message is only a test sent by the Ruby Message Bus client library.',
:htmlBody => "<html><body>This message is only a test sent by the Ruby Message Bus client library.</body></html>",
:tags => ['RUBY']
}
Send the message
client.add_message(params)
Examples
The provided examples illustrate how to:
- send a single email message in the simplest way
- send one or more emails (where the email body is passed with the api call)
- send one or more templated emails (where a key referencing a previously stored email body is passed with the api call)
- create a mailing list, add and delete mailing list entries and list the existing mailing lists
- list recent email unsubscribes
- list recent email statistics
- list recent delivery errors
ActionMailer
If you are using ActionMailer (ex. in Rails,) you can leverage the Messagebus API via the following to send emails. You can add the following lines to your environmental configuration such as ./rails_project/config/environments/production.rb
ActionMailer::Base.add_delivery_method :messagebus, MessagebusApi::Messagebus, "<APIKEY>"
config.action_mailer.delivery_method = :messagebus
Be sure to replace <APIKEY> with your APIKEY.
SSL Certificates
If you encounter SSL certificate problems, use the cacert_info() method to specify a
cacert.pem file (remember to specify the full path).
The curl site has an up to date version of the file:
http://curl.haxx.se/ca/cacert.pem
Tests
To run the tests, issue the following command from the root of the project:
bundle exec rspec spec/messagebus_ruby_api/client_spec.rb
License
Copyright 2012 Mail Bypass, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
either express or implied. See the License for the specific language governing permissions
and limitations under the License.
More info
Contact Message Bus if you have questions or problems (https://www.messagebus.com/contact)