New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement SMPP Server API #49

Closed
farirat opened this Issue Oct 8, 2014 · 7 comments

Comments

Projects
None yet
4 participants
@farirat
Contributor

farirat commented Oct 8, 2014

No description provided.

@farirat farirat self-assigned this Oct 8, 2014

@farirat farirat added this to the v0.6 milestone Oct 8, 2014

@pyghassen

This comment has been minimized.

Show comment
Hide comment
@pyghassen

pyghassen Oct 8, 2014

Contributor

You mean restful API?

Contributor

pyghassen commented Oct 8, 2014

You mean restful API?

@farirat

This comment has been minimized.

Show comment
Hide comment
@farirat

farirat Oct 8, 2014

Contributor

No, as of 0.5.0 Jasmin have a SMPP Client connector, it is used to connect to operators and service providers, in next release, Jasmin will provide a SMPP Server so it can act as an operator/service provide too.

Contributor

farirat commented Oct 8, 2014

No, as of 0.5.0 Jasmin have a SMPP Client connector, it is used to connect to operators and service providers, in next release, Jasmin will provide a SMPP Server so it can act as an operator/service provide too.

farirat added a commit to farirat/jasmin that referenced this issue Nov 18, 2014

Related to #49
Updated jasmin.vendor.smpp to the latest releases from:

 - https://github.com/mozes/smpp.twisted
 - https://github.com/mozes/smpp.pdu

farirat added a commit to farirat/jasmin that referenced this issue Nov 18, 2014

Fixed logging after updating jasmin.vendor.smpp.*
Related to #49, after updating jasmin.vendor.smpp.* in the previous
commit, logging have started to be verbose and display everything on
console.

This was resolved by stopping propagation (logger.propagate = False),
didnt dig more into the updated code to know why the update have changed
the way logger is behaving.

farirat added a commit to farirat/jasmin that referenced this issue Nov 18, 2014

Fixing tests
Related to #49, after updating jasmin.vendor.smpp.* the smpp_server seems to have
a misbehaving logger that display everything on console.

Skipped all tests from vendor right now

farirat added a commit to farirat/jasmin that referenced this issue Nov 21, 2014

Added smpp server implementation
Related to #49, Still work in progress

farirat added a commit to farirat/jasmin that referenced this issue Nov 21, 2014

Testing SMPP Server
Related to #49, integrated router into the tests (as the central source of
user passwords and credentials) and will look to implement a credential_checker
on top of it.

At this stage (current commit), SmppsRealm is geting the avatar from router
and running some pre/post connection hooks to update statistics

farirat added a commit to farirat/jasmin that referenced this issue Nov 21, 2014

farirat added a commit to farirat/jasmin that referenced this issue Nov 21, 2014

Related to #49
SMPP Server authentication is now based on Router

farirat added a commit to farirat/jasmin that referenced this issue Nov 21, 2014

Related to #49
- systems are no more handled through config
- smpps_credential created for user with bind authorization and max_bindings quota
- smpps_credential handled in RouterAuthChecker

farirat added a commit to farirat/jasmin that referenced this issue Nov 22, 2014

Related to #49
- Reimplemented authorization and quota checking inside factory's canOpenNewConnection()
- User's SMPPs stats updating on bind/unbind

farirat added a commit to farirat/jasmin that referenced this issue Nov 25, 2014

Related to #49
- Tested if removeBinding() is called when the client lose the connection
  before issuing an unbind request

farirat added a commit to farirat/jasmin that referenced this issue Nov 25, 2014

Related to #49
ANY PDURequest will set user's last_activity_at

farirat added a commit to farirat/jasmin that referenced this issue Nov 25, 2014

Related #49
Testing inactivity on server side

farirat added a commit to farirat/jasmin that referenced this issue Nov 25, 2014

Related to #49
Tested message transmission fidelity
@sah-anshu

This comment has been minimized.

Show comment
Hide comment
@sah-anshu

sah-anshu Nov 28, 2014

Hi I have been testing v0.6.0 but didn't found any option to issue smpp credentials/listen smpp port

sah-anshu commented Nov 28, 2014

Hi I have been testing v0.6.0 but didn't found any option to issue smpp credentials/listen smpp port

@farirat

This comment has been minimized.

Show comment
Hide comment
@farirat

farirat Nov 28, 2014

Contributor

Hi,

The release you can consider for production a of now is v0.5.4 (you can get from pypi), v0.6.0 is the ongoing one where features are coming soon, SMPP server is not yet released as you see this issue (#49) is still not yet closed.

Production-ready releases are annoucned on www.jasminsms.com

Contributor

farirat commented Nov 28, 2014

Hi,

The release you can consider for production a of now is v0.5.4 (you can get from pypi), v0.6.0 is the ongoing one where features are coming soon, SMPP server is not yet released as you see this issue (#49) is still not yet closed.

Production-ready releases are annoucned on www.jasminsms.com

@sah-anshu

This comment has been minimized.

Show comment
Hide comment
@sah-anshu

sah-anshu Nov 28, 2014

i am be your resource for beta testing for this app especially on smpp server module. Hope soon we see the development release.

sah-anshu commented Nov 28, 2014

i am be your resource for beta testing for this app especially on smpp server module. Hope soon we see the development release.

@farirat

This comment has been minimized.

Show comment
Hide comment
@farirat

farirat Nov 28, 2014

Contributor

you're welcome !

Contributor

farirat commented Nov 28, 2014

you're welcome !

farirat added a commit to farirat/jasmin that referenced this issue Dec 2, 2014

Related to #49, work in progress to handle submit_sm sending through …
…smpps

* Tested SMPP Server credential verification:
 * smpps_send: Ability to send sms through smpps
 * set_dlr_level: Ability to define advancer dlr level
 * set_source_address: Ability to set source address
 * set_priority: Ability to set messahe priority
* Applied validation filters on messages sent through smpps:
 * destination_address
 * source_address
 * priority
 * content
* Applied default values:
 * source_address: Update message source address when not defined
* Added statistics collecting for each user:
 * smpps bind_count
 * smpps unbind_count
 * smpps bound_connections_count
 * smpps last_activity_at
 * smpps submit_sm_request_count
 * http connects_count
 * http last_activity_at
 * http submit_sm_request_count

farirat added a commit to farirat/jasmin that referenced this issue Dec 3, 2014

Related to #49
Secured SMPP Server to only accept:
* Submit_sm
* All bind requests and responses
* Enquire links

farirat added a commit to farirat/jasmin that referenced this issue Dec 6, 2014

Related to #49
SMPP Server is now able to route incoming submit_sm messages just like
http api do.

Work in progress to cover all planned SMPP Server features:
* Enable message rating (billing)
* Handle submit_sm_resp and deliver_sm containing receipts when received from SMPP Client
* Handle deliver_sm traffic routing
* submit_sm throughput control per user
* Logging
* And finally ... put SMPP Server in jasmind startup script

farirat added a commit to farirat/jasmin that referenced this issue Dec 7, 2014

Related to #49
Tested router's bill_request_submit_sm_resp_callback() method is getting
called when a submit_sm_resp is received and have to be charged on user.

Complete billing tests will be done in test_smpp_server, just like http
(QuotasTestCases)

farirat added a commit to farirat/jasmin that referenced this issue Dec 9, 2014

Related to #49
Tested SMPP Server credentials and billing
@tarikogut

This comment has been minimized.

Show comment
Hide comment
@tarikogut

tarikogut Jan 2, 2015

im developing Web interface (Web control Panel)

tarikogut commented Jan 2, 2015

im developing Web interface (Web control Panel)

farirat added a commit to farirat/jasmin that referenced this issue Jan 13, 2015

related to #49
Hard work in progress to enable SMPP Server to froward receipts through
the DLRThrower, jasmin.routing.test.test_router_smpps.SubmitSmRespDeliveryTestCases
must cover all the scenarios of receiving post-routing submit_sm_resp's that are
translated to data_sm (receipt).

Next commits will finish SubmitSmRespDeliveryTestCases.

farirat added a commit to farirat/jasmin that referenced this issue Jan 13, 2015

related to #49
SubmitSmRespDeliveryTestCases is done, all tests are finished:

* sending back (or not) a data_sm with a receipt of delivery (ACCEPTED or UNDELIVERABLE) depending on the 'registered_delivery'

farirat added a commit to farirat/jasmin that referenced this issue Jan 20, 2015

Related to #49
Any received receipt in a form of deliver_sm will be delivered to the original
sender through smpp server, implemented and tested.

Work in progress to cover the rest of receipt handling:

* Handle data_sm receipts
* Implement and test these receipts in http and smpps throwing

farirat added a commit to farirat/jasmin that referenced this issue Jan 20, 2015

related to #49
Finished everything about receipt handling (data_sm receipts are postponed

farirat added a commit to farirat/jasmin that referenced this issue Feb 15, 2015

Related to #49
Finished everything about deliver_sm handling

farirat added a commit to farirat/jasmin that referenced this issue Feb 15, 2015

Related to #49
Test covered DLR throwing through SMPP.

farirat added a commit to farirat/jasmin that referenced this issue Feb 15, 2015

Related to #49
Test covered DeliverSm throwing through SMPPs api

farirat added a commit to farirat/jasmin that referenced this issue Feb 15, 2015

Related #49
Test covered DLRContentForSmpps

farirat added a commit to farirat/jasmin that referenced this issue Feb 15, 2015

Related to #49
Delivering deliver_sm pdus through SMPPs is fixed so it respects the initial ordering of pdus

farirat added a commit to farirat/jasmin that referenced this issue Feb 16, 2015

Related to #49
SMPP Server is now starting with the jasmind system service launcher.

@farirat farirat closed this in 856ff1e Feb 24, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment