我写在这里只是想把握的思路记录在这里而已,我并不是CMPP SP开发的高手,我只是刚刚入门而已.问题想多了,总是把前面的东西给忘记了,看来记性不是很好啊,所有要把我想的东西给点点滴滴的记录下来,当然,我的想法也有可能是错误的,希望给予批评改进.
应用程序使用的是收发二级缓冲.
| 一级缓冲 | 二级缓冲 | |
| 接受数据缓冲 | 把从网络中接受的数据放在这里rbuffer | 只保留CMPP_DELIVER消息结构的对象.让应用程序可以读取手机用户发送给SP的短信,或ISMG发送给SP的状态报告,可以使用集合或map类来实现. |
| 发送数据缓冲 | 把待发送的网络数据放在这里sbuffer,通过send函数发送出去 | 只保存CMPP_SUBMIT消息,主要的作用还是用于获取MSg_ID和判断该消息是否发送到用户的手机上. |
- Initialize():初始化系统资源函数.这里的系统资源不单单是操作系统的资源,所指的是应用程序用的到资源,如socket对象,socket事件对象,事件内核对象,消息序号等.
- Unitialize():就是释放系统的资源了,只要释放操作系统资源和堆内存就可以了,不用多说,一看,什么时候都会明白.
- SocketConnect():由于cmpp通信是建立在TCP/IP的基础上,所以SP与ISMG进行CMPP消息通信之前必须

本文记录了CMPP2.0 SP端开发的设计思路,包括初始化、socket连接、消息发送及数据处理线程的详细过程。通过收发二级缓冲处理网络事件,如FD_READ、FD_CONNECT等,对CMPP_CONNECT、CMPP_SUBMIT_RESP、CMPP_DELIVER等消息进行相应处理。
最低0.47元/天 解锁文章
1095

被折叠的 条评论
为什么被折叠?



