Skip to main content

Python library for creating GSM-7 compatible SMS messages

Installation

pip install py-smsify

Standalone Functions

from py_smsify import SmsMessage

# Encode python string into a GSM-7 python encoded string
SmsMessage.encode(string: str) -> str

# Encode a unicode string to a bytearray of SMS characters
SmsMessage.message_encode(string: str) -> bytearray

Usage

from py_smsify import SmsMessage

#Encode to a string of valid characters
message = SmsMessage("Cool Message!").encoded_text
# result: Cool Message!

#Encode to a python bytestring
message = SmsMessage("Cool Message!").encoded_bytes
# result: b"Cool Message!"

#Encode with non latin languages/characters
message = SmsMessage("酷短信!").encoded_text
# result: KuDuanXin!

#Encode with emojis
message = SmsMessage("Cool😎 Message✉️").encoded_text
# result: "Cool:sunglasses: Message:envelope:"

Message Stats

from py_smsify import SmsMessage

#Get message length in bytes
message = SmsMessage("Cool Message!").length
# result: 13 bytes
message = SmsMessage("He\\o W{}rld!").length #{} are characters from the extended table and therefore require 2 bytes of space
# result: 15 bytes

#Get amount of segments the message will be split to
message = SmsMessage("Cool Message!").segments
# result: 1 message

#You can also have it calculate segment count with twilio message headers in mind
message = SmsMessage("Cool Message!",twilio=True).segments
# result: 1 message

Release files for py-smsify 0.2.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 py-smsify 0.2.1
File Size Uploaded
py-smsify-0.2.1.tar.gz 3.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for py-smsify 0.2.1
File Interpreter ABI Platform
py_smsify-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 7.3 kB

Release files / py-smsify-0.2.1.tar.gz

Download URL py-smsify-0.2.1.tar.gz
Size 3.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d2d98b20467be43ca6e507cf957a9a257dbdf53fa27f7777afb1469657e8a006
BLAKE2b-256 checksum
How to use checksums
2b39274c35d20138a9652f3c6f386c8dd560b61f224fb009fb8f9f952cb6c7df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.9.9 Windows/10

Release files / py_smsify-0.2.1-py3-none-any.whl

Download URL py_smsify-0.2.1-py3-none-any.whl
Size 3.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fe63fa2d2d41d0bcd8a1184afdb03aab45d529a80a9e214edfb879d2e3ed7db7
BLAKE2b-256 checksum
How to use checksums
e0643a895e369cf4f96131ea2f302e7a5bb5d630197714a181be00f97923cf6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.9.9 Windows/10

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

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