CN101540965A - 一种基于Windows Mobile平台的双卡彩信处理方法 - Google Patents
一种基于Windows Mobile平台的双卡彩信处理方法 Download PDFInfo
- Publication number
- CN101540965A CN101540965A CN200810102274A CN200810102274A CN101540965A CN 101540965 A CN101540965 A CN 101540965A CN 200810102274 A CN200810102274 A CN 200810102274A CN 200810102274 A CN200810102274 A CN 200810102274A CN 101540965 A CN101540965 A CN 101540965A
- Authority
- CN
- China
- Prior art keywords
- multimedia message
- card
- module
- user
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明公开一种基于Windows Mobile操作系统平台的双卡双待手机彩信模块的处理方法,本发明通过将网络情况的逻辑判断封装在一个单独的NetMgr.dll模块中,本发明的优点在于可以同时支持两个不同协议栈的不同数据业务。
Description
技术领域
本发明涉及移动通信装置,具体地说涉及一种基于Windows Mobile操作系统平台的双卡双待手机彩信模块的处理方法。
背景技术
目前双卡双待手机需求逐渐增多,尤其是Windows Mobile平台下的双网双待手机。而对于双卡双待等情况,相对于单卡手机最大的一个优点就在于可以同时支持两个不同协议栈的不同数据业务。但由于受到Windows Mobile平台的限制,系统在同一时间只能满足用户主动发起一张卡的数据业务,故将该当前承载用户数据业务的卡称为数据业务主卡。
对运营商来说,随着用户网络生活的日益丰富,增加了很多不同类型的增值服务,而通过数据业务方式提供的服务更是琳琅满目、数不胜数。其中最常使用,已经成为手机必备的一项数据业务就是彩信业务。彩信业务使用WAP协议,在接收和发送彩信时都需要建立WAP数据连接与服务器通讯。
然而由于双卡手机数据业务交叉等复杂性,给双卡手机的彩信业务带来了一定的实现难度。比如说,对完全相同的两张GSM网络的SIM卡,上层Windows Mobile系统应如何区分是那张卡来的彩信通知,上层又应如何将彩信接收的应用请求绑定到对应的协议栈上?需要发送彩信时如何解决路由绑定,如何解决数据业务主卡和非数据业务主卡上彩信业务的冲突?此外,由于彩信业务需要建立WAP类型的数据连接,如何在尽量不影响当前其他数据业务的前提下进行彩信业务?这些都是我们需要关心和解决的问题。
为了使单卡系统的彩信模块尽可能少的修改,以便移植到双卡系统上,减少代码移植的工作量,缩短开发周期,要在原有的框架上将修改做到最小。同时,彩信业务只是众多数据业务的一个典型实例,将解决双卡彩信问题的经验分享到其他数据业务应用上,使双卡系统的可移植性最高,也是需要考虑的问题。
本发明对双卡系统上彩信模块的移植方法做出描述,同时介绍整个彩信模块在双卡双待手机上的工作框架逻辑。
发明内容
针对上述缺陷,本发明解决的技术问题在于,一种基于Windows Mobile操作系统平台的双卡双待手机彩信模块的处理方法。本发明的彩信接收过程包含以下步骤:
RIL驱动收到彩信通知,简单解析,将卡标识绑定到事务ID上,并存到注册表中,最后抛给上层WM层201;
彩信模块根据收到的彩信通知解析出事务ID,查询NetMgr模块获得卡标识信息并保存,同时NetMgr删除注册表中相应信息202;
判断收到彩信的卡是否是数据业务主卡203;如果是主卡,转到步骤207;
如果不是,判断用户是否根据提示切换了网络204;
如果切换了网络,判断切换网络后是否到达1分钟205;如果不到1分钟,则系统等待1分钟206;
如果是,判断当前是否有数据连接207;
判断用户是否继续彩信业务208,如果否,终止彩信业务,以后再尝试210;
如果用户继续彩信业务,彩信模块通过连接管理器发起数据连接,开始下载彩信209。
本发明的彩信发送过程包含以下步骤:
用户编辑好彩信选择发送,询问用户使用哪张卡发送彩信301;
判断用户选择的卡和数据业务主卡是否一致302;
如果不一致,提示用户切换数据业务主卡后再尝试304;
一致时,开始准备发送彩信303;
判断当前是否有数据连接305;
如果没有,彩信模块通过连接管理器发起数据连接,开始下载彩信308;
如果有,判断用户是否继续彩信业务306;
如果有,彩信模块通过连接管理器发起数据连接,开始下载彩信308;
如果没有,以后再尝试发送该彩信307
本发明使单卡系统的彩信模块尽可能少的修改,以便移植到双卡系统上,减少代码移植的工作量,缩短开发周期,在原有的框架上将修改做到最小。方便代码移植,同时也能实现在双卡双待手机上的彩信收发功能,即可以同时支持两个不同协议栈的不同数据业务。
附图说明
图1双卡双待系统彩信模块与各模块交互图
本图宏观展示了彩信模块在双卡双待系统下和各模块的交互关系,彩信模块可以通过NetMgr模块查询彩信卡标识信息,彩信模块在通过连接管理器建立和断开网络连接前,通过NetMgr模块获得当前系统数据业务主卡情况及当前数据连接的网络情况。
NetMgr可以获取网络信息,并管理网络连接,对连接管理器起到辅助管理的作用。同时NetMgr模块封装了双卡双待数据业务逻辑处理的大部分逻辑,将网络管理封装起来向上层应用模块提供API接口,更好的实现分层及可移植性。
其中,AsyncMac模块负责管理双卡数据业务的串口分配和数据业务相关的路由控制工作,同时该模块也可以记录一些数据连接的状态信息用来统治APP应用程序当前双卡的数据连接状态。
RIL路由器是双卡架构的AT命令路由器,具体作用请参考双卡架构设计的相关文档。
图2双卡彩信模块接收彩信处理流程图
本图展示了双卡双待手机彩信模块接收彩信的处理流程。需要注意的是,如果用户中途取消了彩信操作,彩信模块应仍能保存彩信相关信息,在下次用户切换网络,更换数据业务主卡时,重新检查是否当前条件满足,可以处理接收彩信。
图3双卡彩信模块发送彩信处理流程图
本图展示了双卡双待手机彩信模块发送彩信的处理流程。
图4双卡彩信或数据业务相关应用模块与NetMgr模块交互流程图
本图展示了彩信或数据业务相关应用模块与NetMgr模块的交互流程。由于双卡双待系统的特殊性,连接管理器已经不能完全胜任双卡数据连接管理的全部工作,为了辅助连接管理器工作,是系统数据业务更加稳定、高效、功能强大,增加了NetMgr(网络管理)模块。彩信等数据业务相关的应用模块在使用连接管理器进行网络操作前需要使用相应的API和NetMgr模块进行交互,由该模块管理网络,或通过该模块查询网络信息。
图5单卡彩信模块接收彩信处理流程图;
本图展示了常见的单卡手机彩信模块接收彩信的处理流程。
图6单卡彩信模块发送彩信处理流程图;
本图展示了常见的单卡手机彩信模块发送彩信的处理流程。
具体实施方式
在Windows Mobile平台下,双卡双待手机的数据业务必须遵守WindowsMobile平台连接管理器的业务逻辑,并适当做出一些功能调整。对在双卡手机上用户发起的数据连接请求,需要定义一套机制来确认将该连接请求绑定到哪张卡上。由于用户是手机的切实使用者,而手机终端又不能完全获得各卡槽中手机卡的所有支持的数据业务有哪些,必须由用户来保证使用哪张卡来发起哪种数据业务。因此在设计上增加了网络选择的设置界面,用来和用户交互,询问用户将使用哪张卡来发起新的数据连接?当用户设置了使用某张卡来发起数据业务后,该卡将被设置为数据业务主卡,此时Windows Mobile平台下发的所有数据业务相关的命令请求都将被路由到设置为数据业务主卡的一侧,也即是说以后上层Windows Mobile系统将主动发出的连接请求绑定到了数据业务主卡一侧,上层系统数据服务相关的业务只和该侧的协议栈通讯、交互。
而彩信业务应属于即时的数据通讯业务,应能尽量保证用户及时发送接收彩信。但受限于网络情况和Windows Mobile平台环境,同卡的数据业务只能发起一条,且同类型的数据连接,系统只能发起一条。根据这些限制情况,必须增加彩信模块和用户的交互,将主动权交到用户手中,在出现冲突的时候,由用户来决定是否改变网络设置处理彩信业务,由用户来决定是否中断当前已经存在的数据连接来处理彩信业务,并且使发送优先于接收,尽量保证用户的权益。
在彩信模块移植的实现上,本发明将彩信分为发送和接收两个过程来分别考虑,为了增加可移植性使彩信模块的代码修改量最小,本发明将网络情况的逻辑判断封装在一个单独的NetMgr.dll模块中,如附图1所示,该模块一方面可以辅助连接管理器对网络情况做一定的维护管理工作(因为Windows Mobile平台的架构下的连接管理器已经不能完全满足双卡架构的数据业务需要,故必须增加网络连接的辅助管理功能),另一方面可以提供给数据业务相关的各应用模块API接口,提供查询和网络情况(主要指双卡架构下的数据业务连接状态和具体特殊情况)的逻辑判断工作,将判断结果返回给应用模块,各模块可以根据网络情况的判断结果来做相应处理。也就是说,在具体操作上,保证原有的彩信(或其他第三方数据业务相关应用程序)模块的内部逻辑处理不变,彩信模块只要在建立数据连接和断开数据连接时调用NetMgr.dll的API接口,就完全不必操心双卡双待数据业务的各种复杂的网络情况。网络连接的逻辑判断和维护管理由NetMgr模块辅助连接管理器完成。
彩信接收过程的处理:
单卡系统下,Windows Mobile系统的彩信模块注册了WAP短信的监听回调函数,来实时监听WAP类型的短信内容,如图5所示是单卡彩信接收流程,当协议栈收到彩信通知501后,协议栈将彩信通知上报给RIL驱动502,RIL驱动将彩信通知上报给上层Windows Mobile系统消息模块503,彩信模块监听到上报的彩信通知,解析该通知的内容504,彩信模块调用连接管理器建立WAP连接505,彩信模块建立Windows Socket连接下载彩信506,接收彩信完毕507。
由于双卡双待系统上,两张卡可能同时交叉到达多条彩信通知,如何区分处理这些彩信通知?如何区分是哪张卡到达的彩信通知?
如图2所示,双卡系统,在彩信通知的区分上,首先当协议栈上报WAP短信时,与各协议栈对应的RIL驱动模块会首先截获到WAP短信,RIL驱动首先做一个简单的解析工作,因为每条彩信通知的事务ID各不相同,可以作为彩信的身份标识,故将卡标识信息,绑定到解析出来的事务ID上,同时将绑定好的信息存到注册表中,之后将该WAP短信正常上抛给上层WindowsMobile系统如图2的步骤201,,这时的上报过程和单卡系统相同;上层彩信模块在获得WAP短信后,解析出事务ID,并通过NetMgr.dll模块提供的接口查询卡标识(即哪张卡到达的彩信)信息,NetMgr.dll模块到注册表中获取卡标识信息后返给彩信模块,并删除注册表中对应的信息,然后由彩信模块来管理记录相应信息,如图2步骤202所示。
在接收彩信处理上,本发明采用数据业务主卡收到的彩信优先处理的原则。通常情况下不能仅按照收到彩信通知的时间来对彩信通知进行排序处理,以避免频繁的切换网络,造成系统负担。系统优先处理接收数据业务主卡上的彩信,当接收完主卡上的所有彩信后,提示用户另一张卡有彩信需要处理,并提示用户切换网络。如果用户切换网络,彩信模块会监听到系统的变化,彩信模块会判断出当前数据业务主卡进行了切换,并随时检查当前网络情况,但双卡双待系统的彩信模块不会立刻接收新主卡上的彩信,这样用来保证用户切换网络后处理其他数据业务(如用户切换数据业务主卡下载JAVA游戏),不会因为彩信业务的发起而中断其他数据业务,1分钟后彩信模块自动处理接收彩信,在这1分钟内,用户也可以选择立刻接收彩信主动下载彩信。具体的处理步骤如图2的203及其后续判断步骤所示。
在有其他类型数据业务(非WAP类型的数据连接)时处理彩信,彩信模块会在建立连接前调用NetMgr.dll模块查询数据业务主卡情况及当前数据连接情况,提示用户当前已经有数据连接,发起彩信可能会断开当前其他数据连接,是否继续?由用户来决定是否继续彩信的处理,具体步骤如图2所示的208的判断及后续操作。
彩信发送过程的处理:
单卡情况下,用户编辑好彩信内容直接点击发送按钮,彩信模块直接调用Windows Mobile平台下的连接管理器发起WAP类型的数据连接,然后通过Windows Socket绑定到服务器发送彩信数据包,完成彩信发送流程。具体单卡彩信发送流程如图6所示,手机用户通过UI编辑彩信内容601,手机用户编辑好彩信后,点击发送彩信602,彩信模块通过连接管理器建立WAP类型数据连接603,彩信模块建立到彩信服务器的Windows Socket连接并发送彩信604,彩信发送完毕605。
双卡系统中,彩信的发送要优先于接收。当用户进入彩信编辑界面,编辑好彩信准备发送时,彩信模块询问用户采用哪张卡进行发送,如图3的步骤301。用户选择一张卡后,彩信模块调用NetMgr.dll模块检查当前系统的数据业务主卡是哪张302,,如果数据业务主卡和用户选择发送彩信的卡一致,直接发起彩信业务,处理流程和单卡一致,如图3步骤302“是”分支的后续处理部分;如果数据业务主卡和用户选择发送彩信的卡不一致,提示用户当前数据业务主卡设置不一致,不能发起另一张卡的彩信业务,并提示用户切换网络选择304。当有其他数据业务时,处理方法与接收彩信的处理方法一致,如图3步骤305后续处理部分。
在系统未插入卡或仅插入一张卡时,按照单卡的处理逻辑处理彩信业务。
从上述的处理方案看,双卡彩信模块只需要在单卡彩信模块的基础上做几个简单的接口调用,如图1,彩信仅需要在单卡开发的基础上,调用NetMgr模块的一些接口函数,不需要修改任何原有单卡的逻辑,就可以实现移植,由NetMgr模块来完成双卡的数据业务判断和管理工作,彩信模块与NetMgr模块的逻辑交互参考附图4交互流程图,开发和实现更简单。双卡项目的其他数据业务,例如Windows Mobile平台的电子邮件、WAP浏览器、QQ等即时聊天工具等,也可以参考这种设计方案来做移植工作;对无法修改代码的其他第三方数据业务应用,例如Windows Mobile平台下自带的IE、MSN、OutLook等,因为双卡双待上数据业务主卡的设置,这些应用会默认使用该主卡进行数据业务,与在单卡系统上是一样的可以无缝衔接。而所有的网络情况判断和网络情况的管理工作,都可以放在NetMgr.dll模块来处理,该模块随时向各应用模块提供着数据业务相关的服务。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (2)
1、一种基于Windows Mobile平台的双卡彩信处理方法,其特征在于其接收过程包含以下步骤:
RIL驱动收到彩信通知,简单解析,将卡标识绑定到事务ID上,并存到注册表中,最后抛给上层WM层;
彩信模块根据收到的彩信通知解析出事务ID,查询NetMgr模块获得卡标识信息并保存,同时NetMgr删除注册表中相应信息;
判断收到彩信的卡是否是数据业务主卡;如果是主卡,转到步骤(207);
如果不是,判断用户是否根据提示切换了网络;
如果切换了网络,判断切换网络后是否到达1分钟;如果不到1分钟,则系统等待1分钟;
如果是,判断当前是否有数据连接(207);
判断用户是否继续彩信业务,如果否,终止彩信业务,以后再尝试;
如果用户继续彩信业务,彩信模块通过连接管理器发起数据连接,开始下载彩信。
2、一种基于Windows Mobile平台的双卡彩信处理方法,其特征在于其发送过程包含以下步骤:
用户编辑好彩信选择发送,询问用户使用哪张卡发送彩信;
判断用户选择的卡和数据业务主卡是否一致;
如果不一致,提示用户切换数据业务主卡后再尝试;
一致时,开始准备发送彩信;
判断当前是否有数据连接;
如果没有,彩信模块通过连接管理器发起数据连接,开始下载彩信;
如果有,判断用户是否继续彩信业务;
如果有,彩信模块通过连接管理器发起数据连接,开始下载彩信;
如果没有,以后再尝试发送该彩信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810102274A CN101540965A (zh) | 2008-03-19 | 2008-03-19 | 一种基于Windows Mobile平台的双卡彩信处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810102274A CN101540965A (zh) | 2008-03-19 | 2008-03-19 | 一种基于Windows Mobile平台的双卡彩信处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101540965A true CN101540965A (zh) | 2009-09-23 |
Family
ID=41123894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810102274A Pending CN101540965A (zh) | 2008-03-19 | 2008-03-19 | 一种基于Windows Mobile平台的双卡彩信处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101540965A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101868052A (zh) * | 2010-06-09 | 2010-10-20 | 中兴通讯股份有限公司 | 一种多模移动终端彩信接收方法和装置 |
CN101888603A (zh) * | 2010-03-22 | 2010-11-17 | 宇龙计算机通信科技(深圳)有限公司 | 一种收发彩信的方法、装置及移动终端 |
CN102026119A (zh) * | 2010-12-23 | 2011-04-20 | 中兴通讯股份有限公司 | 一种获取彩信的方法和彩信中心 |
CN102158824A (zh) * | 2011-04-18 | 2011-08-17 | 中兴通讯股份有限公司 | 基于双模终端的彩信收、发方法及其系统、终端 |
CN102945172A (zh) * | 2012-10-22 | 2013-02-27 | 深圳市中兴移动通信有限公司 | 一种Android系统下3G数据卡自适应的方法 |
CN103313213A (zh) * | 2012-03-16 | 2013-09-18 | 中国移动通信集团广东有限公司 | 单卡多模终端及其消息处理方法、装置 |
CN109151741A (zh) * | 2018-10-15 | 2019-01-04 | 维沃移动通信有限公司 | 一种彩信接收方法及终端 |
-
2008
- 2008-03-19 CN CN200810102274A patent/CN101540965A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101888603A (zh) * | 2010-03-22 | 2010-11-17 | 宇龙计算机通信科技(深圳)有限公司 | 一种收发彩信的方法、装置及移动终端 |
CN101888603B (zh) * | 2010-03-22 | 2013-04-24 | 宇龙计算机通信科技(深圳)有限公司 | 一种收发彩信的方法、装置及移动终端 |
CN101868052A (zh) * | 2010-06-09 | 2010-10-20 | 中兴通讯股份有限公司 | 一种多模移动终端彩信接收方法和装置 |
CN102026119A (zh) * | 2010-12-23 | 2011-04-20 | 中兴通讯股份有限公司 | 一种获取彩信的方法和彩信中心 |
WO2012083602A1 (zh) * | 2010-12-23 | 2012-06-28 | 中兴通讯股份有限公司 | 一种获取彩信的方法和彩信中心 |
CN102158824A (zh) * | 2011-04-18 | 2011-08-17 | 中兴通讯股份有限公司 | 基于双模终端的彩信收、发方法及其系统、终端 |
CN103313213A (zh) * | 2012-03-16 | 2013-09-18 | 中国移动通信集团广东有限公司 | 单卡多模终端及其消息处理方法、装置 |
CN103313213B (zh) * | 2012-03-16 | 2016-04-27 | 中国移动通信集团广东有限公司 | 单卡多模终端及其消息处理方法、装置 |
CN102945172A (zh) * | 2012-10-22 | 2013-02-27 | 深圳市中兴移动通信有限公司 | 一种Android系统下3G数据卡自适应的方法 |
CN109151741A (zh) * | 2018-10-15 | 2019-01-04 | 维沃移动通信有限公司 | 一种彩信接收方法及终端 |
CN109151741B (zh) * | 2018-10-15 | 2020-11-20 | 维沃移动通信有限公司 | 一种彩信接收方法及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110248358B (zh) | 基于物联网的eSIM管理方法和系统 | |
CN101540965A (zh) | 一种基于Windows Mobile平台的双卡彩信处理方法 | |
EP2688326B1 (en) | Multi-card mobile terminal and method for transferring data of locked sim card | |
KR100909617B1 (ko) | 이동 단말기의 어플리케이션의 구성을 액세스 가능한데이터 커넥션에 적응시키는 방법 및 장치 | |
CN103281797A (zh) | 一种移动终端及其传输业务数据的方法 | |
AU738714B2 (en) | Adapter of subscriber identity module to a mobile radiocommunications terminal | |
CN101287255A (zh) | 一种双卡双待移动终端的数据连接方法及装置 | |
CN100369414C (zh) | 按用户和终端设备的关系变更推送业务参数信息的方法 | |
CN107872345A (zh) | 一种能力开放实现方法及装置 | |
CN101557442B (zh) | 一种融合呼叫中心和第三方行业应用服务器的方法和系统 | |
CN100456852C (zh) | 短消息增值业务的控制系统及控制方法 | |
CN101742701A (zh) | 处理at命令的装置、方法及系统 | |
CN106550314A (zh) | 一种基于蓝牙定位技术的呼叫转移方法 | |
CN101888603B (zh) | 一种收发彩信的方法、装置及移动终端 | |
CN101815338A (zh) | 控制并发呼叫量的装置和方法 | |
CN101389069A (zh) | 业务处理方法和通信终端 | |
CN100481979C (zh) | 基于小灵通短信网和智能网的语音和短信随意转实现方法 | |
CN103313332A (zh) | 安卓系统移动设备、及其基于bp实现异网切换的方法 | |
CN102905261B (zh) | 一种联系人信息验证请求和接收方法及客户端 | |
CN101834934B (zh) | 双模双待终端中数据的处理方法及相关装置 | |
CN101409745B (zh) | 一种坐席自动化测试的方法 | |
CN100358293C (zh) | 根据用户签约信息的变化推送业务参数信息的方法 | |
CN101282547B (zh) | 一种基于Windows Mobile操作系统拨打电话的方法及设备 | |
CN101026787A (zh) | 一种将发给电话号码的短消息发送到互联网程序的方法 | |
CN115474166B (zh) | 5g消息的发送方法、装置、终端设备以及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090923 |