To send a message to a single destination address in an SMPP SUBMIT_SM PDU, the structure used in the Data parameter of a SendGatewayMessage
function or the return variable of the CFC listener method normally has the following fields:
Field | Contents |
---|---|
command |
If present, the value must be |
shortMessage or messagePayload |
The Message contents. You must specify one of these fields, but not both. The SMPP specification imposes a maximum size of 254 bytes on the |
destAddress |
The address to which to send the message (required). |
sourceAddress |
The address of this application. You can omit this field if it is specified in the configuration file. |
You can also set optional fields in the structure, such as a field that requests a delivery receipt. For a complete list of fields, see submit command in CFML Reference. For detailed descriptions of these fields, see the documentation for the SUBMIT_MULTI PDU in the SMPP3.4 specification, which you can download from the SMS Forum at www.smsforum.net/.
Note: To send long messages, you can separate the message into multiple chunks and use a submit command to send each chunk separately. In this case, a CFC would use multiple SendGatewayMessage
functions, instead of the cfreturn
function.
The following example from a CFM page uses a sendGatewyMessage
CFML function with a submit
command to send an SMS messages that you enter in the form. This example uses the SMS gateway that is configured in the ColdFusion MX installation, and will send the message to the SMS client simulator.
<h3>Sending SMS From a Web Page Example</h3> <cfif IsDefined("form.oncethrough") is "Yes"> <cfif IsDefined("form.SMSMessage") is True AND form.SMSMessage is not ""> <h3>Sending Text Message: </h3> <cfoutput>#form.SMSMessage#</cfoutput><br> <cfscript> /* Create a structure that contains the message. */ msg = structNew(); msg.command = "submit"; msg.destAddress = "5551234"; msg.shortMessage = form.SMSMessage; ret = sendGatewayMessage("SMS Menu App - 5551212", msg); </cfscript> </cfif> <hr noshade> </cfif> <!--- begin by calling the cfform tag ---> <cfform action="command.cfm" method="POST"> SMS Text Message: <cfinput type="Text" name="SMSMessage" value="Sample text Message" required="No" maxlength="160"> <p><input type = "submit" name = "submit" value = "Submit"> <input type = "hidden" name = "oncethrough" value = "Yes"> </cfform> </body> </html>
For a simple example of a listener CFC uses the submit
command to echo incoming SMS messages to the message originator, see Incoming message handling example.