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()
===============================================
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 | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ptsmpp-0.1.0.tar.gz
(111.6 kB
view hashes)