【问题标题】:Should ESME send a delivery report?ESME 是否应该发送交货报告?
【发布时间】:2016-04-15 15:37:24
【问题描述】:

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

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

【问题讨论】:

  • 您希望 SMSC 在哪个数据包中请求注册交付? Deliver_sm 还是 submit_sm?
  • 在我这边,我有一个 ESME,它收到了一个 Deliver_sm(来自 SMSC),请求了注册交付(例如 registered_delivery=0x01),我的意思是我应该如何将注册交付发送到 SMSC . 回答您的问题: 我不知道,哪个是正确的行为,将 Deliver_sm 或 submit_sm 作为交付报告发送给 SMSC?实际上这是我的疑问。非常感谢您的帮助。

标签: protocols smpp opensmpp


【解决方案1】:

我将引用 SMPP 3.4:

4.6.1(“DELIVER_SM”语法):

registered_delivery — 指示是否需要 ESME 确认

2.11(消息类型)

对于固定的 SME(即 ESME),可能发送 SME 交付确认的情况超出了本规范的范围

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

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

5.2.12 (esm_class)

x x 0 0 1 0 x x — 短消息包含 ESME 交付确认

x x 0 1 0 0 x x — 短消息包含 ESME 手册/用户 致谢

【讨论】:

  • 我最近发现,似乎只有一种方法可以将 ESME 确认与原始 MO 消息相关联。它被称为 user_message_reference (TLV 0x0204) 并且必须存在于原始 MO 消息中。否则,将无法“回复”任何确认。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-23
  • 1970-01-01
相关资源
最近更新 更多