SMPP协议阅读指南(中文版)

SMPP协议阅读指南
目录
继电器底座1.名词解释 (2)
2.SMPP协议概述 (3)
2.1 SMPP协议定义 (3)
2.2 SMPP会话定义 (3)
2.3 SMPP PDUs (3)
2.4 SMPP Network Layer Connections (4)
2.5 SMPP messages sent from ESME to SMSC (4)
2.6 SMPP messages sent from SMSC to ESME (4)
2.7 Duplex message exchange between an SMSC and an ESME (4)
2.9 SMPP 计时器(Timers),在协议7.2节有更详细的描述 (4)
2.10消息模式(Message Modes) (4)
2.11 消息类型Message Types (5)
3. SMPP PDU Type and Format Definitions (6)
4. SMPP PDU Definition (6)
5. SMPP Parameter Definition (6)
6. Network Implementation (6)
7. General Definitions (6)
1.名词解释
ESME External Short Message Entity 外部短信实体,指的是非移动网络(mobile network)内,但可以给SMSC,并且可以从SMSC接收短信
PDU Protocol Data Unit 协议数据单元
SMSC Short Message Service Centre 短信中心
透射电镜制样SMPP Short Message Peer to Peer Protocol 短信端对端协议
UDHI User Data Header Indicator用户数据头标识
2.SMPP协议概述
SMPP是一个信息传输协议,它允许移动网络(mobile network)之外的实体(Entities)和SMSC连接。SMPP协议定义了下面的内容:
一系列的操作(operations),用于ESME和SMSC交换消息
ESME程序用来在SMPP操作中和SMSC交换的数据
2.1 SMPP协议定义
SMPP基于在TCP/IP或者X.25网络连接上的ESME和SMSC之间交换请求(request)和回复(response)的PDU。
交换的消息分为3类:
1.由ESME (Transmitter) 发送给SMSC儿童跷跷板
2.由SMSC 发送给ESME (Receiver)
3.由ESME (Transceiver) 发送给SMSC 和由SMSC发送给ESME (Transceiver)
2.2 SMPP会话定义
一个SMSC和ESME之间的SMPP会话(session),首先由ESME建立一个和SMSC之间的网络连接,并且发起一个SMPP绑定(bind)请求SMSC来创建(open)一个会话.
中空半自动打胶机在3.4以前的版本里面,一个ESME如果想提交(submit)或者接收(receive)短信,必须创建两个连接和两个SMPP会话,但在3.4版本里面,可以只创建一个SMPP Transceiver会话在一个连接上。
在一个SMPP Session里面,一个ESME可以发起一系列的请求,并且可以收到每个请求对应的回复;同时,SMSC也可以发起一系列的请求,并且可以收到对应的回复。
SMPP会话定义了如下几个状态:
OPEN (网络已经连接,但还没有绑定)
BOUND_TX
激光发射器已经和SMSC建立了网络连接的ESME发起了一个仅发送(Transmitter)的绑定请求(发起一个bind_transmitter PDU)并且从SMSC收到了验证通过的回复
BOUND_RX
BOUND_TRX
CLOSED (解绑和断开连接)
2.3 SMPP PDUs
下表列出了所有的SMPP PDU和每个PDU可以使用的上下文环境(context),详见协议里面的Table 2-1.
2.4 SMPP Network Layer Connections
2.5 SMPP messages sent from ESME to SMSC
2.6 SMPP messages sent from SMSC to ESME
2.7 Duplex message exchange between an SMSC and an ESME
2.8 SMPP 错误处理
一个SMPP操作()由一个请求PDU和一个对应的回复PDU组成(除了alert_notification PDU,它没有回复)。
在所有的情况下,接收实体(receiving entity)必须返回一个对应的SMPP回复PDU给一个SMPP请求PDU,以此来标示该请求PDU已经被接受者接收到。在发起者(originator)没有回复之前,必须假设认为接受者并没有收到。
在发现发起者发出的SMPP request包含错误的情况下,接收实体必须返回一个合适的错误码(appropriate error code),错误码存放在回复PDU的command_status字段。如果接收实体在PDU头(header)里面发现了错误(error),它必须给发送者返回一个generic_nack PDU。
2.9 SMPP 计时器(Timers),在协议7.2节有更详细的描述
为了保证高效的事务交换,建议每一个SMPP会话都是被计时器管理的,无论是在SMSC端还是在ESME端,并且这些计时器是可配置的,具体如下:
SMPP初始计时器(initiation timer),用来保证当一个ESME发起一个SMPP会话的时候,它必须在和SMSC建立网络连接之后的一个确定的时间内发出绑定请求PDU来建立这个会话。
SMPP会话计时器用来允许ESME或者SMSC通过enquire_link命令来请求正在通信的另外一方的SMPP会话状态SMPP不活跃计时器(inactivity timer),指定一个最长间隔,在这个时间间隔内如果没有消息交换,这个SMPP会话应该被优雅的丢弃(drop gracefully, 指的网络连接被关闭,并且释放所有相关资源,(是否需要发送unbind???,应该不需要,通常主动关闭的应该是服务器)
pcb柔性连接器
SMPP事务(transaction)计时器,用来指定SMPP 请求和SMPP回复之间允许的时间间隔。
2.10消息模式(Message Modes)
SMPP提供了消息模式选项,如果SMSC支持,允许ESME选择SMSC的消息投递策略(delivery mechanism)。SMSC应该提供的投递策略包括:
• Store and Forward
• Datagram
• Transaction mode
2.11 消息类型Message Types
除了正常的短信,特殊的信息也可以在ESME和SMSC之间传输,它可以包含在submit_sm,deliver_sm 或者data_sm操作里面,这些特殊的信息定义在上述操作的esm_class参数里面。(应该主要指的是一些额外的参数等)
SMPP可以支持下面的一些消息类型:
SMSC Delivery Receipt
这个消息用来携带一个SMSC投递收到。SMSC,如果检测到一个注册消息(registered message)的最终状态(final state)保存在SMSC上,它应该生成一个收到消息并发送给消息的发起者。SMSC delivery receipt做为user data payload存放在deliver_sm或者data_sm操作里面。
当用来传送delivery receipts的时候,deliver_sm和data_sm的下面的字段是有关的
•源地址(i.e. source_addr_ton, source_addr_npi, source_addr)
源地址将会设置为生成delivery receipt的发起短信的目的地址。
• destination address (i.e. dest_addr_ton, dest_addr_npi, destination_addr)
• esm_class
• message_state
• network_error_code
• receipted_message_id
Intermediate Notification
SME Delivery Acknowledgement
尽管名字叫做投递确认,但实际上它并不是短信到达的标示,而是当MS用户或者MS程序读取了存储在SMS 存储单元(storage unit),比如SIM卡里面的短信之后发出的。
SME Manual/User Acknowledgement
A Manual/User 确认是一个程序生成的消息,放在回复里面发给程序请求消息。比如,这个消息类型可以包含一个选中的菜单项号码,这个菜单是包含在程序请求信息里面发过去的。
Conversation Abort(棒子国的一个运营商专用,可以不理会)

本文发布于:2024-09-25 02:33:25,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/109770.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:消息   请求   协议   回复   短信   程序
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议