An open API service indexing awesome lists of open source software.

https://github.com/seven-io/solidus

Send SMS from within solidus via seven
https://github.com/seven-io/solidus

e-commerce sms solidus solidus-extensions

Last synced: about 1 year ago
JSON representation

Send SMS from within solidus via seven

Awesome Lists containing this project

README

          

This extension adds the possibility to send SMS via seven.

## Installation

Add solidus_seven to your Gemfile:

```ruby
gem 'solidus_seven'
```

Bundle your dependencies and run the installation generator:

```shell
bin/rails generate solidus_seven:install
```
## Functionalities
### Bulk SMS
Send SMS to all your customers at once. You can filter by country, to target only customers from a specific country.

## Usage

An API key is required for sending.
It uses either SevenConfiguration[:api_key], ENV['SEVEN_DUMMY_API_KEY'] or ENV['SEVEN_API_KEY'] in this order depending on which value is set.

## Development

### Testing the extension

First bundle your dependencies, then run `bin/rake`. `bin/rake` will default to building the dummy
app if it does not exist, then it will run specs. The dummy app can be regenerated by using
`bin/rake extension:test_app`.

```shell
bin/rake
```

To run [Rubocop](https://github.com/bbatsov/rubocop) static code analysis run

```shell
bundle exec rubocop
```

When testing your application's integration with this extension you may use its factories.
Simply add this require statement to your `spec/spec_helper.rb`:

```ruby
require 'solidus_seven/testing_support/factories'
```

Or, if you are using `FactoryBot.definition_file_paths`, you can load Solidus core
factories along with this extension's factories using this statement:

```ruby
SolidusDevSupport::TestingSupport::Factories.load_for(SolidusSeven::Engine)
```

### Running the sandbox

To run this extension in a sandboxed Solidus application, you can run `bin/sandbox`. The path for
the sandbox app is `./sandbox` and `bin/rails` will forward any Rails commands to
`sandbox/bin/rails`.

Here's an example:

```
$ bin/rails server
=> Booting Puma
=> Rails 6.0.2.1 application starting in development
* Listening on tcp://127.0.0.1:3000
Use Ctrl-C to stop
```

### Updating the changelog

Before and after releases the changelog should be updated to reflect the up-to-date status of
the project:

```shell
bin/rake changelog
git add CHANGELOG.md
git commit -m "Update the changelog"
```

##### Support

Need help? Feel free to [contact us](https://www.seven.io/en/company/contact/).

[![MIT](https://img.shields.io/badge/License-MIT-teal.svg)](LICENSE)