Skip to main content

PTSMPP - Python Twisted SMPP 3.4 client library

Project description

PTSMPP - Python Twisted SMPP 3.4 client library
===============================================

This is a mixdown version of smpp.pdu and smpp.twisted packages found at
github. It also includes enum package. The enum package was put to ptsmpp
package in order to eliminate a dependency conflict: the smpp.twisted
package requires pyOpenSSL package, which requires cryptography package,
which requires enum34 package, which conflicts with the enum package,
which is required by both smpp.pdu and smpp.twisted packages.


SMPP 3.4 Protocol Specification
-------------------------------

http://www.nowsms.com/discus/messages/1/24856.html


Debian packages
---------------

https://github.com/xanderdin/ptsmpp-dist-debian


Usage example
-------------

import logging
from twisted.internet import reactor, defer
from ptsmpp.twisted.client import SMPPClientTransceiver, SMPPClientService
from ptsmpp.twisted.config import SMPPClientConfig

class SMPP(object):

def __init__(self, config=None):
if config is None:
config = SMPPClientConfig(host='localhost', port=999,
username='uname', password='pwd')
self.config = config

@defer.inlineCallbacks
def run(self):
try:
#Bind
smpp = yield SMPPClientTransceiver(
self.config, self.handleMsg).connectAndBind()
#Wait for disconnect
yield smpp.getDisconnectedDeferred()
except Exception, e:
print "ERROR: %s" % str(e)
finally:
reactor.stop()

def handleMsg(self, smpp, pdu):
"""
NOTE: you can return a Deferred here
"""
print "Received pdu %s" % pdu

if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG)
SMPP().run()
reactor.run()

Project details


Release history Release notifications

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
ptsmpp-0.1.0.tar.gz (111.6 kB) Copy SHA256 hash SHA256 Source None

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