Skip to main content

Send SMS messages to mobile devices through GABIA SMS api.

Project description

Python 2 & 3 compatible

https://travis-ci.org/athenaslab/gabia-sms-Django.svg?branch=master https://coveralls.io/repos/github/athenaslab/gabia-sms-Django/badge.svg?branch=master

Installation

You can install the library directly from pypi using pip:

$ pip install gabia-sms-Django

Edit your settings.py file:

GABIA_SMS_SETTINGS = {
    'SENDER': 'YOUR NUMBER',
    'API_ID': 'YOUR API ID,
    'API_KEY': 'YOUR API KEY'
}

Dependencies

  • Python 2.7 or 3.4+

  • Django 1.11+

Quickstart

Send sms message to use shortcut function

import gabia_sms

try:
    # Send single SMS
    gabia_sms.send(message='message', receiver='will receive phone number')

except SMSModuleException:
    print('SMS send failure')
  • SMS Types: [‘sms’, ‘lms’, ‘multi_sms’, ‘multi_lms’]

  • Send function returning Tuple(Unique key, Result code)

More usage

import gabia_sms

try:
    # Reserve single SMS
    gabia_sms.send(
        message='message',
        receiver='will receive phone number',
        scheduled_time='2018-02-02 22:22:22'
    )

    # if not assign scheduled_time, send immediately
    gabia_sms.send(
        message='message',
        receiver='will receive phone number'
    )

    # Send multiple SMS
    gabia_sms.send(message='message', receiver=['phone number', '...'])
    gabia_sms.send(message='message', receiver=('phone number', '...'))

    # Reserve multiple SMS
    gabia_sms.send(
        message='message',
        receiver=['phone number', '...'],
        scheduled_time='2018-02-02 22:22:22'
    )

    # Cancel reservation
    gabia_sms.cancel_reservation('Unique key', 'SMS type')

    # Request result code
    gabia_sms.get_send_result('Unique key')

except SMSModuleException:
    print('SMS send failure')

Advanced usage

Inherit SMS class, override post_sent_sms / before_send_sms

import gabia_sms

class AdvancedSMSModule(gabia_sms.GabiaSMS):

  def post_sms_sent(self, param, *args, **kwargs):
     # ... Do what you need

  def before_send_sms(self, param, *args, **kwargs):
     # ... Do what you need

AdvancedSMSModule.send(message='message', receiver='will receive phone number')

or Use SingletonClass

import gabia_sms

class AdvancedSMSModule(gabia_sms.SingletonGabiaSMS):
    # ...
    pass

Contributors

See https://github.com/hwshim0810/gabia-sms-Django/graphs/contributors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

gabia_sms_Django-1.2.1-py3-none-any.whl (9.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page