Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

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

Project details


Download files

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

Files for gabia-sms-Django, version 1.2.1
Filename, size File type Python version Upload date Hashes
Filename, size gabia_sms_Django-1.2.1-py3-none-any.whl (9.3 kB) File type Wheel Python version py3 Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page