{"id":1007,"date":"2026-09-22T09:41:24","date_gmt":"2026-09-22T09:41:24","guid":{"rendered":"https:\/\/smppcenter.com\/kb\/?p=1007"},"modified":"2026-09-22T09:41:26","modified_gmt":"2026-09-22T09:41:26","slug":"smpp-connect-extra-attributes","status":"publish","type":"post","link":"https:\/\/smppcenter.com\/kb\/smpp-connect-extra-attributes\/","title":{"rendered":"SMPP Connect Extra Attributes: Advanced Bind Tuning for Upstream Vendors"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The standard SMPP Connect form covers most vendors. Some vendors need extra settings: TLS binds, a stricter keep-alive, a smaller in-flight window, or prefix restrictions. <strong>Extra Attributes<\/strong> lets you set these per connect without changing any other connect.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Where to find it<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>SMPP Client \u2192 Connects<\/strong> \u2192 <strong>Edit<\/strong> the connect \u2192 scroll to the bottom \u2192 <strong>Extra Attributes<\/strong>. Choose an <strong>Attribute<\/strong>, enter a <strong>Value<\/strong>, and click <strong>Save Changes<\/strong>. Add one attribute per entry.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Most useful attributes<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Connection stability<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribute<\/th><th>Use<\/th><\/tr><\/thead><tbody><tr><td><code>enquire-link-interval<\/code><\/td><td>Seconds between keep-alive (enquire_link) packets. Lower it if the vendor or a firewall drops idle binds<\/td><\/tr><tr><td><code>reconnect-delay<\/code><\/td><td>Seconds to wait before re-binding after a disconnect. Increase it if the vendor blocks rapid re-binds<\/td><\/tr><tr><td><code>connection-timeout<\/code><\/td><td>How long to wait when opening the connection<\/td><\/tr><tr><td><code>wait-ack<\/code> \/ <code>wait-ack-expire<\/code><\/td><td>How long to wait for a <code>submit_sm_resp<\/code>, and what to do when it doesn&#8217;t arrive<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Throughput and flow control<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribute<\/th><th>Use<\/th><\/tr><\/thead><tbody><tr><td><code>max-pending-submits<\/code><\/td><td>Maximum unacknowledged submits in flight (the window). Lower it if the vendor throttles or disconnects under load<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Security<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribute<\/th><th>Use<\/th><\/tr><\/thead><tbody><tr><td><code>use-ssl<\/code><\/td><td>Bind over TLS when the vendor requires an encrypted SMPP port<\/td><\/tr><tr><td><code>ssl-client-certkey-file<\/code><\/td><td>Client certificate, if the vendor requires mutual TLS<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Addressing and filtering<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribute<\/th><th>Use<\/th><\/tr><\/thead><tbody><tr><td><code>allowed-prefix<\/code> \/ <code>denied-prefix<\/code><\/td><td>Only send (or never send) numbers with these prefixes on this connect. A safety net against sending traffic to destinations the vendor doesn&#8217;t cover<\/td><\/tr><tr><td><code>preferred-prefix<\/code> \/ <code>unified-prefix<\/code><\/td><td>Prefix preference and number normalisation for this connect<\/td><\/tr><tr><td><code>source-addr-ton\/npi<\/code>, <code>dest-addr-ton\/npi<\/code>, <code>bind-addr-ton\/npi<\/code>, <code>source-addr-autodetect<\/code><\/td><td>Override TON\/NPI handling when the TON\/NPI tab isn&#8217;t enough<\/td><\/tr><tr><td><code>address-range<\/code>, <code>service-type<\/code>, <code>interface-version<\/code>, <code>my-number<\/code><\/td><td>Vendor-specific bind parameters<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Message handling<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribute<\/th><th>Use<\/th><\/tr><\/thead><tbody><tr><td><code>validityperiod<\/code><\/td><td>Message validity sent to the vendor. Useful for OTP routes, so stale OTPs expire instead of arriving late<\/td><\/tr><tr><td><code>esm-class<\/code>, <code>alt-dcs<\/code>, <code>alt-charset<\/code>, <code>alt-addr-charset<\/code>, <code>max-sms-octets<\/code><\/td><td>Encoding and message-class adjustments for vendors with non-standard handling<\/td><\/tr><tr><td><code>msg-id-type<\/code><\/td><td>How the vendor&#8217;s message IDs are read (e.g. hex vs decimal). Fix this when DLRs don&#8217;t match their messages<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Diagnostics<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Attribute<\/th><th>Use<\/th><\/tr><\/thead><tbody><tr><td><code>log-level<\/code>, <code>log-format<\/code><\/td><td>More detailed logging on one connect while troubleshooting. Turn it back down afterwards<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Applying changes<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Extra attributes are bind-level settings. After saving, reload\/reconfigure the connect from its <strong>Connection<\/strong> manager, and restart the <strong>Connect Manager<\/strong> (System \u2192 Controls \u2192 SMPP Client) if the change doesn&#8217;t take effect. Do this in a low-traffic window.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Good practice<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Change one attribute at a time<\/strong> and watch sessions, queue and DLRs before changing the next.<\/li>\n\n\n\n<li><strong>Record why<\/strong> each attribute was set (vendor ticket, date) in the connect&#8217;s Description.<\/li>\n\n\n\n<li><strong>DLRs not matching messages<\/strong> is almost always <code>msg-id-type<\/code>. Ask the vendor whether their IDs are hex or decimal in <code>submit_sm_resp<\/code> and in <code>deliver_sm<\/code>.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Related articles<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/smppcenter.com\/kb\/add-new-smpp-connect-operator-vendor\/\">How to Add a New SMPP Connect<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/smppcenter.com\/kb\/keep-alive-frequency-smpp-client-set\/\">What is the keep-alive frequency set for SMPP client?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/smppcenter.com\/kb\/enquire-link-smpp-server\/\">Enquire link in SMPP server<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/smppcenter.com\/kb\/ton-npi-smpp\/\">TON and NPI in SMPP<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Tune an upstream bind beyond the standard form: keep-alive, in-flight window, reconnect behaviour, SSL, prefix filtering and message validity.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[332],"tags":[359,361,152,357,358,76,360],"class_list":["post-1007","post","type-post","status-publish","format-standard","hentry","category-connects-vendors","tag-allowed-prefix","tag-denied-prefix","tag-enquire-link","tag-max-pending-submits","tag-reconnect-delay","tag-smpp-connect","tag-ssl-bind"],"_links":{"self":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/posts\/1007","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/comments?post=1007"}],"version-history":[{"count":0,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/posts\/1007\/revisions"}],"wp:attachment":[{"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/media?parent=1007"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/categories?post=1007"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/smppcenter.com\/kb\/wp-json\/wp\/v2\/tags?post=1007"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}