Delivery report handler is a servlet that handles the message delivery report from SMS gateway. It supports multiple delivery report servlets with different configuration for different gateways.
When BTTOutboundMessageHandler handle the outbound HTTP response from gateway, it handles the initial delivery report at the first step. The initial delivery report only indicate whether the outbound message sending request is accepted or rejected by gateway at the gateway level. When the message is received by mobile phone, the gateway submits an http request to the UDTT delivery report handler which handles the DLR status of message.
Following is the delivery report handler configuration:
ParameterNames Configuration:
Standard DLR status code:
Note The value of the field in parameterNames should be mapped correctly with the keywords of the specific SMS gateway. Take statusParamName =" statuscode “in the example above in application/x-www-form-urlencoded type, the value of the field statusParamName is mapped with the keywords for the message data of the gateway.
Example 1
Following is an example for delivery report handler configuration in application/x-www-form-urlencoded type:
When Outbound Message Handler send message to gateway, it can register the URL of delivery report handler. When the message is delivered, the gateway will call back the URL of Delivery Report Handler to tell the status of message delivery. The URL of delivery report handler can be defined as self-defined parameters of outbound handler configuration.
The delivery report handler Servlet should be configured in file web.xml of the web project. The delivery report handler configuration file is set as servlet init-param configFile, and the Id is set as servlet init-param dlrConfigID. Example: