Skip to main content

Send SMS via Gmail SMTP servers.

Project description

Image

PySendSMS

pysendsms is a quick and simple way to use python to send SMS via Gmail or any other SMTP servers to known a cell carrier.

Installation

Use the package manager pip to install pysendsms.

pip install pysendsms

Requires

Note: Other SMTP servers can be used, however configuration varies by providers. Gmail is setup to work by default just requiring email and password.

  • Knowledge of which cell carrier provider the receiving party uses.

Usage

Import the library and create an SMS Object utilizing your gmail account and an application password created within your Google account.

import pysendsms

sms = pysendsms.SMS('<username>@gmail.com', '<app-password>')

SMS object has various parameters allowing you to use some other SMTP providers of your choice.

sms = pysendsms.SMS(self,
		username='<username>@gmail.com',
		password= '<app-password>',
		from_email=None,
		server='smtp.gmail.com',
		port=587,
		tls=True)

Note: If using an SMTP API and you are given a username that is not an email address, you must provide the a verified from_email parameter otherwise outgoing mail with fail.

Create an Contact object using the persons phone number and select a carrier from the available options.

CARRIERS is a dictionary loaded from a json file in the project that can be checked for available carriers that can be used for messaging.

>>> pysendsms.Contact('2715552343', 'AT&T')
<Contact('2715552343', '@mms.att.net')>

A Contact can also be created with a known address using the by_address class method.

>>> pysendsms.Contact.by_address('2715552343@mms.att.com')
<Contact('2715552343@mms.att.com')>

Note: Given the nature of this capability, you are able to just add any email address here and not one linked to a phone number for standard SMTP emailing functionality.

Use the SMS.send() method of your SMS object, passing the Contact and the message you would like to send as a string. This can also accept a list of contacts for sending out group messages.

contact1 = pysendsms.Contact('311-555-2368', 'AT&T')

sms.send(contact1, 'Hello, World!')

contact2 = pysendsms.Contact.by_address('3115552368@mms.att.net')

group = [contact1, contact2]

sms.send(group, 'Everyone gets a message!')

License

MIT

Project details


Download files

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

Source Distribution

pysendsms-0.2.1.tar.gz (9.1 kB view details)

Uploaded Source

File details

Details for the file pysendsms-0.2.1.tar.gz.

File metadata

  • Download URL: pysendsms-0.2.1.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.2

File hashes

Hashes for pysendsms-0.2.1.tar.gz
Algorithm Hash digest
SHA256 f36c38b5397b92df5b5ad5ec9cb755ebce1207e884367e0ccc7675a6e471fefd
MD5 c9aa85915fa97ba9ab60bfe92c3d87be
BLAKE2b-256 bd32d701237fb6369ae7d9223ad1a38862687501aeece86174fbc56b5bd7ecd1

See more details on using hashes here.

Supported by

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