camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r982371 [2/4] - in /websites/production/camel/content: book-component-appendix.html book-in-one-page.html cache/main.pageCache camel-2170-release.html smpp.html
Date Thu, 10 Mar 2016 07:20:49 GMT
Modified: websites/production/camel/content/book-in-one-page.html
==============================================================================
--- websites/production/camel/content/book-in-one-page.html (original)
+++ websites/production/camel/content/book-in-one-page.html Thu Mar 10 07:20:48 2016
@@ -3758,11 +3758,11 @@ The tutorial has been designed in two pa
 While not actual tutorials you might find working through the source of the various <a shape="rect" href="examples.html">Examples</a> useful.</li></ul>
 
 <h2 id="BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</h2><p>&#160;</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Thanks</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>This tutorial was kindly donated to Apache Camel by Martin Gilday.</p></div></div><h2 id="BookInOnePage-Preface">Preface</h2><p>This tutorial aims to guide the reader through the stages of creating a project which uses Camel to facilitate the routing of messages from a JMS queue to a <a shape="rect" class="external-link" href="http://www.springramework.org" rel="nofollow">Spring</a> service. The route works in a synchronous fashion returning a response to the client.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1457543930968 {padding: 0px;}
-div.rbtoc1457543930968 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1457543930968 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1457594351088 {padding: 0px;}
+div.rbtoc1457594351088 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1457594351088 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1457543930968">
+/*]]>*/</style></p><div class="toc-macro rbtoc1457594351088">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#BookInOnePage-Preface">Preface</a></li><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-About">About</a></li><li><a shape="rect" href="#BookInOnePage-CreatetheCamelProject">Create the Camel Project</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul>
 </li><li><a shape="rect" href="#BookInOnePage-WritingtheServer">Writing the Server</a>
@@ -5877,11 +5877,11 @@ So we completed the last piece in the pi
 <p>This example has been removed from <strong>Camel 2.9</strong> onwards. Apache Axis 1.4 is a very old and unsupported framework. We encourage users to use <a shape="rect" href="cxf.html">CXF</a> instead of Axis.</p></div></div>
 
 <style type="text/css">/*<![CDATA[*/
-div.rbtoc1457543932046 {padding: 0px;}
-div.rbtoc1457543932046 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1457543932046 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1457594351643 {padding: 0px;}
+div.rbtoc1457594351643 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1457594351643 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style><div class="toc-macro rbtoc1457543932046">
+/*]]>*/</style><div class="toc-macro rbtoc1457594351643">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 with Apache Camel</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#BookInOnePage-Distribution">Distribution</a></li><li><a shape="rect" href="#BookInOnePage-Introduction">Introduction</a></li><li><a shape="rect" href="#BookInOnePage-SettinguptheprojecttorunAxis">Setting up the project to run Axis</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Maven2">Maven 2</a></li><li><a shape="rect" href="#BookInOnePage-wsdl">wsdl</a></li><li><a shape="rect" href="#BookInOnePage-ConfiguringAxis">Configuring Axis</a></li><li><a shape="rect" href="#BookInOnePage-RunningtheExample">Running the Example</a></li></ul>
@@ -17336,11 +17336,11 @@ template.send(&quot;direct:alias-verify&
 ]]></script>
 </div></div><p></p><h3 id="BookInOnePage-SeeAlso.28">See Also</h3>
 <ul><li><a shape="rect" href="configuring-camel.html">Configuring Camel</a></li><li><a shape="rect" href="component.html">Component</a></li><li><a shape="rect" href="endpoint.html">Endpoint</a></li><li><a shape="rect" href="getting-started.html">Getting Started</a></li></ul><ul><li><a shape="rect" href="crypto.html">Crypto</a> Crypto is also available as a <a shape="rect" href="data-format.html">Data Format</a></li></ul> <h2 id="BookInOnePage-CXFComponent">CXF Component</h2><div class="confluence-information-macro confluence-information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using CXF as a consumer, the <a shape="rect" href="cxf-bean-component.html">CXF Bean Component</a> allows you to factor out how message payloads are received from their processing as a RESTful or SOAP web service. This has the potential of using a multitude of transports to consume web 
 services. The bean component's configuration is also simpler and provides the fastest method to implement web services using Camel and CXF.</p></div></div><div class="confluence-information-macro confluence-information-macro-tip"><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>When using CXF in streaming modes (see DataFormat option), then also read about <a shape="rect" href="stream-caching.html">Stream caching</a>.</p></div></div><p>The <strong>cxf:</strong> component provides integration with <a shape="rect" href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services hosted in CXF.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1457543938682 {padding: 0px;}
-div.rbtoc1457543938682 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1457543938682 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1457594361022 {padding: 0px;}
+div.rbtoc1457594361022 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1457594361022 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1457543938682">
+/*]]>*/</style></p><div class="toc-macro rbtoc1457594361022">
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-CXFComponent">CXF Component</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-URIformat">URI format</a></li><li><a shape="rect" href="#BookInOnePage-Options">Options</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#BookInOnePage-Thedescriptionsofthedataformats">The descriptions of the dataformats</a>
@@ -25826,7 +25826,7 @@ protected RouteBuilder createRouteBuilde
 
 <p><strong>The Camel SIP component also ships with a Presence Agent that is meant to be used for Testing and Demo purposes only.</strong> An example of instantiating a Presence Agent is given above. </p>
 
-<p>Note that the Presence Agent is set up as a user agent@localhost:5152 and is capable of communicating with both Publisher as well as Subscriber. It has a separate SIP stackName distinct from Publisher as well as Subscriber. While it is set up as a Camel Consumer, it does not actually send any messages along the route to the endpoint "mock:neverland".</p> <h2 id="BookInOnePage-SMPPComponent">SMPP Component</h2><p><strong>Available as of Camel 2.2</strong></p><p>This component provides access to an SMSC (Short Message Service Center) over the <a shape="rect" class="external-link" href="http://smsforum.net/SMPP_v3_4_Issue1_2.zip" rel="nofollow">SMPP</a> protocol to send and receive SMS. The <a shape="rect" class="external-link" href="http://jsmpp.org" rel="nofollow">JSMPP</a> library is used for the protocol implementation.</p><p>The Camel component currently operates as an <a shape="rect" class="external-link" href="http://en.wikipedia.org/wiki/ESME" rel="nofollow">ESME</a> (Extern
 al Short Messaging Entity) and not as an SMSC itself.</p><p>Starting with<strong> Camel 2.9</strong>&#160;you are also able to execute ReplaceSm, QuerySm, SubmitMulti, CancelSm and DataSm.</p><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<p>Note that the Presence Agent is set up as a user agent@localhost:5152 and is capable of communicating with both Publisher as well as Subscriber. It has a separate SIP stackName distinct from Publisher as well as Subscriber. While it is set up as a Camel Consumer, it does not actually send any messages along the route to the endpoint "mock:neverland".</p> <h2 id="BookInOnePage-SMPPComponent">SMPP Component</h2><p><strong>CamelSmppFinalStatusAvailable as of Camel 2.2</strong></p><p>This component provides access to an SMSC (Short Message Service Center) over the <a shape="rect" class="external-link" href="http://smsforum.net/SMPP_v3_4_Issue1_2.zip" rel="nofollow">SMPP</a> protocol to send and receive SMS. The <a shape="rect" class="external-link" href="http://jsmpp.org" rel="nofollow">JSMPP</a> library is used for the protocol implementation.</p><p>The Camel component currently operates as an <a shape="rect" class="external-link" href="http://en.wikipedia.org/wiki/ESME" rel="nofoll
 ow">ESME</a> (External Short Messaging Entity) and not as an SMSC itself.</p><p>Starting with<strong> Camel 2.9</strong>&#160;you are also able to execute ReplaceSm, QuerySm, SubmitMulti, CancelSm and DataSm.</p><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
     &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
     &lt;artifactId&gt;camel-smpp&lt;/artifactId&gt;
@@ -25844,7 +25844,7 @@ smpps://[username@]hostname[:port][?opti
 </div></div><p>If no <strong>username</strong> is provided, then Camel will provide the default value <code>smppclient</code>.<br clear="none"> If no <strong>port</strong> number is provided, then Camel will provide the default value <code>2775</code>.<br clear="none"> <strong>Camel 2.3:</strong> If the protocol name is "smpps", camel-smpp with try to use SSLSocket to init a connection to the server.</p><p>You can append query options to the URI in the following format, <code>?option=value&amp;option=value&amp;...</code></p><h3 id="BookInOnePage-URIOptions.9">URI Options</h3><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>password</code></p></td><td colspan="
 1" rowspan="1" class="confluenceTd"><p><code>password</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Specifies the password to use to log in to the SMSC.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>systemType</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>cp</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>This parameter is used to categorize the type of ESME (External Short Message Entity) that is binding to the SMSC (max. 13 characters).</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>dataCoding</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11</strong> Defines the data coding according the SMPP 3.4 specification, section 5.2.19. (Prior to <strong>Camel 2.9</strong>, this option is also supported.) Example data encodings are:<br clear="none" class="atl
 -forced-newline"> <code>0</code>: SMSC Default Alphabet<br clear="none" class="atl-forced-newline"> <code>3</code>: Latin 1 (ISO-8859-1)<br clear="none" class="atl-forced-newline"> <code>4</code>: Octet unspecified (8-bit binary)<br clear="none" class="atl-forced-newline"> <code>8</code>: UCS2 (ISO/IEC-10646)<br clear="none" class="atl-forced-newline"> <code>13</code>: Extended Kanji JIS(X 0212-1990)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>alphabet</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong> Defines encoding of data according the SMPP 3.4 specification, section 5.2.19. This option is mapped to <a shape="rect" class="external-link" href="http://code.google.com/p/jsmpp/source/browse/tags/2.1.0/src/java/main/org/jsmpp/bean/Alphabet.java" rel="nofollow"><code>Alphabet.java</code></a> and used to create the <code>byte[]</code> whi
 ch is send to the SMSC. Example alphabets are:<br clear="none" class="atl-forced-newline"> <code>0</code>: SMSC Default Alphabet<br clear="none" class="atl-forced-newline"> <code>4</code>: 8 bit Alphabet<br clear="none" class="atl-forced-newline"> <code>8</code>: UCS2 Alphabet</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>encoding</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>ISO-8859-1</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, ReplaceSm and SubmitMulti</strong> Defines the encoding scheme of the short message user data.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>enquireLinkTimer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>5000</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the interval in milliseconds between the confidence checks. The confidence check is used to test the communication pa
 th between an ESME and an SMSC.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>transactionTimer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>10000</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the maximum period of inactivity allowed after a transaction, after which an SMPP entity may assume that the session is no longer active. This timer may be active on either communicating SMPP entity (i.e. SMSC or ESME).</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>initialReconnectDelay</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>5000</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the initial delay in milliseconds after the consumer/producer tries to reconnect to the SMSC, after the connection was lost.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>reconnectDelay</code></p></td><td colspan="1" row
 span="1" class="confluenceTd"><p><code>5000</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the interval in milliseconds between the reconnect attempts, if the connection to the SMSC was lost and the previous was not succeed.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>registeredDelivery</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>1</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, ReplaceSm, SubmitMulti and DataSm</strong> Is used to request an SMSC delivery receipt and/or SME originated acknowledgements. The following values are defined:<br clear="none" class="atl-forced-newline"> <code>0</code>: No SMSC delivery receipt requested.<br clear="none" class="atl-forced-newline"> <code>1</code>: SMSC delivery receipt requested where final delivery outcome is success or failure.<br clear="none" class="atl-forced-newline"> <code>2</code>: SMSC delivery receip
 t requested where the final delivery outcome is delivery failure.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>serviceType</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CMT</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The service type parameter can be used to indicate the SMS Application service associated with the message. The following generic service_types are defined:<br clear="none" class="atl-forced-newline"> <code>CMT</code>: Cellular Messaging<br clear="none" class="atl-forced-newline"> <code>CPT</code>: Cellular Paging<br clear="none" class="atl-forced-newline"> <code>VMN</code>: Voice Mail Notification<br clear="none" class="atl-forced-newline"> <code>VMA</code>: Voice Mail Alerting<br clear="none" class="atl-forced-newline"> <code>WAP</code>: Wireless Application Protocol<br clear="none" class="atl-forced-newline"> <code>USSD</code>: Unstructured Supplementary Services Data</p></td></tr><tr><td
  colspan="1" rowspan="1" class="confluenceTd"><p><code>sourceAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>1616</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the address of SME (Short Message Entity) which originated this message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>destAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>1717</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the destination SME address. For mobile terminated messages, this is the directory number of the recipient MS.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>sourceAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the type of number (TON) to be used in the SME or
 iginator address parameters. The following TON values are defined:<br clear="none" class="atl-forced-newline"> <code>0</code>: Unknown<br clear="none" class="atl-forced-newline"> <code>1</code>: International<br clear="none" class="atl-forced-newline"> <code>2</code>: National<br clear="none" class="atl-forced-newline"> <code>3</code>: Network Specific<br clear="none" class="atl-forced-newline"> <code>4</code>: Subscriber Number<br clear="none" class="atl-forced-newline"> <code>5</code>: Alphanumeric<br clear="none" class="atl-forced-newline"> <code>6</code>: Abbreviated</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>destAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the type of number (TON) to be used in the SME destination address parameters. Same as the <code>sourceAddrTon</c
 ode> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>sourceAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the numeric plan indicator (NPI) to be used in the SME originator address parameters. The following NPI values are defined: <br clear="none" class="atl-forced-newline"> <code>0</code>: Unknown<br clear="none" class="atl-forced-newline"> <code>1</code>: ISDN (E163/E164)<br clear="none" class="atl-forced-newline"> <code>2</code>: Data (X.121)<br clear="none" class="atl-forced-newline"> <code>3</code>: Telex (F.69)<br clear="none" class="atl-forced-newline"> <code>6</code>: Land Mobile (E.212)<br clear="none" class="atl-forced-newline"> <code>8</code>: National<br clear="none" class="atl-forced-newline"> <code>9</code>: Private<br clear="none" class="atl-forced-newline"> <code>10</code>: ERMES<br clear="none" class="atl-forc
 ed-newline"> <code>13</code>: Internet (IP)<br clear="none" class="atl-forced-newline"> <code>18</code>: WAP Client Id (to be defined by WAP Forum)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>destAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the numeric plan indicator (NPI) to be used in the SME destination address parameters. Same as the <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>priorityFlag</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>1</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm and SubmitMulti</strong> Allows the originating SME to assign a priority level to the short message. Four Priority Levels are supported:<br
  clear="none" class="atl-forced-newline"> <code>0</code>: Level 0 (lowest) priority<br clear="none" class="atl-forced-newline"> <code>1</code>: Level 1 priority<br clear="none" class="atl-forced-newline"> <code>2</code>: Level 2 priority<br clear="none" class="atl-forced-newline"> <code>3</code>: Level 3 (highest) priority</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>replaceIfPresentFlag</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm and SubmitMulti</strong> Used to request the SMSC to replace a previously submitted message, that is still pending delivery. The SMSC will replace an existing message provided that the source address, destination address and service type match the same fields in the new message. The following replace if present flag values are defined: <br clear="none" class="atl-forced-newline"> <code>0</code>: Don't rep
 lace<br clear="none" class="atl-forced-newline"> <code>1</code>: Replace</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>typeOfNumber</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the type of number (TON) to be used in the SME. Use the <code>sourceAddrTon</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>numberingPlanIndicator</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the numeric plan indicator (NPI) to be used in the SME. Use the <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>lazySessionCreation</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" rowspan="1" cla
 ss="confluenceTd"><p><strong>Camel 2.8 onwards</strong> Sessions can be lazily created to avoid exceptions, if the SMSC is not available when the Camel producer is started.<br clear="none" class="atl-forced-newline"> <strong>Camel 2.11 onwards</strong> Camel will check the in message headers 'CamelSmppSystemId' and 'CamelSmppPassword' of the first exchange. If they are present, Camel will use these data to connect to the SMSC.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>httpProxyHost</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9.1:</strong> If you need to tunnel SMPP through a HTTP proxy, set this attribute to the hostname or ip address of your HTTP proxy.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>httpProxyPort</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>3128</code></p></td><t
 d colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9.1:</strong> If you need to tunnel SMPP through a HTTP proxy, set this attribute to the port of your HTTP proxy.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>httpProxyUsername</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9.1:</strong> If your HTTP proxy requires basic authentication, set this attribute to the username required for your HTTP proxy.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>httpProxyPassword</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9.1:</strong> If your HTTP proxy requires basic authentication, set this attribute to the password required for your HTTP proxy.</p></td></tr><tr><td colspan="1" rowspan="1" class=
 "confluenceTd"><p><code>sessionStateListener</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9.3:</strong> You can refer to a <code>org.jsmpp.session.SessionStateListener</code> in the <code>Registry</code> to receive callbacks when the session state changed.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>addressRange</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>""</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> You can specify the address range for the <code>SmppConsumer</code> as defined in section 5.2.7 of the SMPP 3.4 specification. The <code>SmppConsumer</code> will receive messages only from SMSC's which target an address (MSISDN or IP address) within this range.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">splittingPolicy</td><td colspan="1" 
 rowspan="1" class="confluenceTd">ALLOW</td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.14.1 and 2.15.0:</strong> You can specify a policy for handling long messages:</p><ul><li>ALLOW - the default, long messages are split to 140 bytes per message</li><li>TRUNCATE - long messages are split and only the first fragment will be sent to the SMSC.&#160; Some carriers drop subsequent fragments so this reduces load on the SMPP connection sending parts of a message that will never be delivered.</li><li>REJECT - if a message would need to be split, it is rejected with an SMPP NegativeResponseException and the reason code signifying the message is too long.</li></ul></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">proxyHeaders</td><td colspan="1" rowspan="1" class="confluenceTd">null</td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.17:</strong> These headers will be passed to the proxy server while establishing the connection.</td></tr>
 </tbody></table></div></div><p>You can have as many of these options as you like.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[smpp://smppclient@localhost:2775?password=password&amp;enquireLinkTimer=3000&amp;transactionTimer=5000&amp;systemType=consumer
 ]]></script>
-</div></div><h3 id="BookInOnePage-ProducerMessageHeaders">Producer Message Headers</h3><p>The following message headers can be used to affect the behavior of the SMPP producer</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>List</code>/<code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the destination SME address(es). For mobile terminated messages, this is the directory number of the recipient MS. Is must be a <code>List&lt;String&gt;</code> for SubmitMulti and a <code
 >String</code> otherwise.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the type of number (TON) to be used in the SME destination address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the numeric plan indicator (NPI) to be used in the SME destination address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" 
 rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the address of SME (Short Message Entity) which originated this message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the type of number (TON) to be used in the SME originator address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the numeric plan indicator (NPI) to be used in the SME orig
 inator address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppServiceType</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The service type parameter can be used to indicate the SMS Application service associated with the message. Use the URI option <code>serviceType</code> settings above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppRegisteredDelivery</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, ReplaceSm, SubmitMulti and DataSm</strong> Is used to request an SMSC delivery receipt and/or SME originated acknowledgements. Use the URI option <code>registeredDelivery</code> settings above.</p></td></tr><tr><td c
 olspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppPriorityFlag</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm and SubmitMulti</strong> Allows the originating SME to assign a priority level to the short message. Use the URI option <code>priorityFlag</code> settings above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppScheduleDeliveryTime</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Date</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti and ReplaceSm</strong> This parameter specifies the scheduled time at which the message delivery should be first attempted. It defines either the absolute date and time or relative time from the current SMSC time at which delivery of this message will be attempted by the SMSC. It can be specified in
  either absolute time format or relative time format. The encoding of a time format is specified in chapter 7.1.1. in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppValidityPeriod</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code>/<code>Date</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti and ReplaceSm</strong> The validity period parameter indicates the SMSC expiration time, after which the message should be discarded if not delivered to the destination. If it's provided as <code>Date</code>, it's interpreted as absolute time. <strong>Camel 2.9.1 onwards:</strong> It can be defined in absolute time format or relative time format if you provide it as <code>String</code> as specified in chapter 7.1.1 in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppReplaceIfPre
 sentFlag</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm and SubmitMulti</strong> The replace if present flag parameter is used to request the SMSC to replace a previously submitted message, that is still pending delivery. The SMSC will replace an existing message provided that the source address, destination address and service type match the same fields in the new message. The following values are defined: <br clear="none" class="atl-forced-newline"> <code>0</code>: Don't replace<br clear="none" class="atl-forced-newline"> <code>1</code>: Replace</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppAlphabet</code> / <code>CamelSmppDataCoding</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong> <strong>For SubmitS
 m, SubmitMulti and ReplaceSm</strong> (Prior to <strong>Camel 2.9</strong> use <code>CamelSmppDataCoding</code> instead of <code>CamelSmppAlphabet</code>.) The data coding according to the SMPP 3.4 specification, section 5.2.19. Use the URI option <code>alphabet</code> settings above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameters</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, String&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in Camel 2.13.0/3.0.0</strong><br clear="none" class="atl-forced-newline"> <strong>Camel 2.10.5 and 2.11.1 onwards and only for SubmitSm, SubmitMulti and DataSm</strong> The optional parameters send back by the SMSC.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameter</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;Shor
 t, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.10.7 and 2.11.2 onwards and only for SubmitSm, SubmitMulti and DataSm</strong> The optional parameter which are send to the SMSC. The value is converted in the following way:<br clear="none" class="atl-forced-newline"> <code>String</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.COctetString</code><br clear="none" class="atl-forced-newline"> <code>byte[]</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.OctetString</code><br clear="none" class="atl-forced-newline"> <code>Byte</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.Byte</code><br clear="none" class="atl-forced-newline"> <code>Integer</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.Int</code><br clear="none" class="atl-forced-newline"> <code>Short</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.Short</code><br clear="none" class="atl-forced-newline"> <code>null</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.
 Null</code></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">CamelSmppEncoding</td><td colspan="1" rowspan="1" class="confluenceTd">String</td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.14.1 and Camel 2.15.0 onwards and </strong><strong>only for SubmitSm, SubmitMulti and DataSm</strong>.&#160; Specifies the encoding (character set name) of the bytes in the message body.&#160; If the message body is a string then this is not relevant because Java Strings are always Unicode.&#160; If the body is a byte array then this header can be used to indicate that it is ISO-8859-1 or some other value.&#160; Default value is specified by the endpoint configuration parameter <em>encoding</em></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">CamelSmppSplittingPolicy</td><td colspan="1" rowspan="1" class="confluenceTd">String</td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.14.1 and Camel 2.15.0 onwards and </strong><strong>only
  for SubmitSm, SubmitMulti and DataSm</strong>.&#160; Specifies the policy for message splitting for this exchange.&#160; Possible values are described in the endpoint configuration parameter <em>splittingPolicy</em></td></tr></tbody></table></div></div><p>The following message headers are used by the SMPP producer to set the response from the SMSC in the message header</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppId</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>List&lt;String&gt;</code>/<code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The id to identify the submitted short message(s) for later
  use. <strong>From Camel 2.9.0</strong>: In case of a ReplaceSm, QuerySm, CancelSm and DataSm this header vaule is a <code>String</code>. In case of a SubmitSm or SubmitMultiSm this header vaule is a <code>List&lt;String&gt;</code>.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSentMessageCount</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>From Camel 2.9 onwards only for SubmitSm and SubmitMultiSm</strong> The total number of messages which has been sent.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppError</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, List&lt;Map&lt;String, Object&gt;&gt;&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>From Camel 2.9 onwards only for SubmitMultiSm</strong> The errors which occurred by sending th
 e short message(s) the form <code>Map&lt;String, List&lt;Map&lt;String, Object&gt;&gt;&gt;</code> (messageID : (destAddr : address, error : errorCode)).</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameters</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, String&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in Camel 2.13.0/3.0.0</strong><br clear="none" class="atl-forced-newline"> <strong>From Camel 2.11.1 onwards only for DataSm</strong> The optional parameters which are returned from the SMSC by sending the message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameter</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;Short, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>From Camel 2.10.7, 2.11.2 onwards only for Dat
 aSm</strong> The optional parameter which are returned from the SMSC by sending the message. The key is the <code>Short</code> code for the optional parameter. The value is converted in the following way:<br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.COctetString</code> -&gt; <code>String</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.OctetString</code> -&gt; <code>byte[]</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Byte</code> -&gt; <code>Byte</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Int</code> -&gt; <code>Integer</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Short</code> -&gt; <code>Short</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Null</code> -&gt; <code>null</code></p></td></tr></tbody></table></div></div><h3 id="BookIn
 OnePage-ConsumerMessageHeaders">Consumer Message Headers</h3><p>The following message headers are used by the SMPP consumer to set the request data from the SMSC in the message header</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSequenceNumber</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification, DeliverSm and DataSm</strong> A sequence number allows a response PDU to be correlated with a request PDU. The associated SMPP response PDU must preserve this field.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"
 ><p><code>CamelSmppCommandId</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification, DeliverSm and DataSm</strong> The command id field identifies the particular SMPP PDU. For the complete list of defined values see chapter 5.1.2.1 in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification, DeliverSm and DataSm</strong> Defines the address of SME (Short Message Entity) which originated this message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="
 1" class="confluenceTd"><p><strong>only for AlertNotification and DataSm</strong> Defines the numeric plan indicator (NPI) to be used in the SME originator address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification and DataSm</strong> Defines the type of number (TON) to be used in the SME originator address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppEsmeAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification</strong> Defines the desti
 nation ESME address. For mobile terminated messages, this is the directory number of the recipient MS.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppEsmeAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification</strong> Defines the numeric plan indicator (NPI) to be used in the ESME originator address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppEsmeAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification</strong> Defines the type of number (TON) to be used in the ESME originator address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></t
 d></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppId</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt and DataSm</strong> The message ID allocated to the message by the SMSC when originally submitted.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDelivered</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> Number of short messages delivered. This is only relevant where the original message was submitted to a distribution list.The value is padded with leading zeros if necessary.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDoneDate</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Da
 te</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> The time and date at which the short message reached it's final state. The format is as follows: YYMMDDhhmm.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppFinalStatus</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>DeliveryReceiptState</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt:</strong> The final status of the message. The following values are defined:<br clear="none" class="atl-forced-newline"> <code>DELIVRD</code>: Message is delivered to destination<br clear="none" class="atl-forced-newline"> <code>EXPIRED</code>: Message validity period has expired.<br clear="none" class="atl-forced-newline"> <code>DELETED</code>: Message has been deleted.<br clear="none" class="atl-forced-newline"> <code>UNDELIV</code>: Message is undeliverable<br clear="n
 one" class="atl-forced-newline"> <code>ACCEPTD</code>: Message is in accepted state (i.e. has been manually read on behalf of the subscriber by customer service)<br clear="none" class="atl-forced-newline"> <code>UNKNOWN</code>: Message is in invalid state<br clear="none" class="atl-forced-newline"> <code>REJECTD</code>: Message is in a rejected state</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppCommandStatus</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> The Command status of the message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppError</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> Where appropriate this may hold a Network spec
 ific error code or an SMSC error code for the attempted delivery of the message. These errors are Network or SMSC specific and are not included here.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSubmitDate</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Date</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> The time and date at which the short message was submitted. In the case of a message which has been replaced, this is the date that the original message was replaced. The format is as follows: YYMMDDhhmm.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSubmitted</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> Number of short messages originally submitted. This is only releva
 nt when the original message was submitted to a distribution list.The value is padded with leading zeros if necessary.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm and DataSm:</strong> Defines the destination SME address. For mobile terminated messages, this is the directory number of the recipient MS.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppScheduleDeliveryTime</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm:</strong> This parameter specifies the scheduled time at which the message delivery should be first attempted. It defines either the absolute date and time or relative time from the current SM
 SC time at which delivery of this message will be attempted by the SMSC. It can be specified in either absolute time format or relative time format. The encoding of a time format is specified in Section 7.1.1. in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppValidityPeriod</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm</strong> The validity period parameter indicates the SMSC expiration time, after which the message should be discarded if not delivered to the destination. It can be defined in absolute time format or relative time format. The encoding of absolute and relative time format is specified in Section 7.1.1 in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppServiceType</code></p></td><td colspan="1" rowspan="1" class="c
 onfluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm and DataSm</strong> The service type parameter indicates the SMS Application service associated with the message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppRegisteredDelivery</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> Is used to request an delivery receipt and/or SME originated acknowledgements. Same values as in Producer header list above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> Defines the numeric plan indicator (NPI) in the destination address parameters. 
 Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> Defines the type of number (TON) in the destination address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppMessageType</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.6 onwards</strong>: Identifies the type of an incoming message:<br clear="none" class="atl-forced-newline"> <code>AlertNotification</code>: an SMSC alert notification<br clear="none" class="atl-forced-newline"> <code>DataSm</code>: an SMSC data short messa
 ge<br clear="none" class="atl-forced-newline"> <code>DeliveryReceipt</code>: an SMSC delivery receipt<br clear="none" class="atl-forced-newline"> <code>DeliverSm</code>: an SMSC deliver short message</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameters</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in Camel 2.13.0/3.0.0</strong><br clear="none" class="atl-forced-newline"> <strong>Camel 2.10.5 onwards and only for DeliverSm</strong> The optional parameters send back by the SMSC.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameter</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;Short, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.10.7, 2.11.2 onwards an
 d only for DeliverSm</strong> The optional parameters send back by the SMSC. The key is the <code>Short</code> code for the optional parameter. The value is converted in the following way:<br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.COctetString</code> -&gt; <code>String</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.OctetString</code> -&gt; <code>byte[]</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Byte</code> -&gt; <code>Byte</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Int</code> -&gt; <code>Integer</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Short</code> -&gt; <code>Short</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Null</code> -&gt; <code>null</code></p></td></tr></tbody></table></div></div><div class="confluence-informa
 tion-macro confluence-information-macro-tip"><p class="title">JSMPP library</p><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>See the documentation of the <a shape="rect" class="external-link" href="http://jsmpp.org" rel="nofollow">JSMPP Library</a> for more details about the underlying library.</p></div></div><h3 id="BookInOnePage-Exceptionhandling.1">Exception handling</h3><p>This component supports the general Camel exception handling capabilities</p><p>When an error occurs sending a message with SubmitSm (the default action), the org.apache.camel.component.smpp.SmppException is thrown with a nested exception, org.jsmpp.extra.NegativeResponseException.&#160; Call NegativeResponseException.getCommandStatus() to obtain the exact SMPP negative response code, the values are explained in the SMPP specification 3.4, section 5.1.3.<br clear="none"> <strong>Camel 2.8 onwards</strong>: W
 hen the SMPP consumer receives a <code>DeliverSm</code> or <code>DataSm</code> short message and the processing of these messages fails, you can also throw a <code>ProcessRequestException</code> instead of handle the failure. In this case, this exception is forwarded to the underlying <a shape="rect" class="external-link" href="http://jsmpp.org" rel="nofollow">JSMPP library</a> which will return the included error code to the SMSC. This feature is useful to e.g. instruct the SMSC to resend the short message at a later time. This could be done with the following lines of code:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><h3 id="BookInOnePage-ProducerMessageHeaders">Producer Message Headers</h3><p>The following message headers can be used to affect the behavior of the SMPP producer</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>List</code>/<code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the destination SME address(es). For mobile terminated messages, this is the directory number of the recipient MS. Is must be a <code>List&lt;String&gt;</code> for SubmitMulti and a <code
 >String</code> otherwise.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the type of number (TON) to be used in the SME destination address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti, CancelSm and DataSm</strong> Defines the numeric plan indicator (NPI) to be used in the SME destination address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" 
 rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the address of SME (Short Message Entity) which originated this message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the type of number (TON) to be used in the SME originator address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Defines the numeric plan indicator (NPI) to be used in the SME orig
 inator address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppServiceType</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The service type parameter can be used to indicate the SMS Application service associated with the message. Use the URI option <code>serviceType</code> settings above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppRegisteredDelivery</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, ReplaceSm, SubmitMulti and DataSm</strong> Is used to request an SMSC delivery receipt and/or SME originated acknowledgements. Use the URI option <code>registeredDelivery</code> settings above.</p></td></tr><tr><td c
 olspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppPriorityFlag</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm and SubmitMulti</strong> Allows the originating SME to assign a priority level to the short message. Use the URI option <code>priorityFlag</code> settings above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppScheduleDeliveryTime</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Date</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti and ReplaceSm</strong> This parameter specifies the scheduled time at which the message delivery should be first attempted. It defines either the absolute date and time or relative time from the current SMSC time at which delivery of this message will be attempted by the SMSC. It can be specified in
  either absolute time format or relative time format. The encoding of a time format is specified in chapter 7.1.1. in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppValidityPeriod</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code>/<code>Date</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm, SubmitMulti and ReplaceSm</strong> The validity period parameter indicates the SMSC expiration time, after which the message should be discarded if not delivered to the destination. If it's provided as <code>Date</code>, it's interpreted as absolute time. <strong>Camel 2.9.1 onwards:</strong> It can be defined in absolute time format or relative time format if you provide it as <code>String</code> as specified in chapter 7.1.1 in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppReplaceIfPre
 sentFlag</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for SubmitSm and SubmitMulti</strong> The replace if present flag parameter is used to request the SMSC to replace a previously submitted message, that is still pending delivery. The SMSC will replace an existing message provided that the source address, destination address and service type match the same fields in the new message. The following values are defined: <br clear="none" class="atl-forced-newline"> <code>0</code>: Don't replace<br clear="none" class="atl-forced-newline"> <code>1</code>: Replace</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppAlphabet</code> / <code>CamelSmppDataCoding</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong> <strong>For SubmitS
 m, SubmitMulti and ReplaceSm</strong> (Prior to <strong>Camel 2.9</strong> use <code>CamelSmppDataCoding</code> instead of <code>CamelSmppAlphabet</code>.) The data coding according to the SMPP 3.4 specification, section 5.2.19. Use the URI option <code>alphabet</code> settings above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameters</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, String&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in Camel 2.13.0/3.0.0</strong><br clear="none" class="atl-forced-newline"> <strong>Camel 2.10.5 and 2.11.1 onwards and only for SubmitSm, SubmitMulti and DataSm</strong> The optional parameters send back by the SMSC.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameter</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;Shor
 t, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.10.7 and 2.11.2 onwards and only for SubmitSm, SubmitMulti and DataSm</strong> The optional parameter which are send to the SMSC. The value is converted in the following way:<br clear="none" class="atl-forced-newline"> <code>String</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.COctetString</code><br clear="none" class="atl-forced-newline"> <code>byte[]</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.OctetString</code><br clear="none" class="atl-forced-newline"> <code>Byte</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.Byte</code><br clear="none" class="atl-forced-newline"> <code>Integer</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.Int</code><br clear="none" class="atl-forced-newline"> <code>Short</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.Short</code><br clear="none" class="atl-forced-newline"> <code>null</code> -&gt; <code>org.jsmpp.bean.OptionalParameter.
 Null</code></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">CamelSmppEncoding</td><td colspan="1" rowspan="1" class="confluenceTd">String</td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.14.1 and Camel 2.15.0 onwards and </strong><strong>only for SubmitSm, SubmitMulti and DataSm</strong>.&#160; Specifies the encoding (character set name) of the bytes in the message body.&#160; If the message body is a string then this is not relevant because Java Strings are always Unicode.&#160; If the body is a byte array then this header can be used to indicate that it is ISO-8859-1 or some other value.&#160; Default value is specified by the endpoint configuration parameter <em>encoding</em></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">CamelSmppSplittingPolicy</td><td colspan="1" rowspan="1" class="confluenceTd">String</td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.14.1 and Camel 2.15.0 onwards and </strong><strong>only
  for SubmitSm, SubmitMulti and DataSm</strong>.&#160; Specifies the policy for message splitting for this exchange.&#160; Possible values are described in the endpoint configuration parameter <em>splittingPolicy</em></td></tr></tbody></table></div></div><p>The following message headers are used by the SMPP producer to set the response from the SMSC in the message header</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppId</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>List&lt;String&gt;</code>/<code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The id to identify the submitted short message(s) for later
  use. <strong>From Camel 2.9.0</strong>: In case of a ReplaceSm, QuerySm, CancelSm and DataSm this header vaule is a <code>String</code>. In case of a SubmitSm or SubmitMultiSm this header vaule is a <code>List&lt;String&gt;</code>.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSentMessageCount</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>From Camel 2.9 onwards only for SubmitSm and SubmitMultiSm</strong> The total number of messages which has been sent.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppError</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, List&lt;Map&lt;String, Object&gt;&gt;&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>From Camel 2.9 onwards only for SubmitMultiSm</strong> The errors which occurred by sending th
 e short message(s) the form <code>Map&lt;String, List&lt;Map&lt;String, Object&gt;&gt;&gt;</code> (messageID : (destAddr : address, error : errorCode)).</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameters</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, String&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in Camel 2.13.0/3.0.0</strong><br clear="none" class="atl-forced-newline"> <strong>From Camel 2.11.1 onwards only for DataSm</strong> The optional parameters which are returned from the SMSC by sending the message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameter</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;Short, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>From Camel 2.10.7, 2.11.2 onwards only for Dat
 aSm</strong> The optional parameter which are returned from the SMSC by sending the message. The key is the <code>Short</code> code for the optional parameter. The value is converted in the following way:<br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.COctetString</code> -&gt; <code>String</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.OctetString</code> -&gt; <code>byte[]</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Byte</code> -&gt; <code>Byte</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Int</code> -&gt; <code>Integer</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Short</code> -&gt; <code>Short</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Null</code> -&gt; <code>null</code></p></td></tr></tbody></table></div></div><h3 id="BookIn
 OnePage-ConsumerMessageHeaders">Consumer Message Headers</h3><p>The following message headers are used by the SMPP consumer to set the request data from the SMSC in the message header</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSequenceNumber</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification, DeliverSm and DataSm</strong> A sequence number allows a response PDU to be correlated with a request PDU. The associated SMPP response PDU must preserve this field.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"
 ><p><code>CamelSmppCommandId</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification, DeliverSm and DataSm</strong> The command id field identifies the particular SMPP PDU. For the complete list of defined values see chapter 5.1.2.1 in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification, DeliverSm and DataSm</strong> Defines the address of SME (Short Message Entity) which originated this message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="
 1" class="confluenceTd"><p><strong>only for AlertNotification and DataSm</strong> Defines the numeric plan indicator (NPI) to be used in the SME originator address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSourceAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification and DataSm</strong> Defines the type of number (TON) to be used in the SME originator address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppEsmeAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification</strong> Defines the desti
 nation ESME address. For mobile terminated messages, this is the directory number of the recipient MS.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppEsmeAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification</strong> Defines the numeric plan indicator (NPI) to be used in the ESME originator address parameters. Use the URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppEsmeAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for AlertNotification</strong> Defines the type of number (TON) to be used in the ESME originator address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></t
 d></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppId</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt and DataSm</strong> The message ID allocated to the message by the SMSC when originally submitted.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDelivered</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> Number of short messages delivered. This is only relevant where the original message was submitted to a distribution list.The value is padded with leading zeros if necessary.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDoneDate</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Da
 te</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> The time and date at which the short message reached it's final state. The format is as follows: YYMMDDhhmm.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppStatus</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>DeliveryReceiptState</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt:</strong> The final status of the message. The following values are defined:<br clear="none" class="atl-forced-newline"> <code>DELIVRD</code>: Message is delivered to destination<br clear="none" class="atl-forced-newline"> <code>EXPIRED</code>: Message validity period has expired.<br clear="none" class="atl-forced-newline"> <code>DELETED</code>: Message has been deleted.<br clear="none" class="atl-forced-newline"> <code>UNDELIV</code>: Message is undeliverable<br clear="none" 
 class="atl-forced-newline"> <code>ACCEPTD</code>: Message is in accepted state (i.e. has been manually read on behalf of the subscriber by customer service)<br clear="none" class="atl-forced-newline"> <code>UNKNOWN</code>: Message is in invalid state<br clear="none" class="atl-forced-newline"> <code>REJECTD</code>: Message is in a rejected state</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppCommandStatus</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> The Command status of the message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppError</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> Where appropriate this may hold a Network specific 
 error code or an SMSC error code for the attempted delivery of the message. These errors are Network or SMSC specific and are not included here.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSubmitDate</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Date</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> The time and date at which the short message was submitted. In the case of a message which has been replaced, this is the date that the original message was replaced. The format is as follows: YYMMDDhhmm.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppSubmitted</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for smsc DeliveryReceipt</strong> Number of short messages originally submitted. This is only relevant wh
 en the original message was submitted to a distribution list.The value is padded with leading zeros if necessary.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddr</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm and DataSm:</strong> Defines the destination SME address. For mobile terminated messages, this is the directory number of the recipient MS.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppScheduleDeliveryTime</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm:</strong> This parameter specifies the scheduled time at which the message delivery should be first attempted. It defines either the absolute date and time or relative time from the current SMSC ti
 me at which delivery of this message will be attempted by the SMSC. It can be specified in either absolute time format or relative time format. The encoding of a time format is specified in Section 7.1.1. in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppValidityPeriod</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm</strong> The validity period parameter indicates the SMSC expiration time, after which the message should be discarded if not delivered to the destination. It can be defined in absolute time format or relative time format. The encoding of absolute and relative time format is specified in Section 7.1.1 in the smpp specification v3.4.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppServiceType</code></p></td><td colspan="1" rowspan="1" class="conflu
 enceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DeliverSm and DataSm</strong> The service type parameter indicates the SMS Application service associated with the message.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppRegisteredDelivery</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> Is used to request an delivery receipt and/or SME originated acknowledgements. Same values as in Producer header list above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrNpi</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> Defines the numeric plan indicator (NPI) in the destination address parameters. Use t
 he URI option <code>sourceAddrNpi</code> values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppDestAddrTon</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Byte</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>only for DataSm</strong> Defines the type of number (TON) in the destination address parameters. Use the <code>sourceAddrTon</code> URI option values defined above.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppMessageType</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.6 onwards</strong>: Identifies the type of an incoming message:<br clear="none" class="atl-forced-newline"> <code>AlertNotification</code>: an SMSC alert notification<br clear="none" class="atl-forced-newline"> <code>DataSm</code>: an SMSC data short message<br
  clear="none" class="atl-forced-newline"> <code>DeliveryReceipt</code>: an SMSC delivery receipt<br clear="none" class="atl-forced-newline"> <code>DeliverSm</code>: an SMSC deliver short message</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameters</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in Camel 2.13.0/3.0.0</strong><br clear="none" class="atl-forced-newline"> <strong>Camel 2.10.5 onwards and only for DeliverSm</strong> The optional parameters send back by the SMSC.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelSmppOptionalParameter</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;Short, Object&gt;</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.10.7, 2.11.2 onwards and onl
 y for DeliverSm</strong> The optional parameters send back by the SMSC. The key is the <code>Short</code> code for the optional parameter. The value is converted in the following way:<br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.COctetString</code> -&gt; <code>String</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.OctetString</code> -&gt; <code>byte[]</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Byte</code> -&gt; <code>Byte</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Int</code> -&gt; <code>Integer</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Short</code> -&gt; <code>Short</code><br clear="none" class="atl-forced-newline"> <code>org.jsmpp.bean.OptionalParameter.Null</code> -&gt; <code>null</code></p></td></tr></tbody></table></div></div><div class="confluence-information-
 macro confluence-information-macro-tip"><p class="title">JSMPP library</p><span class="aui-icon aui-icon-small aui-iconfont-approve confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>See the documentation of the <a shape="rect" class="external-link" href="http://jsmpp.org" rel="nofollow">JSMPP Library</a> for more details about the underlying library.</p></div></div><h3 id="BookInOnePage-Exceptionhandling.1">Exception handling</h3><p>This component supports the general Camel exception handling capabilities</p><p>When an error occurs sending a message with SubmitSm (the default action), the org.apache.camel.component.smpp.SmppException is thrown with a nested exception, org.jsmpp.extra.NegativeResponseException.&#160; Call NegativeResponseException.getCommandStatus() to obtain the exact SMPP negative response code, the values are explained in the SMPP specification 3.4, section 5.1.3.<br clear="none"> <strong>Camel 2.8 onwards</strong>: When t
 he SMPP consumer receives a <code>DeliverSm</code> or <code>DataSm</code> short message and the processing of these messages fails, you can also throw a <code>ProcessRequestException</code> instead of handle the failure. In this case, this exception is forwarded to the underlying <a shape="rect" class="external-link" href="http://jsmpp.org" rel="nofollow">JSMPP library</a> which will return the included error code to the SMSC. This feature is useful to e.g. instruct the SMSC to resend the short message at a later time. This could be done with the following lines of code:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[from(&quot;smpp://smppclient@localhost:2775?password=password&amp;enquireLinkTimer=3000&amp;transactionTimer=5000&amp;systemType=consumer&quot;)
   .doTry()
     .to(&quot;bean:dao?method=updateSmsState&quot;)

Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.



Mime
View raw message