Skip to main content
Skip table of contents

Configuration

Configuration for SLBP is stored in the slbp.conf file on the file system of the SLBP host.

If using the AWS Marketplace version of the SLBP, the credentials for using the API and GUI default to “slbpuser” for the client ID and the AWS EC2 instance ID for the password (e.g. i-092bxxe40xxc1f2xx).

The configuration file is in JSON format:

CODE
{
  "base": {
    "auth.client_id": "",
    "auth.client_secret": "",
    "smpp.port": 2775,
    "smpp.max_connections_per_ip": 250
  },
  "targets": [
    {"name":"smsc1","host":"smsc1.xyz.com","port":2775},
    {"name":"smsc2","host":"smsc2.xyz.com","port":2775},
    {"name":"smsc3","host":"smsc3.xyz.com","port":2775},
    {"name":"smsc4","host":"smsc4.xyz.com","port":2775}
  ],
  "customers": [
    {
      "systemid": "default",
      "targets": [
        {"name":"smsc1","weight":1},
        {"name":"smsc2","weight":1}
      ],
      "sourceaddr": [
        {
          "regex": "^(.*)(-AD)$",
          "targets": [
            {"name":"smsc3","weight":1},
            {"name":"smsc4","weight":1}
          ]
        },
        {
          "address": "Acme",
          "targets": [
            {"name":"smsc3","weight":1},
            {"name":"smsc4","weight":5}
          ]
        }
      ]
    },
    {
      "systemid": "abcdef",
      "targets": [
        {"name":"smsc3","weight":2},
        {"name":"smsc4","weight":1}
      ]
    }
  ]
}

If the configuration file contains invalid JSON, then the configuration will not be loaded. When reloading configuration, existing configuration will continue to be used if the new configuration cannot be loaded.

Targets section

targets"

This mandatory section of the configuration defines the upstream platforms that the SLBP may connect to. These targets are referenced by their “name”.

Each entry in the targets section contains:

Field

Description

Example

name

Identifier of target

String of up to 16 characters and comprised of a-z, A-Z, 0-9, -, . and _.

mandatory

“smsc1”

host

IP or hostname

mandatory

“smsc1.xyz.com“

port

TCP port number

optional Default: 2775

2775

Customers section

customers"

This optional section of the configuration defines the routing of messages submitted by customers connecting to the SLBP. Customers are identified by the SMPP system ID in the SMPP bind request they issue after connecting to the platform. No passwords are configured in the SLBP as authorisation is performed by the upstream platforms.

If present, the entry with the system ID of “default" is used by the SLBP for connections to the platform when no other entry matching the system ID is configured.

Each entry in the customers section identifies a system ID ("systemid") and the associated targets ("targets").

Field

Description

Example

systemid

Customer’s SMPP system ID

mandatory

“abcdef”

targets

List of targets over which to load balance customer submissions, and from where DLRs and MO are received.

mandatory

[{"name":"smsc3","weight":2},{"name":"smsc4","weight":1}]

sourceaddr

List of source addresses and corresponding list of target names to be used for load balancing based on source address.

Availability: on-premises only

optional

Each entry in customers > targets contains:

Field

Description

Example

name

Identifier of target from top-level targets section to which this entry relates.

String of up to 16 characters and comprised of a-z, A-Z, 0-9, -, . and _.

mandatory

“smsc3“

weight

Weighting to be used when load balancing traffic. If a customer’s traffic is load balanced over two targets, target A with a weight of 2 and target B with a weight of 3, target A will receive 2/5 (40%) of the traffic.

Numeric value of 0 or higher.

optional Default: 1

2

If this section is not specified or is empty, all SMPP connections made to the SLBP will result in upstream connections to all platforms contained in the top-level targets section.

Changes to the weight of a target for an existing customer SMPP session will take effect immediately. However, changes that involve adding or removing targets for a customer require the customer to re-connect (i.e. rebind) to the SLBP.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.