ESME 应该发送交付报告吗?

Should ESME send a delivery report?

我有一个存在疑问,我知道当 ESME 发送提交时从 SMSC 请求和获取交付报告的流程是怎样的。但是,当 SMSC(向 ESME)请求 registered_delivery 时,行为应该如何?

ESME 应该发送 deliver_sm 吗?根据 smpp 3.4(我正在使用的规范)deliver_sm 不是由 ESME 发布的。那么,我应该怎么做才能向 SMSC 发送送达报告?

我会引用 SMPP 3.4:

4.6.1(“DELIVER_SM”语法):

registered_delivery — Indicates if an ESME acknowledgement is required

2.11(消息类型)

For a fixed SME (i.e. ESME) the circumstances in which an SME Delivery Acknowledgement may be sent are beyond the scope of this specification

您必须将您的问题传达给 SMSC 所有者,以明确他们要求的信息到底是什么。例如,如果带有 registered_delivery 的 deliver_sm 数据包是一个 MO 消息,您可以在将此 MO 传递给其最终接收者时发回一些事件通知。

在任何情况下,您都不应该将 deliver_sm 用于 SME 确认通知(正如您指出的那样 - deliver_sm 不是由 ESME 发布的)。有一个特殊的 esm_class 标志,你可以在 submit_sm 中设置它应该用于此:

5.2.12 (esm_class)

x x 0 0 1 0 x x — Short Message contains ESME Delivery Acknowledgement

x x 0 1 0 0 x x — Short Message contains ESME Manual/User Acknowledgement