21 Configuring the SMS Gateway

This chapter describes the Short Message Service (SMS) gateway feature and how to configure it for Oracle Communications Instant Messaging Server.

About the SMS Gateway

The SMS gateway feature enables the Instant Messaging server to deliver chat messages and alerts in the form of SMS to Instant Messaging users who are offline. This feature provides a streamlined instant messaging experience by forwarding messages to users' mobile phones when they are offline. The SMS gateway uses the SMPP (short message peer-to-peer) protocol and XMPP (Extensible Messaging and Presence Protocol) for messaging services.

The following list describes the SMS gateway terms:

  • SMS: Short Message Service is a wireless messaging service that permits the transmission of a short text message from and to a digital wireless terminal.

  • SMSC: Short Message Service Center is a network element in the mobile telephone network that delivers SMS messages to mobile devices.

  • SMPP: Short Message Peer-to-Peer protocol is a telecommunication protocol used for exchanging SMS messages between SMS entities. For example, short message service centers.

  • XMPP: Extensible Messaging and Presence Protocol is an open Extensible Markup Language (XML) protocol for near-real-time messaging, presence, and request-response services.

Configuring the SMS Gateway

To enable the SMS gateway feature, you must configure the Instant Messaging server and client.

SMS and Server Configuration Properties

Table 21-1 shows the SMS configuration properties.

Table 21-1 SMS Gateway Properties

Property Default Value Description

lsmsgw.imadmin.enable

false

Enables or disables the SMS gateway. If set to true, you can start the SMS gateway by using the imadmin command.

smsgw.jid

None

A jabber ID (JID) to bind the SMS gateway to the Instant Messaging server. The value should be the same as the value that you define for the smppbind.jid property.

smsgw.password

None

Password to authenticate the SMS gateway to the Instant Messaging server. The value should be the same as the value that you define for the smppbind.password property.

smsgw.iim_server

None

Host name and port number of the Instant Messaging server.

smsgw.sms_limit

-1

Number of messages that can be sent per hour. The default value is -1 and it indicates that unlimited number of SMS messages that can be sent per hour.

smsgw.sms_queue_capacity

512

Maximum number of messages that can be queued for SMS delivery.

smsgw.im_char_limit

500

Maximum number of characters that you can specify in one message. If the number of characters is greater than the specified value, the message is rejected.

smpp.smsc_ip_address

None

IP address or host name of the SMSC.

smpp.smsc_port

2775

Port number of the SMSC.

smpp.bind_id

None

Identifier used to bind the SMS gateway to the SMSC.

smpp.bind_password

None

Password to authenticate the SMS gateway to the SMSC.

smpp.sender_id

None

Sender ID of the outgoing SMS.


Table 21-2 shows the Instant Messaging server properties that you use to enable SMS.

Table 21-2 Instant Messaging Server Properties to Enable SMS

Property Default Value Description

iim_server.components

None

List of component identifiers that should have smppbind. For example, httpbind, smppbind.

iim_agent.smppbind.enable

smppbind.password

Enables the Instant Messaging server to identify the SMS gateway.

smppbind.jid

None

A jabber JID for binding the SMS gateway to the Instant Messaging server.

smppbind.password

None

Password to authenticate the SMS gateway to the Instant Messaging server.


Server-Side Configuration

You can configure the SMS gateway feature by either running the configure utility or the imconfutil command.

Configuring the SMS Gateway by Using the imconfutil Command

To configure the SMS gateway by using the imconfutil command:

  1. Ensure that Instant Messaging Server has been installed.

  2. Add the SMS gateway component by using the add-component command.

  3. Set the SMS gateway properties by using the set-prop command

Example: Configuring the SMS Gateway on the Same Host as the Instant Messaging Server

imconfutil -c InstantMessaging_home/config/iim.conf.xml add-component id=smsgateway jid=smppbind.example.com password=password
imconfutil set-prop -c InstantMessaging_home/config/iim.conf.xml smpp.bind_id=test smpp.bind_password=password smpp.sender_id=test
smpp.smsc_ip_address=test.example.com smpp.smsc_port=2775 smppbind.jid=smppbind.example.com smppbind.password=password smsgw.iim_server=foo.example.com:5269
smsgw.imadmin.enable=true

Example: Configuring the SMS Gateway and Instant Messaging Server on Different Hosts

In this example, the SMS gateway is configured on im-1 and the Instant Messaging server is on im-2.

### On host im-1:
imconfutil set-prop -c InstantMessaging_home/config/iim.conf.xml smpp.bind_id=test smpp.bind_password=password smpp.sender_id=test smpp.smsc_ip_address=test.example.com smpp.smsc_port=2775 smppbind.jid=smppbind.example.com smppbind.password=password smsgw.iim_server=bar.example.com:5269 smsgw.imadmin.enable=true
### On host im-2:
imconfutil add-component smsgateway jid=smppbind.example.com password=password

Note:

The value of the jid and password properties provided in the add-component command must be the same as the values that you define for the smppbind.jid and smppbind.password properties.

Configuring the SMS Gateway by Using the configure Utility

To configure the SMS gateway by using the configure utility:

  1. Ensure that Instant Messaging Server has been installed.

  2. Use Table 21-1 and Table 21-2 to determine the values to use.

  3. Run the configure utility.

    configure
    
  4. Perform the following tasks in the configure panel.

    1. Select the Enable SMS Gateway option by typing yes.

    2. Select the Enable Local Component option by typing yes.

      If you select this option, you can administer the SMS gateway by using the imadmin command. For example, to start the SMS gateway, you can enter imadmin start sms-gateway. You can also start the gateway by typing imadmin start.

  5. Enter the XMPP server host name.

    You can configure Instant Messaging Server and the SMS gateway on the same host or on different hosts. If you choose to configure the gateway for a remote Instant Messaging server, specify the remote server host name. The default host name is the name of the local host.

  6. Enter the port number.

    The default value is the port number that you specify for the XMPP server. For example, if the XMPP server port is 5269, enter 5269.

  7. Enter the bind ID of the SMSC at the ESME System Id prompt.

  8. Enter the SMSC bind password at the ESME System Password prompt.

  9. Enter the IP address or the FQHN (Fully Qualified Host Name) of the SMSC at the SMSC Host address prompt.

  10. Enter the SMSC port number at the SMSC port prompt. The default port number is 2775.

  11. Enter the Sender ID at the SMS Sender ID prompt.

    The sender ID is the ID with which you have registered to the SMSC. The SMSC always send a SMS with the sender ID that you specify here.

Client-Side Settings

The Instant Messaging server searches for the recipient phone number in the following order of precedence:

  1. Phone number settings in user v-card of a third-party messaging client

  2. LDAP setting in the mobile attribute of Directory Server

  3. Phone number settings in the Instant Messaging client

If you use a third-party messaging client such as Psi, specify the phone settings in the user v-card. See the third-party messaging client documentation for the procedure about adding phone settings.

If you use Directory Server, add the recipient phone number in the LDAP mobile attribute. For more information about the Directory Server, refer to the Directory Server documentation at:

http://www.oracle.com/technetwork/middleware/id-mgmt/documentation/index.html

Starting and Stopping the SMS Gateway

You can start and stop the SMS gateway by using the imadmin command. Before starting the SMS gateway, ensure that the Instant Messaging service and the SMSC service are online.

  • To start the SMS gateway, enter the following command:

    imadmin start sms-gateway
    
  • To stop the SMS gateway, enter the following command:

    imadmin stop sms-gateway
    
  • To check the status of the SMS gateway, enter the following command:

    imadmin status sms-gateway