mBuilder is an ideal tool if you need to build flexible SMS apps and don’t want to spend lots of time building something custom from scratch.
mBuilder is a Ruby on Rails application. It uses/depends on:
- ruby (= 2.0.0-p353) specified in
- rails (~> 3.2.17)
- mysql for storing applications logic
- delayed_job for running periodic tasks
- elasticsearch (>= 1.1) for storing application data
- nuntium for sending/receving sms messages. more
- guisso (optional) in order to integrate with InSTEDD's Single Sign-On. more
- resourcemap (optional) in order to read/write data to resourcemap collections. more
- Setup rails project as usual.
$ bundle && rails db:create db:schema:load
- Configure Nuntium (optional).
- Configure Guisso
Configure Nuntium (optional for dev)
config/nuntium.yml already exists that uses a development account binding to nuntium.instedd.org . Usually this is enough for developping/testing mBuilder in an isolated scenario.
If you want to use a nuntium gateway to send/receive real SMS you will need to setup a nuntium application with a public mbuilder hostname. Or host your own Nuntium server.
Guisso, Use InSTEDD Single Sign-On
config/guisso.yml needs to be create. InSTEDD applications aim to work with a Single Sign-On servise at http://login.instedd.org . A
guisso.yml can be downloaded after an application is configured at the Single Sign-On server.
The most common scenario for development is to setup an application with hostname
local.instedd.org:3000 and add the entry
127.0.0.1 local.instedd.org to your
/etc/hosts. This will allow cookies at
*.instedd.org to be shared between login and mBuilder.
Yet mBuilder can be hosted with any hostname.
Use local stored users
All InSTEDD application are also able to run isolated from a login server. In this mode users are managed by devise
docker-compose.yml file build a development environment mounting the current folder and running rails in development environment.
Run the following commands to have a stable development environment.
$ docker-compose run --rm --no-deps web bundle install $ docker-compose up -d db $ docker-compose run --rm web rake db:setup $ docker-compose up
To setup and run test, once the web container is running:
$ docker-compose exec web bash root@web_1 $ rake
powered by capistrano.
$ HOSTS=<server> cap deploy.
Configuration files are symlinked in a shared path. check