Blower.io

This add-on is operated by Ruby Pond Ltd

Easy SMS messaging

Blower.io

Last Updated: 19 March 2014

The Blower.io add-on is currently in beta.

Table of Contents

Blower.io is an add-on for providing simple SMS messaging.

Adding SMS functionality to an application allows you to do account verification, offline alerting, send promotional offers, or any number of other possibilities simply by sending a message to both tradition mobile phones and smartphones.

Blower.io is accessible via a REST API and has easy integration options for any language and framework. Examples have been included for Ruby and Python.

Provisioning the add-on

Blower.io can be attached to a Heroku application via the CLI:

A list of all plans available can be found here.

$ heroku addons:add blowerio
-----> Adding blowerio to sharp-mountain-4005... done, v18 (free)

Once Blower.io has been added a BLOWERIO_URL setting will be available in the app configuration and will contain the canonical URL used to access the newly provisioned Blower.io service instance. This can be confirmed using the heroku config:get command.

$ heroku config:get BLOWERIO_URL
http://user:pass@api.blower.io/

After installing Blower.io the application should be configured to fully integrate with the add-on.

Local setup

Environment setup

After provisioning the add-on it’s necessary to locally replicate the config vars so your development environment can operate against the service.

Though less portable it’s also possible to set local environment variables using export BLOWERIO_URL=url.

Use Foreman to configure, run and manage process types specified in your app’s Procfile. Foreman reads configuration variables from an .env file. Use the following command to add the BLOWERIO_URL value retrieved from heroku config to .env.

$ heroku config -s | grep BLOWERIO_URL >> .env
$ more .env

Credentials and other sensitive configuration values should not be committed to source-control. In Git exclude the .env file with: echo .env >> .gitignore.

Using with Ruby

Ruby applications will need to add the following entry into their Gemfile specifying the Rest Client client library.

gem 'rest-client'

Update application dependencies with bundler.

$ bundle install

Then from within your application you can send an SMS by:

blowerio = RestClient::Resource.new(ENV['BLOWERIO_URL'])
blowerio['/messages'].post :to => '+14155550000', :message => 'Hello from Blower.io'

Using with Python

In Python we recommend using the Requests library. The send a messaging using Blower.io with Requests do the following:

import os
import requests
requests.post(os.environ['BLOWERIO_URL'] + '/messages', data={'to': '+14155550000', 'message': 'Hello from Blower.io'})

Dashboard

For more information on the features available within the Blower.io dashboard please see the docs at blower.io/docs.

The Blower.io dashboard allows you to see your current and historical usage.

The dashboard can be accessed via the CLI:

$ heroku addons:open blowerio
Opening blowerio for sharp-mountain-4005…

or by visiting the Heroku apps web interface and selecting the application in question. Select Blower.io from the Add-ons menu.

Migrating between plans

Application owners should carefully manage the migration timing to ensure proper application function during the migration process.

Use the heroku addons:upgrade command to migrate to a new plan.

$ heroku addons:upgrade blowerio:smallbiz
-----> Upgrading blowerio:smallbiz to sharp-mountain-4005... done, v18 ($49/mo)
       Your plan has been updated to: blowerio:smallbiz

Removing the add-on

Blower.io can be removed via the CLI.

This will destroy all associated data and cannot be undone!

$ heroku addons:remove blowerio
-----> Removing blowerio from sharp-mountain-4005... done, v20 (free)

Support

All Blower.io support and runtime issues should be submitted via one of the Heroku Support channels. Any non-support related issues or product feedback is welcome at support@blower.io.