Skip to main content

send text messages with bulksmszw api

Project description

BulkSmsZW-Api

  • bulksmszw api for sending affordable text messages in Python
  • for Embedded device supported library in C++ for ESP8266-Arduino boards for IoT check out the ported library bulksms ESP8266

Installation

  • make sure git is installed on your system or download repo as zip
  • In cmd or terminal do
$ git clone https://github.com/DonnC/BulkSmsZW-Api.git
$ cd BulkSmsZW-Api
$ python setup.py install
  • or directly with pip, python3.x
$ pip install bulksmszw

demo gif

Authentication details

  • register an account on bulksms website
  • if already have an account, login on bulksms web portal
  • Got to "My Account", then Click on "User Configuration", to obtain "Webservices token".

Sending default message

  • test file test_api.py
  • recipients is passed as a list of bulksms valid format 2637xxxxxxxx, list can also contain groups #devteam and can be mixed
 api = Client(<username>, <token>)
 respond = api.send("hello guys", ['2637xxxxxxxx', '#devteam', '#students'])
  • Example script
from BulkSmsApi.Client import Client

bulksms = Client(<username>, <web-token>)

response = bulksms.send(body="bulk sms ZW api testing", recipients=['2637xxxxxxxx', '2637yyyyyyyy'])

print(response)
  • On successful run, the response default message respond

test run gif

Send message and get credits(text messages) left

  • credits flag by default is set to False
  • to receive the number of credits on your web portal, set the credit flag to True
api = Client(<username>, <token>)

credits_response = api.send(body="hello world", recipients=['2637xxxxxxxx'], credits=True)

print(credits_response)

credits response

Catch BulkSmsZw status errors as python exceptions

  • You can wrap your code in a try - except to catch unsuccessful and bulksms error messages as normal python exceptions
# this wil throw an exception because of the wrong / not valid username

bulksms = Client(username=<wrong-username>, token=<web-token>)

try:
    response = bulksms.send(body="bulk sms ZW api testing", recipients=['2637xxxxxxxx', '2637yyyyyyyy'])
    print(response)

except Exception as exc:
    print("Encountered an Error: %s" %exc)

bulksms exception

Responses

  • responses are in default JSON format used by BulkSMSZW service

acknowledgements

  • Big shoutout to the BulkSMS ZW team
  • Original bulksms python api script
  • All credits to the Bulk SMS ZW Team

HTTP API

TODO

  • Schedule messages
  • Validate phone numbers

get in contact

Project details


Release history Release notifications

This version

1.2.0

Download files

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

Files for Bulksmsapi-zw, version 1.2.0
Filename, size File type Python version Upload date Hashes
Filename, size Bulksmsapi_zw-1.2.0-py3-none-any.whl (5.8 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size Bulksmsapi-zw-1.2.0.tar.gz (4.4 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page