This topic answers common questions about configuring text message receipts and provides solutions.
What is a mobile originated message and how do I get it?
A mobile originated (MO) message is a reply from an end user to a text message that you sent using Alibaba Cloud Short Message Service. You can subscribe to SmsUp MO messages to retrieve the content of the user's reply.
How do I view the content of user replies?
The Short Message Service console does not support viewing text message replies. You must first configure message receipts. Then, you can view the reply content by querying the message queue or using an HTTP webhook address.
How do I get mobile originated replies for sent messages?
Sending text messages and receiving MO receipts are two different processes.
To send a text message, you can call the Short Message Service API. For more information, see Code examples.
After an end user receives a text message and replies, the system pushes the reply content to your message queue or HTTP webhook address through the SmsUp API operation.
Can I specify a sender number for mobile terminated messages?
No. The sender number is randomly assigned by the carrier when the message is sent. This feature is not supported because carriers have not made this functionality available to Alibaba Cloud.
How do I set the receiving method for message receipts?
You can receive message receipts in two ways: by consuming messages from MNS or using the HTTP batch push mode. For more information, see Configure message receipts.
Is there a fixed IP address for getting message receipts from a message queue?
You must use the public network to pull message receipts. Alibaba Cloud does not provide a fixed IP address. If you have specific network restrictions, you can adjust your security policy to allow traffic from the following domain names: dysmsapi.aliyuncs.com, mns.cn-hangzhou.aliyuncs.com, dybaseapi.aliyuncs.com, and 1943695596114318.mns.cn-hangzhou.aliyuncs.com.
What happens if a mobile terminated message status report fails to be pushed 10 times?
If the first attempt to push a status report fails, the system retries at the following intervals: 1 minute, 5 minutes, 10 minutes, 30 minutes, and then five more times at 60-minute intervals. If the push still fails after 10 attempts, the system stops retrying. You can no longer retrieve the delivery status through SmsReport. In this case, you can do one of the following:
You can use QuerySendDetails to retrieve the status receipt for a single message.
You can log on to the Short Message Service console. On the page, you can enter the mobile phone number to query the receipt status.
How do I count the number of users who unsubscribe after receiving a text message?
You can count unsubscribes based on the content of user replies. To do this, you can call the SmsUp API operation to pull MO messages. For configuration details, see Configure message receipts.
I received a response from the SmsUp API operation, but it does not contain a BizId. How do I know which message the receipt is for?
The BizId field is used to identify a specific mobile terminated message. Without it, you can only estimate which message the receipt belongs to based on the content and time of the user's reply.
Why do I get an error saying "failed to save address" when I set a callback URL?
Cause: If you see a "system error" when you save the configuration for the HTTP batch push mode, this error usually indicates that your webhook address does not return a response in the required format.
Solution: To resolve this issue, ensure that your webhook address returns a response in the following format without any other validation. The HTTP response status code must be 200, and the response time must be within 700 ms.
{
"code": 0,
"msg": "Success"
}Why do I get a 404 error for the SmsUp callback?
Confirm that the webhook address provides a valid response. A valid response must have an HTTP status code of 200, a response time of 700 ms or less, and the following format:
{
"code": 0,
"msg": "Success"
}