SMS Delivery Reports

SMS Delivery Reports

Delivery Reports

When an MT message is delivered to a handset, or fails for any reason, you will receive a callback with a delivery report. This is required for charged messages, optional (but recommended) for free messages. If the message is multi-part message, then it will get a delivery report for each part. It can be sent in JSON, XML, or HTTP GET/POST key/value pairs. If you want to change your format or your URL, please contact Support.

Common requires that your receiver responds with a HTTP status of 200 OK to acknowledge receipt of the delivery report. For added reliance, Common can also require that your receiver responds with a certain string in the body as well; this is optional. If you want this, please contact Support and they will enable it on your Gate.

Delivery reports will be POSTed to your service from the following IPs, please make sure there is an opening in your firewall for the Hosts listed further below in this document.

 

Delivery reports contain the following fields:

FieldData typeDescription
refIdStringIf you used a refId when submitting the message, this will be mirrored here. If not, this will be null.
idStringThis is Common’s internal message ID for this message. It mirrors the ID which was given to you when submitting the message. If the message is a multipart message, the id will have the following pattern {id}${n}* where n is the ordinal number that identifies the part. *Example: abc123$0 is the first part of the message with id abc123
operatorStringThe telecom operator the message was sent to (The end-users’s operator)
sentTimestampDateTimeThe timestamp when Common sent the message to the telecom operator. UTC time formatted according to RFC3339.
timestampDateTimeThe timestamp from the telecom operator for this status message. UTC time formatted according to RFC3339.
resultCodeIntegerThe status of the message. For what the different codes mean, see Status codes table below.
operatorResultCodeStringThe unmapped status of the message from the operator. Each telecom operator has different statuses and this is only provided for debugging or reference, resultCode is the real status.
segmentsIntegerThe number of segments (of 140 bytes) the message was split into for delivery.
gateCustomParameterslist - KeyValueIf there are any custom parameters set on your gate, they will be provided here. Usually blank.
customParameterslist - KeyValueIf there are any extra fields in the delivery report Common receives from the operator, they will be listed here. Usually blank or non-important. Note: the parameters source and destination (as defined in the request) added by default to the customParameters.

Result Codes

Follow this link for a listing of common result codes,https://sergel.atlassian.net/wiki/spaces/~7012173a4d6732ef54b5ea88da4ffab44a251/pages/1926660101.

Delivery Report Example

The following example is an example of a successfully delivered message. refId and id have been set to invalid values in this example.
{
”refId”: ”0”,
”id”: ”0”,
”operator”: ”no.telenor”,
”sentTimestamp”: ”2015-11-19T09:37:35Z”,
”timestamp”: ”2015-11-19T09:37:00Z”,
”resultCode”: 1001,
”operatorResultCode”: ”2”,
”segments”: 1,
”gateCustomParameters”: {},
”customParameters”: {
”received”: ”2015-11-19 10:37:36”
}
}

The following example is an example of a message which was attempted sent to a phone number which does not exist. refId and id have again been set to invalid values in this example.
{
”refId”: ”0”,
”id”: ”0”,
”operator”: null,
”sentTimestamp”: ”2015-11-19T10:17:37Z”,
”timestamp”: ”2015-11-19T10:17:37Z”,
”resultCode”: 2106,
”operatorResultCode”: null,
”segments”: 1,
”gateCustomParameters”: {},
”customParameters”: {
”received”: ”2015-11-19 11:17:37”
}
}

List of hosts

The following hosts are currently used for outgoing messaging from the SMS Platform:

Hostname(s)IP address(es)
socks1.sp247.net 195.84.162.34
socks2.sp247.net 194.71.165.71
socks3.sp247.net 195.84.162.16
socks4.sp247.net 194.71.165.98
socks5.sp247.net 195.84.162.3
socks6.sp247.net 194.71.165.122
s1.n-eu.linkmobility.io 213.242.87.36
s2.n-eu.linkmobility.io 213.242.87.37
s3.n-eu.linkmobility.io 213.242.87.38
s4.n-eu.linkmobility.io 213.242.87.39
s5.n-eu.linkmobility.io 213.242.87.40
s6.n-eu.linkmobility.io 213.242.87.41
s1.c-eu.linkmobility.io 62.67.62.101
s2.c-eu.linkmobility.io 62.67.62.102
s3.c-eu.linkmobility.io 62.67.62.103
s4.c-eu.linkmobility.io 62.67.62.104
s5.c-eu.linkmobility.io 62.67.62.105
s6.c-eu.linkmobility.io 62.67.62.106
s1.s-eu.linkmobility.io 217.163.95.196
s2.s-eu.linkmobility.io 217.163.95.197
s3.s-eu.linkmobility.io 217.163.95.198
s4.s-eu.linkmobility.io 217.163.95.199
s5.s-eu.linkmobility.io 217.163.95.200
s6.s-eu.linkmobility.io 217.163.95.201
s1.no.linkmobility.io 213.242.87.68
s2.no.linkmobility.io 213.242.87.69
s3.no.linkmobility.io 213.242.87.70
s4.no.linkmobility.io 213.242.87.71
s5.no.linkmobility.io 213.242.87.72
s6.no.linkmobility.io 213.242.87.73