org.apache.camel.component.smpp.SmppConstants Maven / Gradle / Ivy
/*
* 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.
*/
package org.apache.camel.component.smpp;
import org.apache.camel.spi.Metadata;
/**
* Constants used in Camel SMPP module
*
*/
public interface SmppConstants {
@Metadata(label = "producer", description = "*For SubmitSm, SubmitMulti and ReplaceSm* The data\n" +
"coding according to the SMPP 3.4 specification, section 5.2.19. Use the\n" +
"URI option `alphabet` settings above.",
javaType = "Byte")
String ALPHABET = "CamelSmppAlphabet";
@Metadata(description = "The command", javaType = "String")
String COMMAND = "CamelSmppCommand";
@Metadata(label = "consumer", description = "*only for AlertNotification, DeliverSm and DataSm* The command id field\n" +
"identifies the particular SMPP PDU. For the complete list of defined\n" +
"values see chapter 5.1.2.1 in the smpp specification v3.4.",
javaType = "Integer")
String COMMAND_ID = "CamelSmppCommandId";
@Metadata(label = "consumer", description = "*only for DataSm* The Command status of the message.", javaType = "Integer")
String COMMAND_STATUS = "CamelSmppCommandStatus";
@Metadata(label = "producer", description = "*For SubmitSm, SubmitMulti and ReplaceSm* The data\n" +
"coding according to the SMPP 3.4 specification, section 5.2.19. Use the\n" +
"URI option `alphabet` settings above.",
javaType = "Byte")
String DATA_CODING = "CamelSmppDataCoding";
@Metadata(label = "producer", description = "The splitter", javaType = "org.apache.camel.component.smpp.SmppSplitter")
String DATA_SPLITTER = "CamelSmppSplitter";
@Metadata(label = "consumer", description = "*only for smsc DeliveryReceipt* Number of short messages delivered. This\n" +
"is only relevant where the original message was submitted to a\n" +
"distribution list.The value is padded with leading zeros if necessary.",
javaType = "Integer")
String DELIVERED = "CamelSmppDelivered";
@Metadata(description = "*Producer:* *only for SubmitSm, SubmitMulti, CancelSm and DataSm* Defines the\n" +
"destination SME address(es). For mobile terminated messages, this is the\n" +
"directory number of the recipient MS. It must be a `List` for\n" +
"SubmitMulti and a `String` otherwise.\n" +
"*Consumer:* *only for DeliverSm and DataSm:* Defines the destination SME address.\n" +
"For mobile terminated messages, this is the directory number of the\n" +
"recipient MS.",
javaType = "List or String")
String DEST_ADDR = "CamelSmppDestAddr";
@Metadata(description = "*Producer:* *only for SubmitSm, SubmitMulti, CancelSm and DataSm* Defines the\n" +
"numeric plan indicator (NPI) to be used in the SME destination address\n" +
"parameters. Use the URI option `sourceAddrNpi` values defined above.\n" +
"*Consumer:* *only for DataSm* Defines the numeric plan indicator (NPI) in the\n" +
"destination address parameters. Use the URI option `sourceAddrNpi`\n" +
"values defined above.",
javaType = "Byte")
String DEST_ADDR_NPI = "CamelSmppDestAddrNpi";
@Metadata(description = "*Producer:* *only for SubmitSm, SubmitMulti, CancelSm and DataSm* Defines the type\n" +
"of number (TON) to be used in the SME destination address parameters.\n" +
"Use the `sourceAddrTon` URI option values defined above.\n" +
"*Consumer:* *only for DataSm* Defines the type of number (TON) in the destination\n" +
"address parameters. Use the `sourceAddrTon` URI option values defined\n" +
"above.",
javaType = "Byte")
String DEST_ADDR_TON = "CamelSmppDestAddrTon";
@Metadata(label = "consumer", description = "*only for smsc DeliveryReceipt* The time and date at which the short\n" +
"message reached it's final state. The format is as follows: YYMMDDhhmm.",
javaType = "Date")
String DONE_DATE = "CamelSmppDoneDate";
@Metadata(label = "producer", description = "*only for SubmitSm,\n" +
"SubmitMulti and DataSm*. Specifies the encoding (character set name) of\n" +
"the bytes in the message body. If the message body is a string then\n" +
"this is not relevant because Java Strings are always Unicode. If the\n" +
"body is a byte array then this header can be used to indicate that it is\n" +
"ISO-8859-1 or some other value. Default value is specified by the\n" +
"endpoint configuration parameter _encoding_",
javaType = "String")
String ENCODING = "CamelSmppEncoding";
@Metadata(description = "*Producer:* *only for SubmitMultiSm* The errors which\n" +
"occurred by sending the short message(s) the form `Map>>` (messageID : (destAddr :\n"
+
"address, error : errorCode)).\n" +
"*Consumer:* *only for smsc DeliveryReceipt* Where appropriate this may hold a\n" +
"Network specific error code or an SMSC error code for the attempted\n" +
"delivery of the message. These errors are Network or SMSC specific and\n" +
"are not included here.",
javaType = "String or Map>>")
String ERROR = "CamelSmppError";
@Metadata(label = "producer", description = "the ASM class", javaType = "org.jsmpp.bean.ESMClass")
String ESM_CLASS = "CamelSmppClass";
@Metadata(label = "consumer", description = "*only for AlertNotification* Defines the destination ESME address. For\n" +
"mobile terminated messages, this is the directory number of the\n" +
"recipient MS.",
javaType = "String")
String ESME_ADDR = "CamelSmppEsmeAddr";
@Metadata(label = "consumer", description = "*only for AlertNotification* Defines the numeric plan indicator (NPI) to\n" +
"be used in the ESME originator address parameters. Use the URI option\n" +
"`sourceAddrNpi` values defined above.",
javaType = "Byte")
String ESME_ADDR_NPI = "CamelSmppEsmeAddrNpi";
@Metadata(label = "consumer", description = "*only for AlertNotification* Defines the type of number (TON) to be used\n" +
"in the ESME originator address parameters. Use the `sourceAddrTon` URI\n" +
"option values defined above.",
javaType = "Byte")
String ESME_ADDR_TON = "CamelSmppEsmeAddrTon";
@Metadata(label = "producer", description = "The final date", javaType = "java.util.Date")
String FINAL_DATE = "CamelSmppFinalDate";
@Metadata(label = "consumer", description = "*only for smsc DeliveryReceipt:* The final status of the message.",
javaType = "org.jsmpp.util.DeliveryReceiptState")
String FINAL_STATUS = "CamelSmppStatus";
@Metadata(description = "*Producer:* The id to identify the submitted short message(s) for later use.\n" +
"In case of a ReplaceSm, QuerySm, CancelSm and DataSm this\n" +
"header value is a `String`. In case of a SubmitSm or SubmitMultiSm this\n" +
"header value is a `List`.\n" +
"*Consumer:* *only for smsc DeliveryReceipt and DataSm* The message ID allocated to\n" +
"the message by the SMSC when originally submitted.",
javaType = "String or List")
String ID = "CamelSmppId";
@Metadata(label = "producer", description = "The message date", javaType = "String")
String MESSAGE_STATE = "CamelSmppMessageState";
@Metadata(label = "consumer", description = "Identifies the type of an incoming message:\n" +
"`AlertNotification`: an SMSC alert notification,\n" +
"`DataSm`: an SMSC data short message,\n" +
"`DeliveryReceipt`: an SMSC delivery receipt,\n" +
"`DeliverSm`: an SMSC deliver short message",
javaType = "String")
String MESSAGE_TYPE = "CamelSmppMessageType";
@Metadata(label = "producer", description = "*only for SubmitSm and SubmitMulti* Allows the originating SME to assign\n" +
"a priority level to the short message. Use the URI option `priorityFlag`\n" +
"settings above.",
javaType = "Byte")
String PRIORITY_FLAG = "CamelSmppPriorityFlag";
@Metadata(label = "producer", description = "The protocol id", javaType = "Byte")
String PROTOCOL_ID = "CamelSmppProtocolId";
@Metadata(description = "*Producer:* *only for SubmitSm, ReplaceSm, SubmitMulti and DataSm* Is used to\n" +
"request an SMSC delivery receipt and/or SME originated acknowledgements.\n" +
"Use the URI option `registeredDelivery` settings above.\n" +
"*Consumer:* *only for DataSm* Is used to request an delivery receipt and/or SME\n" +
"originated acknowledgements. Same values as in Producer header list\n" +
"above.",
javaType = "Byte")
String REGISTERED_DELIVERY = "CamelSmppRegisteredDelivery";
@Metadata(label = "producer", description = "*only for SubmitSm, SubmitMulti* Is used to\n" +
"request the SMSC delivery receipt only on the last segment of multi-segment (long) messages.\n"
+
"Use the URI option `singleDLR` settings above.",
javaType = "Boolean")
String SINGLE_DLR = "CamelSmppSingleDLR";
@Metadata(label = "producer", description = "*only for SubmitSm and SubmitMulti* The replace if present flag\n" +
"parameter is used to request the SMSC to replace a previously submitted\n" +
"message, that is still pending delivery. The SMSC will replace an\n" +
"existing message provided that the source address, destination address\n" +
"and service type match the same fields in the new message. The following\n" +
"values are defined: `0`, Don't replace and `1`, Replace",
javaType = "Boolean")
String REPLACE_IF_PRESENT_FLAG = "CamelSmppReplaceIfPresentFlag";
@Metadata(description = "*Producer:* only for SubmitSm, SubmitMulti and ReplaceSm* This parameter specifies\n" +
"the scheduled time at which the message delivery should be first\n" +
"attempted. It defines either the absolute date and time or relative time\n" +
"from the current SMSC time at which delivery of this message will be\n" +
"attempted by the SMSC. It can be specified in either absolute time\n" +
"format or relative time format. The encoding of a time format is\n" +
"specified in chapter 7.1.1. in the smpp specification v3.4.\n" +
"*Consumer:* *only for DeliverSm:* This parameter specifies the scheduled time at\n" +
"which the message delivery should be first attempted. It defines either\n" +
"the absolute date and time or relative time from the current SMSC time\n" +
"at which delivery of this message will be attempted by the SMSC. It can\n" +
"be specified in either absolute time format or relative time format. The\n" +
"encoding of a time format is specified in Section 7.1.1. in the smpp\n" +
"specification v3.4.",
javaType = "Date")
String SCHEDULE_DELIVERY_TIME = "CamelSmppScheduleDeliveryTime";
@Metadata(label = "producer", description = "*only for SubmitSm and SubmitMultiSm* The total\n" +
"number of messages which has been sent.",
javaType = "Integer")
String SENT_MESSAGE_COUNT = "CamelSmppSentMessageCount";
@Metadata(label = "consumer", description = "*only for AlertNotification, DeliverSm and DataSm* A sequence number\n" +
"allows a response PDU to be correlated with a request PDU. The\n" +
"associated SMPP response PDU must preserve this field.",
javaType = "int")
String SEQUENCE_NUMBER = "CamelSmppSequenceNumber";
@Metadata(description = "*Producer:* The service type parameter can be used to indicate the SMS Application\n" +
"service associated with the message. Use the URI option `serviceType`\n" +
"settings above.\n" +
"*Consumer:* *only for DeliverSm and DataSm* The service type parameter indicates the\n" +
"SMS Application service associated with the message.",
javaType = "String")
String SERVICE_TYPE = "CamelSmppServiceType";
@Metadata(description = "*Producer:* Defines the address of SME (Short Message Entity) which originated this message.\n" +
"*Consumer:* *Only for AlertNotification, DeliverSm and DataSm* Defines the address\n" +
"of SME (Short Message Entity) which originated this message.",
javaType = "String")
String SOURCE_ADDR = "CamelSmppSourceAddr";
@Metadata(description = "*Producer:* Defines the numeric plan indicator (NPI) to be used in the SME\n" +
"originator address parameters. Use the URI option `sourceAddrNpi` values\n" +
"defined above.\n" +
"*Consumer:* *only for AlertNotification and DataSm* Defines the numeric plan\n" +
"indicator (NPI) to be used in the SME originator address parameters. Use\n" +
"the URI option `sourceAddrNpi` values defined above.",
javaType = "Byte")
String SOURCE_ADDR_NPI = "CamelSmppSourceAddrNpi";
@Metadata(description = "*Producer:* Defines the type of number (TON) to be used in the SME originator\n" +
"address parameters. Use the `sourceAddrTon` URI option values defined\n" +
"above.\n" +
"*Consumer:* *only for AlertNotification and DataSm* Defines the type of number (TON)\n" +
"to be used in the SME originator address parameters. Use the\n" +
"`sourceAddrTon` URI option values defined above.",
javaType = "Byte")
String SOURCE_ADDR_TON = "CamelSmppSourceAddrTon";
@Metadata(label = "consumer", description = "*only for smsc DeliveryReceipt* Number of short messages originally\n" +
"submitted. This is only relevant when the original message was submitted\n" +
"to a distribution list.The value is padded with leading zeros if\n" +
"necessary.",
javaType = "Integer")
String SUBMITTED = "CamelSmppSubmitted";
@Metadata(label = "consumer", description = "*only for smsc DeliveryReceipt* The time and date at which the short\n" +
"message was submitted. In the case of a message which has been replaced,\n" +
"this is the date that the original message was replaced. The format is\n" +
"as follows: YYMMDDhhmm.",
javaType = "Date")
String SUBMIT_DATE = "CamelSmppSubmitDate";
@Metadata(label = "producer", description = "The system id.", javaType = "String")
String SYSTEM_ID = "CamelSmppSystemId";
@Metadata(label = "producer", description = "The password.", javaType = "String")
String PASSWORD = "CamelSmppPassword";
@Metadata(description = "*Producer:* *only for SubmitSm, SubmitMulti and ReplaceSm* The validity period\n" +
"parameter indicates the SMSC expiration time, after which the message\n" +
"should be discarded if not delivered to the destination. If it's\n" +
"provided as `Date`, it's interpreted as absolute time or relative time\n" +
"format if you provide it as `String` as specified in chapter 7.1.1 in\n" +
"the smpp specification v3.4.\n" +
"*Consumer:* *only for DeliverSm* The validity period parameter indicates the SMSC\n" +
"expiration time, after which the message should be discarded if not\n" +
"delivered to the destination. It can be defined in absolute time format\n" +
"or relative time format. The encoding of absolute and relative time\n" +
"format is specified in Section 7.1.1 in the smpp specification v3.4.",
javaType = "String or Date")
String VALIDITY_PERIOD = "CamelSmppValidityPeriod";
@Metadata(label = "consumer", description = "The optional parameters by name.", javaType = "Map",
deprecationNote = "Use CamelSmppOptionalParameter instead")
String OPTIONAL_PARAMETERS = "CamelSmppOptionalParameters";
@Metadata(description = "*Producer:* *only for SubmitSm, SubmitMulti and\n" +
"DataSm* The optional parameter which are send to the SMSC. The value is\n" +
"converted in the following way: `String` -> `org.jsmpp.bean.OptionalParameter.COctetString`, \n" +
"`byte[]` -> `org.jsmpp.bean.OptionalParameter.OctetString`, \n" +
"`Byte` -> `org.jsmpp.bean.OptionalParameter.Byte`,\n" +
"`Integer` -> `org.jsmpp.bean.OptionalParameter.Int`,\n" +
"`Short` -> `org.jsmpp.bean.OptionalParameter.Short`, \n" +
"`null` -> `org.jsmpp.bean.OptionalParameter.Null`\n" +
"*Consumer:* *only for DeliverSm* The optional\n" +
"parameters send back by the SMSC. The key is the `Short` code for the\n" +
"optional parameter. The value is converted in the following way: \n" +
"`org.jsmpp.bean.OptionalParameter.COctetString` -> `String`,\n" +
"`org.jsmpp.bean.OptionalParameter.OctetString` -> `byte[]`,\n" +
"`org.jsmpp.bean.OptionalParameter.Byte` -> `Byte`,\n" +
"`org.jsmpp.bean.OptionalParameter.Int` -> `Integer`,\n" +
"`org.jsmpp.bean.OptionalParameter.Short` -> `Short`,\n" +
"`org.jsmpp.bean.OptionalParameter.Null` -> `null`",
javaType = "Map")
String OPTIONAL_PARAMETER = "CamelSmppOptionalParameter";
@Metadata(label = "producer", description = "*only for SubmitSm,\n" +
"SubmitMulti and DataSm*. Specifies the policy for message splitting for\n" +
"this exchange. Possible values are described in the endpoint\n" +
"configuration parameter _splittingPolicy_",
javaType = "String")
String SPLITTING_POLICY = "CamelSmppSplittingPolicy";
byte UNKNOWN_ALPHABET = -1;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy