Skip to main content

greensms-python

GitHub release (latest by date) PyPI - Python Version GitHub Workflow Status Coveralls github

Documentation

The documentation for the GREENSMS API can be found here.

Installation

pipenv install greensms

or

pip install greensms

Sample Usage

Check out these code examples to get up and running quickly.

from greensms.client import GreenSMS

# Register at my.greensms.ru first
client = GreenSMS(user='test', password='test')

response = client.sms.send(to='71231234567', txt='Message to deliver')
print(response.request_id) # or print(response['request_id'])

Environment Variables

greensms-python supports credential storage in environment variables. If no credentials are provided following env vars will be used: GREENSMS_USER/GREENSMS_PASS OR GREENSMS_TOKEN.

Token Auth

from greensms.client import GreenSMS

# Register at my.greensms.ru first
client = GreenSMS(token='yourtoken')

response = client.account.balance()
print(response.balance)

Compatibility

greensms-python is compatible with Python 2.7 and Python 3.4 onwards until the latest Python 3.11 version

Methods

  • You can either use username/password combination or auth token to create an object with constructor
  • All methods support named **kwargs
  • Each API Function is available as MODULE.FUNCTION()
  • Parameters for each API can be referred from here
  • Response keys can be used as dictionary keys response['key'] or properties response.key
  • Response keys by default are available in snake_case. If you want to use camelCase, then pass use_camel_case=true, in the constructor

Handling Exceptions

  • Exceptions for all APIs are thrown with RestError class. It extends the default Python Exception class.
  • Each error, will have error, code, message, errorType fields.
  • In case of Validation Error, additional params are available to show field-wise rule failures. Can be accessed by e.params property on the error object

Getting help

If you need help installing or using the library, please contact us: support@greensms.ru.

If you've instead found a bug in the library or would like new features added, go ahead and open issues or pull requests against this repo!

Contributing

Bug fixes, docs, and library improvements are always welcome. Please refer to our Contributing Guide for detailed information on how you can contribute. If you're not familiar with the GitHub pull request/contribution process, this is a nice tutorial.

Getting Started

If you want to familiarize yourself with the project, you can start by forking the repository and cloning it in your local development environment. The project requires Node.js to be installed on your machine.

After cloning the repository, install the dependencies by running the following command in the directory of your cloned repository:

pip install -r requirements.txt

In addition to this, we recommend running the setup with virtualenv, for creating an isolated Python development environment.

GreenSMS has all the unit tests defined under tests folder with _test.py extension. Although it uses Python Unittest, we recommended that you test with py.test. PyTest supports Python unit tests out of the box and is faster for running the tests in bulk.

pytest tests

We also support tox for automate env/interpretor wise testing. Support versions are added to tox.ini. Dependencies added in root requirements.txt are supposed to be added to tests/requirements.txt as well.

You can install and run tox for the project with the following commands.

pip install tox  # Install tox

tox # Run test

Metadata

Release files for greensms 2.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for greensms 2.0.1
File Size Uploaded
greensms-2.0.1.tar.gz 11.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for greensms 2.0.1
File Interpreter ABI Platform
greensms-2.0.1-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 24.2 kB

Release files / greensms-2.0.1.tar.gz

Download URL greensms-2.0.1.tar.gz
Size 11.7 kB
Tags Source
SHA-256 checksum
How to use checksums
1796caf5747b8f9957cbdae53bdc8b058a401204d989c2d73bf7288bb3285d0a
BLAKE2b-256 checksum
How to use checksums
47d158174f71c359d2d746f0939f8fca388e25c843c48833401f3f5b2d42a112
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release files / greensms-2.0.1-py2.py3-none-any.whl

Download URL greensms-2.0.1-py2.py3-none-any.whl
Size 12.5 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
d0e74119c8390dd8ca6eb37aeb148cd400f562234d9e6d431256aa0007532154
BLAKE2b-256 checksum
How to use checksums
011ae3e638d1bd6fe6d05839314bf11490d61dc73bcc71afb66cbabb1b97d7ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Release history Release notifications | RSS feed

This release

2.0.1 This release

2 release files

2.0.0

2 release files

1.6.0

2 release files

1.3.0

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page