You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by am...@apache.org on 2009/08/11 16:37:44 UTC
svn commit: r803139 -
/webservices/commons/trunk/modules/transport/src/site/xdoc/sms.xml
Author: amilas
Date: Tue Aug 11 14:37:44 2009
New Revision: 803139
URL: http://svn.apache.org/viewvc?rev=803139&view=rev
Log:
commit the document patch for WSCOMMONS-492
Added:
webservices/commons/trunk/modules/transport/src/site/xdoc/sms.xml
Added: webservices/commons/trunk/modules/transport/src/site/xdoc/sms.xml
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/src/site/xdoc/sms.xml?rev=803139&view=auto
==============================================================================
--- webservices/commons/trunk/modules/transport/src/site/xdoc/sms.xml (added)
+++ webservices/commons/trunk/modules/transport/src/site/xdoc/sms.xml Tue Aug 11 14:37:44 2009
@@ -0,0 +1,276 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE document PUBLIC "-//Apache Software Foundation//DTD XDOC 1.0//EN"
+ "http://www.apache.org/dtds/xdoc_1_0.dtd">
+<!--
+~ Licensed to the Apache Software Foundation (ASF) under one
+~ or more contributor license agreements. See the NOTICE file
+~ distributed with this work for additional information
+~ regarding copyright ownership. The ASF licenses this file
+~ to you under the Apache License, Version 2.0 (the
+~ "License"); you may not use this file except in compliance
+~ with the License. You may obtain a copy of the License at
+~
+~ http://www.apache.org/licenses/LICENSE-2.0
+~
+~ Unless required by applicable law or agreed to in writing,
+~ software distributed under the License is distributed on an
+~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~ KIND, either express or implied. See the License for the
+~ specific language governing permissions and limitations
+~ under the License.
+-->
+<document>
+ <properties>
+ <title>new document</title>
+ </properties>
+
+ <body>
+ <section name="Introduction">The SMS Transport will allow send and receive
+ messages in the form of SMSs used in mobile phones.Using this transport
+ the users will be able to invoke webservices using a SMS and get the
+ responce.SMS Transport is mainly focus on enableing SMPP protocal support
+ for the Axis2 so that It can connect with a SMSC to send/receive SMS.It
+ will also have a GSM implimentation that will enable users to connect a
+ GSM modem and send/receive sms s using that.The configuration parameters
+ will be different depend on the implimentaion that the user will be using
+ (SMPP/ GSM) Follwoing up section will be discuss more details about the
+ configuration ,usage and Extenting of the SMS Transport
+ </section>
+
+ <section name="Transport Listener" onclick="">
+ <subsection
+ name="Configuration"><pre><transportReceiver name="sms"
+ class="org.apache.axis2.transport.sms.SMSMessageReciever"></pre>In
+ order to use the sms Transport Listener It must be Configured in the
+ Axis2.xml.It will be having set of parameters to be configured depending
+ on the implementation that a user needed.(SMPP/GSM)
+ <br/>
+ <p>
+ <br/>
+ Parameters Needed for the SMPP and GSM implementation are Explined
+ bellow.
+ <br/>
+ <br/>
+ <b>SMPP Configuration</b>
+ </p>
+ When using the SMPP
+ implimentaiton It will connect with a SMSC (Short Message Service center)
+ and Listening to the incomming messsages on a TCP connection.This
+ implimentaion can be used when the data traffic is so high.
+ <table
+ class="bodyTable">
+ <tr>
+ <th>Parameter</th>
+
+ <th>Required</th>
+
+ <th>Description</th>
+ </tr>
+
+ <tr>
+ <td>systemType</td>
+
+ <td>No</td>
+
+ <td>To inform the binding SMSC about the system Type That connecting
+ to it.The Default value is "cp". .Some SMSC s does not require this
+ to connect.
+ </td>
+ </tr>
+
+ <tr>
+ <td>systemId</td>
+
+ <td>Yes</td>
+
+ <td>The system_id parameter is used to identify an ESME (In this
+ case Axis2 )or an SMSC at bind time. An ESME system_id identifies
+ the ESME or ESME agent to the SMSC. The SMSC system_id provides an
+ identification of the SMSC to the ESME.
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <em>Password</em>
+ </td>
+
+ <td>Yes</td>
+
+ <td>The password parameter is used by the SMSC to authenticate the
+ identity of the binding ESME (In this Case Axis2). The Service
+ Provider may require ESMEâs to provide a password when binding to
+ the SMSC. This password is normally issued by the SMSC system
+ administrator.
+ </td>
+ </tr>
+
+ <tr>
+ <td>host</td>
+
+ <td>No</td>
+
+ <td>The IP address of the host that SMSC is located.The default is
+ Local host - 127.0.0.1
+ </td>
+ </tr>
+
+ <tr>
+ <td>port</td>
+
+ <td>No</td>
+
+ <td>The port Number that Axis2 must connect with the SMSC.The
+ Default port is 2775
+ </td>
+ </tr>
+
+ <tr>
+ <td>phoneNumber</td>
+
+ <td>No</td>
+
+ <td>The phone Number that Axis2 Application given from the Service
+ provider.
+ </td>
+ </tr>
+ </table>
+ <br/>
+ <b>GSM Configuration</b>
+ <br/>GSM implementation can be
+ used to send receive SMS using a GSM modem connected.Its use the
+ <a
+ href="http://smslib.org/">SMSLib
+ </a>
+ library so that all SMSLib supported
+ GSM modems will be working with the GSM implimentation.This implementation
+ can only be used when the Data Traffic is very low (about 6 messages per
+ minute) since The Message Send / receive rate supported by GSM modems is
+ normally very low.Other than Following Parameters in the table to use the
+ GSMImplimentation User must specify the implementation Class of the GSM
+ implementation as a Parameter
+ <pre><parameter name="smsImplClass">org.apache.axis2.transport.sms.gsm.GSMImplManager</parameter></pre>
+ <table class="bodyTable">
+ <tr>
+ <th>Parameter</th>
+
+ <th>Required</th>
+
+ <th>Description</th>
+ </tr>
+
+ <tr>
+ <td>gateway_id</td>
+
+ <td>Yes</td>
+
+ <td>Gateway id is the Id that is used to identify the device that
+ you are going to use as the gateway.
+ </td>
+ </tr>
+
+ <tr>
+ <td>com_port</td>
+
+ <td>Yes</td>
+
+ <td>The communication port that the device is connected.As a Example
+ in a Linux machine if the device is connected through a USB the port
+ will be some thing like "/dev/ttyUSB0"
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <em>baud_rate</em>
+ </td>
+
+ <td>Yes</td>
+
+ <td>The Baud rate of the device.This can be found out by looking in
+ to device details.
+ </td>
+ </tr>
+
+ <tr>
+ <td>manufacturer</td>
+
+ <td>Yes</td>
+
+ <td>The Name of the Manufacturer that the device manufactured
+ by.Example manufactures are "NOKIA" , "HUAWEI"
+ </td>
+ </tr>
+
+ <tr>
+ <td>model</td>
+
+ <td>Yes</td>
+
+ <td>The model id of the device.</td>
+ </tr>
+
+ <tr>
+ <td>modem_poll_interval</td>
+
+ <td>No</td>
+
+ <td>This is the interval that the application will poll the devices
+ message storage to get the incoming messages.The default value is 5
+ seconds.
+ </td>
+ </tr>
+ </table>
+ </subsection>
+ </section>
+
+ <section name="TransportSender">
+ <subsection name="Configuration"><pre><transportSender name="sms"
+ class="org.apache.axis2.transport.sms.SMSSender"></pre>In
+ order to use the sms Sender It must be Configured in the Axis2.xml.It will
+ be having set of parameters to be configured depending on the
+ implementation that a user needed.(SMPP/GSM)
+ </subsection>
+ The Configuration
+ Parameters for the GSM and SMPP implimentations are same as the above
+ discribed for the Transport Listender.
+ </section>
+
+ <section name="Extending SMS Transport">The SMS Transport is Designed to
+ be extended to use with Other SMS implementations as well.It has two
+ logical layers one is the SMS Layer which has all Axis2 dependent code and
+ Other one is The Implementation layer which only contain the
+ implementation logic related to the specific implimentation.So the
+ Developers who need to write a another implementation can reuse the SMS
+ layer and focus oly about thire implementation logic.
+ <subsection
+ name="SMSMessageBuilder">SMSMessageBuilder determines the message format
+ that Axis2 accepting from the incoming SMS.In the Default
+ SMSMessageBuilder implementation its supported for the RPC type SMS format
+ for the incoming SMS to invoke a Webservice its :<b>
+ "ServiceName":"Operation Name":
+ "Parameter_1=value_1":......:"Parameter_N=value_N"</b>.Developers can add
+ another Builder to accept another formats by implementing the
+ SMSMessageBuilder interface and Specifying it as a Parameter in the
+ TransportListener
+ <pre><parameter name="builderClass">Class Name</parameter></pre>
+ </subsection>
+ <subsection name="SMSMessageFormatter">SMSMessageFormatter
+ formats the out put SMS Message Form the Axis2 MessageContext.Developers
+ can Add a custom MessageFormatter by Implementing the SMSMessageFormatter
+ interface and Specifying it as a Parameter in the TransportSender.
+ <pre><parameter name="formatterClass">Class Name</parameter></pre>
+ </subsection>
+ <subsection
+ name="Implimentation">SMS Trasnport also allows Developers to add another
+ SMS implementations to the SMS Transport.To Add a another Implementation
+ It should have an Implementation manager that implements the
+ SMSImplManager interface.In that Implementation Developers can add their
+ custom implementation logic without worring about the Axis2
+ Dependensies.To add a Implementation Manager It must be Specified as a
+ parameter in Transport Receiver and sender
+ <pre><parameter name="smsImplClass">Class Name</parameter></pre>
+ </subsection>
+ </section>
+ </body>
+</document>