{"id":16679687,"url":"https://github.com/buren/stupid_sms","last_synced_at":"2025-04-09T22:32:40.847Z","repository":{"id":59156743,"uuid":"71780218","full_name":"buren/stupid_sms","owner":"buren","description":"Send bulk SMS using Twilio with ease.","archived":false,"fork":false,"pushed_at":"2021-11-30T00:46:51.000Z","size":40,"stargazers_count":2,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T00:26:34.230Z","etag":null,"topics":["bulk-sms","gem","ruby","sms","twilio"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/buren.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-10-24T11:00:04.000Z","updated_at":"2022-03-11T19:51:44.000Z","dependencies_parsed_at":"2022-09-13T20:10:14.766Z","dependency_job_id":null,"html_url":"https://github.com/buren/stupid_sms","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buren%2Fstupid_sms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buren%2Fstupid_sms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buren%2Fstupid_sms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buren%2Fstupid_sms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/buren","download_url":"https://codeload.github.com/buren/stupid_sms/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247631812,"owners_count":20970064,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bulk-sms","gem","ruby","sms","twilio"],"created_at":"2024-10-12T13:36:53.220Z","updated_at":"2025-04-09T22:32:40.811Z","avatar_url":"https://github.com/buren.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# StupidSMS\n\nSend bulk SMS using Twilio.\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'stupid_sms'\n```\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install stupid_sms\n\n## Usage\n\n__Configuration__\n\n```ruby\nStupidSMS.configure do |config|\n  config.from_number  = '...' # or set env var TWILIO_ACCOUNT_SID\n  config.auth_token   = '...' # or set env var TWILIO_AUTH_TOKEN\n  config.account_sid  = '...' # or set env var TWILIO_NUMBER\n  config.country_code = 'SE' # two character country code (SE is the default)\nend\n```\n\n__Send one SMS__:\n\n```ruby\nStupidSMS.send(recipient: recipient, body: body)\n```\n\n__Send SMS in bulk__:\n\nTo send SMS in bulk you construct a special CSV file. The only required column is `phone`.\nYou include a template string that can include dynamic content, i.e 'Hi %{first_name}'. If you\ndo include such content in the template we'll look for a column in the CSV-file with the\nname `first_name`.\n\n:warning: You need to escape '%' chars with '%%' otherwise `'%': malformed format string - %! (ArgumentError)` will be raised.\n\n`file.csv`:\n\n```csv\nphone,first_name\n+46735000000,Jacob\n```\n\n```ruby\ncsv = File.read('file.csv')\ntemplate = 'Hi %{first_name}!'\nStupidSMS.send_in_bulk(csv_string: csv, template: template)\n```\n\nfull options:\n\n```ruby\ncsv = File.read('file.csv')\nStupidSMS.send_in_bulk(\n  csv_string: csv,\n  template: 'Hello World!',\n  delimiter: ',',\n  dry_run: false,\n  max_threads: 5\n)\n```\n\n__CLI__\n\n```bash\nstupid_sms --csv testfile.csv --template template.txt --dry-run=true\n```\n\n\n```\nUsage: stupid_sms [options]\n        --csv=file.csv               CSV file path (a phone header column is required)\n        --template=template.txt      Template file path (note: you need to escape % with %%)\n        --delimiter=;                CSV delimiter (default: ,)\n        --country-code=se            Country code (default: se)\n        --max-threads=5              Max parallel threads (default: 5)\n        --from-number=\"+46735000000\" Twilio from number\n        --account-sid=se             Twilio account SID\n        --auth-token=XXXYYYZZZ       Twilio auth token\n        --[no-]dry-run               Dry run (default: true)\n    -h, --help                       How to use\n```\n\n## Development\n\nAfter checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.\n\nTo install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/buren/stupid_sms.\n\n## License\n\n[MIT License](LICENSE.txt)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fburen%2Fstupid_sms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fburen%2Fstupid_sms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fburen%2Fstupid_sms/lists"}