New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

mensario

Package Overview
Dependencies
Maintainers
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

mensario

  • 0.3.0
  • Rubygems
  • Socket score

Version published
Maintainers
2
Created
Source

Mensario: a wrapper around Mensario API

This gem allows us to perform the following operations through the mensario API:

  • Send sms to mobile phone (allowing instant messages and programmed messages)
  • Check the status of sent messages
  • Cancel a programmed message

Config

There are three ways to set configuration parameters of Mensario:

Separately

Mensario::license =  "PERT123446423"
Mensario::username = "caer3456"

Block of code

Mensario::set_config do |m|
  m.license = "PERT123446423"
  m.username = "caer3456"
  m.password = "frt3gg5"
end

Through a YAML file

By default, Mensario expects a YAML configuration file in config/mensario.yml root path of our application.

The YAML file expects to have the following scheme:

:profilename:
    :license: ABCD1234
    :username: user0
    :password: pass0
:otherprofile:
    :license: ABDC1234
    :username: user1
    :password: pass1

If the config file is located in another location we have available the method Mensario::config in order to use some different configuration. The config options are:

  • :config -> Path to alternative config file
  • :profile -> Profile to load. Profile by default is :default

For example, using an alternative config file:

Mensario::config :config => /path/to/file.yml

Another example, using an alternative profile:

Mensario::config :profile => :otherprofile

Sending a message

To send a message, we need some options:

  • :sender -> Name of who send de message
  • :text -> Content of message
  • :code -> Country code of mobile
  • :phone -> Telephone number to send de message
  • :date -> Ruby Time object with the send date
  • :timezone -> Timezone of the send

All options are required except :date and :timezone:

  • If :date is undefined the message is sent inmediately.
  • If :timezone is undefined Mensario will use GMT+0

If a message is sent correctly the method return its id.

An example may be something like this:

opts = {
  :sender => 'Myself'
  :text => 'My message'
  :code => 34
  :phone => 123456789
  :timezone => 'Europe/Madrid'
}

Mensario::send_message opts

Get the status of message

To check the status of a messege we need to use Mensario::status with id of message that we want to consult. All states of a message are in Mensarios API.

For example:

Mensario::status 12345678

Cancel a programmed message

Only messages whose status is "CMS-PEND" can be cancelled. The method Mensario::destroy cancels them.

For example:

Mensario::destroy 12345678

Check balance remaining

Method Mensario::balance allow us to consult balance

For example:

Mensario::balance

Handle errors

If a request error occurs or the api responds with an error, Mensario throw an exception of type MensarioException. Depending on the type of error, there are several exceptions that inherit from MensarioException:

  • MensarioApiException. For errors sent by the api. Has the property status that contains the error code returned by Mensario.
  • MensarioHttpException. If a problem occurs with the HTTP request.

About

Mensario is a gem developed by NoSoloSoftware.

License

Mensario is Copyright 2011 NoSoloSoftware, it is free software.

Mensario is distributed under GPLv3 license. More details can be found at COPYING file.

FAQs

Package last updated on 13 Dec 2011

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc