Share via


SMS_STATUS_INFORMATION (Compact 2013)

3/26/2014

This structure contains status information about a text message sent with the PS_MESSAGE_OPTION_STATUSREPORT flag in SmsGetMessageStatus calls and in the STATUS_PROVIDER_SPECIFIC_DATA structure.

Syntax

typedef struct sms_status_information_tag {
    SMS_MESSAGE_ID smsmidMessageID;
    DWORD dwMessageStatus0;
    DWORD dwMessageStatus1;
    SMS_ADDRESS smsaRecipientAddress;
    SYSTEMTIME stServiceCenterTimeStamp;
    SYSTEMTIME stDischargeTime;
} SMS_STATUS_INFORMATION, *LPSMS_STATUS_INFORMATION;

Members

  • smsmidMessageID
    A message identifier that is returned when calling SmsSendMessage.
  • dwMessageStatus0
    The status of the message. When a status response is for a message that contains multiple parts, dwMessageStatus0 reads this field for each part of the message. Because there are more than 32 flags, the message status is broken into the two DWORDs, dwMessageStatus0 and dwMessageStatus1. Both fields must be set to MESSAGE_STATUS_UNKNOWN for the message status to be unknown.

    Value

    Description

    MESSAGE_STATUS_UNKNOWN

    Unknown message status.

    MESSAGE_STATUS_0_RECEIVEDBYSME

    Message was successfully received by the destination but, an unspecified error may have occurred during the course of transmission.

    MESSAGE_STATUS_0_FORWARDEDTOSME

    Message was successfully forwarded to the destination, but an unspecified error may have occurred during the course of transmission.

    MESSAGE_STATUS_0_REPLACEDBYSC

    Message was successfully replaced in the Short Message Service Center (SMSC), but an unspecified error may have occurred during the course of transmission.

    MESSAGE_STATUS_0_CONGESTION_TRYING

    Network congestion. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_SMEBUSY_TRYING

    Destination busy. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_SMENOTRESPONDING_TRYING

    Destination not responding. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_SVCREJECTED_TRYING

    Service rejected. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_QUALITYUNAVAIL_TRYING

    Quality unavailable. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_SMEERROR_TRYING

    Destination error. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_CONGESTION

    Delay due to network congestion. The network congestion is likely temporary.

    MESSAGE_STATUS_0_SMEBUSY

    Delay because the destination is busy. The destination is not likely to remain busy.

    MESSAGE_STATUS_0_SMENOTRESPONDING

    Delay because the destination is unresponsive. The destination will likely respond.

    MESSAGE_STATUS_0_SVCREJECTED

    Delay because the service was rejected. The service most likely will resume.

    MESSAGE_STATUS_0_QUALITYUNAVAIL_TEMP

    Delayed because the connection quality is unavailable. The connection quality will likely be restored.

    MESSAGE_STATUS_0_SMEERROR

    Delayed due to a destination error. The destination error is not persistent.

    MESSAGE_STATUS_0_REMOTEPROCERROR

    Delivery was not successful due to an error by the remote processor.

    MESSAGE_STATUS_0_INCOMPATIBLEDEST

    Delivery was not successful because the destination is incompatible.

    MESSAGE_STATUS_0_CONNECTIONREJECTED

    Delivery was not successful because the destination rejected the connection.

    MESSAGE_STATUS_0_NOTOBTAINABLE

    Delivery was not successful because the destination is unattainable.

    MESSAGE_STATUS_0_NOINTERNETWORKING

    Delivery was not successful because internetworking is unavailable.

    MESSAGE_STATUS_0_VPEXPIRED

    Delivery was not successful because the validity period expired.

    MESSAGE_STATUS_0_DELETEDBYORIGSME

    Delivery was not successful because the message was deleted by the originator.

    MESSAGE_STATUS_0_DELETEDBYSC

    Delivery was not successful because the message was deleted by the SMSC.

    MESSAGE_STATUS_0_NOLONGEREXISTS

    Delivery was not successful because the message no longer exists.

    MESSAGE_STATUS_0_QUALITYUNAVAIL

    Delivery was not successful because the connection quality is unavailable.

    MESSAGE_STATUS_0_RESERVED_COMPLETED

    The message was successfully reserved, but an unspecified error may have occurred during the course of transmission.

    MESSAGE_STATUS_0_RESERVED_TRYING

    Reserved. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_RESERVED_ERROR

    Delivery was not successful due to a reserved error.

    MESSAGE_STATUS_0_RESERVED_TMPERROR

    Delayed because the message was reserved.

    MESSAGE_STATUS_0_SCSPECIFIC_COMPLETED

    The message is SMSC-specific and was successfully delivered, but an unspecified error may have occurred during the course of transmission.

    MESSAGE_STATUS_0_SCSPECIFIC_TRYING

    SMSC-specific. The message has not been delivered yet but the SMSC is still attempting delivery.

    MESSAGE_STATUS_0_SCSPECIFIC_ERROR

    Delivery was not successful due to an SMSC-specific error.

  • dwMessageStatus1
    The status of the message. When a status response is for a message that contains multiple parts, dwMessageStatus1 reads this field for each part of the message. Because there are more than 32 flags, message status is broken into the two DWORDs, dwMessageStatus0 and dwMessageStatus1. Both fields must be set to MESSAGE_STATUS_UNKNOWN for the message status to be unknown.

    Value

    Description

    MESSAGE_STATUS_UNKNOWN

    Unknown message status.

    MESSAGE_STATUS_1_SCSPECIFIC_TMPERROR

    Delayed due to an SMSC-specific error.

  • smsaRecipientAddress
    The destination address of the message.
  • stServiceCenterTimeStamp
    The time when the service center received the sent message. When a status response is for a message that contains multiple parts, this field contains the most recent timestamp for the messages.

    This timestamp must be in UTC (Coordinated Universal Time) format.

  • stDischargeTime
    The time pertaining to the particular outcome defined in dwMessageStatus. When a status response is for a message that contains multiple parts, this field contains the most recent discharge timestamp for the messages.

    This timestamp must be in UTC (Coordinated Universal Time) format.

Requirements

Header

sms.h

See Also

Reference

Short Message Service Structures
SmsGetMessageStatus
SmsSendMessage