$npx skillfedfor your agent

smpplib

SMPP library for python

With conditionsPyPI LibrariesReleased Jan 202574.8K downloads / mocopyleft licensePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — smpplib-2.2.4-py3-none-any.whl
v2.2.4 · released 2025-01-17 · 1 runtime deps: six

Yes, if you need to integrate SMPP-based SMS into a Python application and have access to an SMPP gateway. The library is stable (Production/Stable classifier), has low install friction, and carries no known vulnerabilities. The dormant maintenance is a minor concern—no releases in 574 days—but the recent repository activity and broad Python version support suggest it remains functional. LGPLv3 copyleft licensing is a consideration if you plan to redistribute modified versions.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires an SMPP server endpoint (hostname and port) to connect to; credentials (system_id and password) must be valid for the target SMPP service.
  • Low install friction with a single lightweight dependency (six).
  • Maintenance is dormant—no releases in 574 days—but the repository remains active with a recent commit on 2025-01-17 and 189 stars, suggesting the codebase is stable rather than abandoned.

License · maintenance · safety

copyleft license (copyleft) — Licensed under LGPLv3 (copyleft). You may use and modify the library freely, but any modifications must be released under the same license, and the library itself must remain open-source in derivative works.

last release 2025-01-17 (574 days) · last repo commit 2025-01-17 · 189 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 74,827 downloads/mo, #14,787 on PyPI

Verify before relying

import smpplib.client
import smpplib.consts

client = smpplib.client.Client('example.com', SOMEPORTNUMBER)
client.connect()
client.bind_transceiver(system_id='login', password='secret')
pdu = client.send_message(
    source_addr='SENDER',
    destination_addr='PHONENUMBER',
    short_message=b'Hello',
    source_addr_ton=smpplib.consts.SMPP_TON_INTL,
    dest_addr_ton=smpplib.consts.SMPP_TON_INTL
)
client.listen()
  • Whether the dormant maintenance status poses a risk for future Python or SMPP protocol compatibility.
  • Whether six dependency will remain maintained as Python 2 support is phased out industry-wide.
Same gist for agents: .md · .json

What it is and what it does

smpplib is a Python SMPP (Short Message Peer-to-Peer) protocol client that enables applications to send and receive SMS messages through an SMPP gateway. It handles the low-level protocol details—PDU encoding/decoding, connection management, and message sequencing—so you can focus on application logic. The library supports multi-part messages with automatic splitting, multiple character encodings (including UCS2 for non-Latin scripts), delivery receipts, and bidirectional message handling via callback handlers.

You instantiate a client with a gateway hostname and port, authenticate with credentials, then send messages by specifying source and destination phone numbers, message content, and encoding flags. The library can listen for incoming messages either synchronously (blocking) or in a background thread, automatically managing keep-alive signals to the SMPP server. It also allows custom sequence number generation for persistence across application restarts.

Use it for

  • Send transactional SMS notifications (alerts, confirmations, OTPs) from a Python application to an SMPP gateway.
  • Build a two-way SMS application that receives and responds to incoming messages via SMPP.
  • Handle multi-part SMS with automatic splitting and character encoding for international text.
  • Integrate SMS delivery tracking by processing delivery receipts from the SMPP server.
  • Implement a persistent sequence number generator to maintain message tracking across application restarts.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need to integrate SMPP-based SMS into a Python application and have access to an SMPP gateway.

The library is stable (Production/Stable classifier), has low install friction, and carries no known vulnerabilities. The dormant maintenance is a minor concern—no releases in 574 days—but the recent repository activity and broad Python version support suggest it remains functional. LGPLv3 copyleft licensing is a consideration if you plan to redistribute modified versions.

Install

smpplib on PyPI

Before you install

Low install friction with a single lightweight dependency (six). Maintenance is dormant—no releases in 574 days—but the repository remains active with a recent commit on 2025-01-17 and 189 stars, suggesting the codebase is stable rather than abandoned.

Requires an SMPP server endpoint (hostname and port) to connect to; credentials (system_id and password) must be valid for the target SMPP service.

License in practice

Licensed under LGPLv3 (copyleft). You may use and modify the library freely, but any modifications must be released under the same license, and the library itself must remain open-source in derivative works.

Quickstart

import smpplib.client
import smpplib.consts

client = smpplib.client.Client('example.com', SOMEPORTNUMBER)
client.connect()
client.bind_transceiver(system_id='login', password='secret')
pdu = client.send_message(
    source_addr='SENDER',
    destination_addr='PHONENUMBER',
    short_message=b'Hello',
    source_addr_ton=smpplib.consts.SMPP_TON_INTL,
    dest_addr_ton=smpplib.consts.SMPP_TON_INTL
)
client.listen()

Verify before relying

  • Whether the dormant maintenance status poses a risk for future Python or SMPP protocol compatibility.
  • Whether six dependency will remain maintained as Python 2 support is phased out industry-wide.

Package facts

Licensecopyleft license copyleft
Python supportNot specified
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
six
MaintenanceDormant 574 days since the last release
Last repo commit
First released
Downloads74,827 / month, #14,787 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: Telecommunications IndustryLicense :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Topic :: CommunicationsTopic :: Communications :: TelephonyTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python Modules

Evidence: smpplib-2.2.4-py3-none-any.whl

Tags

Capabilities
SMPP client librarySMS gateway protocolsend SMS programmaticallySMPP protocol pythonSMS delivery receiptsmulti-part message handlingtelecommunications protocol
Topics
sms-gatewaytelecommunicationsprotocol-client

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “SMPP client library”

  • smpplibSMPP protocol client library for sending and receiving SMS messages…
  • conjure-python-clientA lightweight HTTP client library built on requests that handles RPC…
  • paypalhttpPayPalHttp is a generic HTTP client library designed to work with…

Give your agent the search over MCP, or paste the wish link into any chat.

More Libraries packages

urllib3 Worth it
PyPI · Libraries · released May 2026

urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.

MITpure Python · 3.10+
1.8Bdownloads / mo
requests Worth it
PyPI · Libraries · released May 2026

Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.

Apache-2.0pure Python · 3.10+
1.8Bdownloads / mo
pluggy Worth it
PyPI · Libraries · released May 2025

Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.

Install it if you're building an extensible application or framework.

MITpure Python · 3.9+aging
1.3Bdownloads / mo
python-dateutil Worth it
PyPI · Libraries · released Mar 2024

Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.

Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.

Apache-2.0pure Python
1.2Bdownloads / mo
six With conditions
PyPI · Libraries · released Dec 2024

Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.

MITpure Python
1.2Bdownloads / mo
pytest Worth it
PyPI · Libraries · released Jun 2026

pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.

MITpure Python · 3.10+
1.1Bdownloads / mo

See also azure-communication-sms · zulip · clx-sdk-xms · ringcentral · sendgrid · vonage · smsapi-client · vonage-sms · telesign · vonage-messages