Recently I read an article about Sending SMS notifications using WSo2 esb. Unfortunately it does not work for me and I am not 100% sure about some of those configurations. Following are the problems that I have.
Are there any other library files, rather than the two files below, that can be used to enable SMS transport sender over SMPP?
axis2-transport-sms-1.0.0.jar
jsmpp-2.1.0.jar
What is the actual directory into which I should put each of those jars -
is it $ESB_HOME/repository/components/lib ?.
Finally, what should the address endpoint for sending a specific number look like?
Is it like this?
<endpoint>
<address uri="sms://94777179968">
</address>
Note :- I am using a SMSC simulator as my actual SMSC.
Thanks in advance.
Answers to your specific questions...
1. no, these are correct put them in the place as directed in the article
2. yes
3. yes, but if this is entered through the design view you will get an error saying it is an invalid format. Switch to source view to add. (However, although I did get the error, it did appear in the source view too, so you'll just have to experiment with this).
Follow the article exactly BUT there is a slight error in both the config file for the proxy service and for the config in the axis2 file (to enable the SMS transport)
In the service xml the description tag surrounds all of the target so move the empty description element outside the closing target element.
The axix2 config file needs the transportsender element altered slightly to be transportSender - note the capital 'S' for sender.
That is how I got this to work. Good luck.
Axis2 SMS Transport is designed to support any SMPP implementation by implementing org.apache.axis2.transport.sms.SMSImplManager
interface.
Please refer http://ws.apache.org/commons/transport/sms.html
In axis2-transport-sms-1.0.0.jar
, there are two implementations.
i. org.apache.axis2.transport.sms.gsm.GSMImplManager
- Implements SMSLib http://smslib.org/
ii. org.apache.axis2.transport.sms.smpp.SMPPImplManager
- Implements JSMPP https://code.google.com/p/jsmpp/
If you want, you can refer sources of these implementations and write your own implementation. For example, I have used Logica SMPP in one of my projects (A standalone app) and it is a very good library and my project is in production for more than two years.
Here is the website for Logica SMPP: http://opensmpp.logica.com/CommonPart/Introduction/Introduction.htm
For your second and third questions, I think the answers are already there in the blog post you referred. Please go through the steps in that blog.