ColdFusion provides the following tools for developing SMS applications:
- SMS test server
- SMS client simulator
SMS test server
The ColdFusion SMS test server is a lightweight SMSC simulator that listens on TCP/IP port 7901 for SMPP connection requests from other SMS resources, such as ColdFusion SMS gateways or the SMS client simulator. The resource supplies a user name, password, and telephone number (address). The user name and password must correspond to a name and password in the simulator's configuration file (described later).
After the SMS test server establishes a connection, it listens for incoming messages and forwards them to the specified destination address, if the destination address also corresponds to an existing SMPP connection.
The SMS test server lets you develop SMS applications without having to use an external SMSC supplier such as a telecommunications provider. The server supports the ColdFusion SMS gateway submit and submitMulti commands. It also accepts, but does not deliver messages sent using the SMS gateway data command. It does not include any store and forward capabilities.
Start the SMS test server by clicking the Start SMS Test Server button on the Settings page in the Event Gateways area in the ColdFusion Administrator.
Note: The SMS test server does not automatically restart when you restart ColdFusion. Manually restart the server if you restart ColdFusion.
The SMS test server reads the cf_root\WEB-INF\cfusion\lib\sms-test-users.txt file on J2EE configurations or cf_root\lib\sms-test-users.txt file on server configurations to get valid user names and passwords. ColdFusion includes a version of this file configured with several names and passwords. One valid combination is user name cf and password cf. You can edit this file to add or delete entries. The file must include a name and password entry for each user that connects to the test server. Separate user entries with blank lines, as the following example shows:
SMS client simulator
The ColdFusion SMS client simulator is a simple External Short Message Entity (ESME) that simulates a (limited-function) mobile phone. It can connect to the SMS test server and exchange messages with it.
Note: On UNIX and Linux systems, the client simulator requires X-Windows.
Use the following procedure to use the simulator.
Use the SMS simulator
- Ensure that you have started the SMS test server and configured and started an SMS event gateway instance in ColdFusion Administrator.
Run SMSClient.bat in Windows or SMSClient.sh on UNIX or Linux. These files are located in the cf_root\WEB-INF\cfusion\bin directory on J2EE configurations and the cf_root\bin directory on server configurations.If you installed a pure Java version of ColdFusion, for example, on Apple Mac OS X systems, enter the following command to start the simulator:
java -jar cf_root/WEB-INF/cfusion/lib/smpp.jar
- A dialog box appears, requesting the server, port, user name, password, and the phone number to use for this device. The simulator sends this phone number as the source address, and accepts SMS messages sent by the SMSC server to it using this number as the destination address. To connect to the SMS test server, accept the default values and specify an arbitrary phone number; you can also specify any user name-password pair that is configured in the cf_root\WEB-INF\cfusion\lib\sms-test-users.cfg file or cf_root\lib\sms-test-users.cfg or file.
- Click Connect.
- The SMS device simulator client appears. In the Send SMS To field, enter a phone number in the address-range property specified in the configuration file of the SMS event gateway that you want to send messages to.
- Type a message directly into the message field (to the left of the Send button), or use the simulator keypad to enter the message.
- Click the Send button.
The client simulator has a Connection menu with options to connect and disconnect from the SMSC server, and to check the connection. The connection information appears in a status line at the bottom of the client.