Project

smsru

0.01
No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
http://sms.ru api integration for ruby
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.7
~> 10.0
~> 3

Runtime

~> 2.4
~> 1.20
 Project Readme

SmsRu

Gem Version Code Climate

This gem is API for sending sms through sms.ru service. SmsRu allows you to connect to sms.ru api without Net::HTTP syntax sugar. Check API to list of all available queries.

Installation

WARNING There is outdated ruby gem sms_ru, so name of this gem is **smsru**

Add this line to your application's Gemfile:

gem 'smsru', require: 'sms_ru'

And then execute:

$ bundle

Usage

After you add 'sms_ru' to your Gemfile, you need to run the generator:

rails generate sms_ru:install

The generator will install an initializer to config/initializers/sms_ru.rb. Here you can set app_id

  SmsRu.setup do |config|
    config.api_id = Rails.application.secrets.sms_ru_key
  end

Also you can setup default settings for every sms.ru API query

  SmsRu.setup do |config|
    ...
    config.queries.sms.send.from = 'fasteria.ru'
  end

Example:

  SmsRu.sms.send(api_id: 'abcdef', to: '79112223344', text: 'Sample message') # => '100\n000-00000'
  SmsRu.my.balance # => '100\n87.79'
  # et.c.

You can specify delivery_method for SmsRu gateway. For example, if you don't want to send a messages, but don't want to make queries to the API:

  # config/environments/development.rb
  config.sms_ru.delivery_method = :launchy # every query to sms.ru api will open new tab in the browser
  # config/environments/test.rb
  config.sms_ru.delivery_method = :webmock # you'll get mocked success answer

Default delivery_method is :direct

Contributing

  1. Fork it ( https://github.com/asiniy/sms_ru/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request