Skip to main content

SMPP 3.4 client built on Twisted / Python3

Project description

smpp.twisted

Test Coverage Status

SMPP 3.4 client built on Twisted

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

Example

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

class SMPP:

    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()

Credits

  • Thanks to rtrdev for adding support for SMPP servers
  • Thanks to Fourat Zouari for finding and fixing an enquirelinks bug

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

smpp.twisted3-0.8.tar.gz (22.6 kB view details)

Uploaded Source

File details

Details for the file smpp.twisted3-0.8.tar.gz.

File metadata

  • Download URL: smpp.twisted3-0.8.tar.gz
  • Upload date:
  • Size: 22.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/68.1.2 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.18

File hashes

Hashes for smpp.twisted3-0.8.tar.gz
Algorithm Hash digest
SHA256 f172f1c37ea3653db2fed258990b27f94c2f4f8897715aef5c2e04c9cb1bec56
MD5 63afdeb6e5d41150966c6496b848671b
BLAKE2b-256 f32b9f822d9ae39e7ee0326216d2dc94424c526013ab50127c27aefd5f33d367

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 Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page