背景技术
在移动通信技术发展的初期,业务的主体是语音业务,绝大多数***资源(包括通信信道和移动通信设备)用于处理用户之间的语音通信,以满足用户移动通话的需要。运营商的主要收入也都是来自于语音通信。后来,随着用户对移动通信的更高要求,以及移动通信技术的发展进步,数据业务越来越多的成为移动通信领域的热点。目前,数据业务已经成为移动通信行业竞争的热点,其中,短消息业务又是数据业务中最重要的部分。因此,如何在短消息业务过程中向用户提供更优质、便捷的服务成为运营商必须解决的问题。
在涉及到短消息的各项服务中,如何解决短消息的整理、分类、保存等方面的问题,以及如何为客户提供大容量的短信数据库,成为影响用户对短消息业务满意度的重要因素。
目前,对移动通信短消息的存储有两种方式,一种是将短消息保存在移动终端上,另一种方式是将短消息存储在移动通信***的用户识别模块(例如GSM***的SIM卡)上。
如果将短消息保存在手机这种移动终端上,可以由手机进行管理。使用这种方法,可以充分利用手机的存储空间,保存大量短消息,同时可以充分利用终端强大的处理能力对短消息进行分类存储和管理。但是存储在移动终端上的短消息无法通过简单的方法进行备份、转移,当用户更换手机时,存储于手机上的短消息往往会被丢弃。同时,如果用户的手机遗失或者被窃取,存放在手机中的短消息很容易被他人甚至不法分子获取,给用户造成损失。
如果将短消息保存在用户识别模块上,在用户更换手机时可以继续使用原有用户识别模块,便于用户对短信进行长期存储和管理。但是由于用户识别模块的存储容量非常有限,限制了用户的使用。根据现有的移动通信规范,在用户识别模块上都有一个专用文件保存短消息,例如在GSM通信***中,此文件为SIM卡上7F10目录下的6F3C文件。根据GSM通信规范,此文件中存储的短消息不能超过254条。但是一般而言,只能存放254条短消息的SIM卡远远达不到用户的要求。
为了增加在用户识别模块上存储短消息的数目,一些技术被设计出来,例如专利《扩大在SIM卡上实现短信存储的方法》(公开号CN 1585435A)等提出了一些可以在用户识别模块上进行大量短消息存储的方法。这些方法虽然可以扩展在用户识别模块上存储短消息的容量,但是也有其自身的缺点:第一,用户必须手动的将存放于原始短消息存储文件中的短消息移动到备份文件中,否则无法实现大量短消息的存储;第二,用户在进行短消息管理时,必须自行完成短消息的转移/复制,操作比较复杂;第三,用户在执行操作的过程中,对存储的数据进行不断的转移/复制,数据的操作比较大,操作时间比较慢,对存储器硬件的损害比较严重;第四,在用户识别模块上增加“加密目录”一类的管理内容,固然可以提高数据的安全性,但是在某些特定情况下,反而会因为“加密”引起不法分子的注意,对用户造成更大的伤害。
因此,目前的各种技术无法实现对大量短消息进行方便的存储和管理。
发明内容
本发明的目的在于针对现有用户识别模块无法对大量短消息进行方便的存储和管理这一现实问题,而提供一种可以方便地实现大量短消息存储和管理的用户识别模块,以及便捷的短消息管理方法。
本发明的技术方案如下:一种可实现大量短消息存储和管理的用户识别模块,包括数据存储模块和程序存储模块,其中,数据存储模块包括用于存储移动通信基本用户信息的基本通信信息存储模块,用于存储联系人姓名及其号码的号簿信息存储模块和用于保存全部短消息数据的短消息数据库模块;程序存储模块包括用于实现硬件接口的底层控制模块,用于完成基本的入网鉴权等功能的通信管理模块,用于实现对短消息数据库进行各种操作的短消息数据库管理模块,用于完成对号码簿的查询并协助短消息数据库管理模块进行短消息管理的号码簿管理模块,以及完成与用户交互的用户界面管理模块和完成对短消息加密管理的安全控制模块。
上述可实现大量短消息存储和管理的用户识别模块,其中,在短消息数据库模块中设置的短消息数据库由三个文件组成,其分别是用于保存短消息的发件人姓名、短消息的起始部分以及短消息属性的基本信息文件,用于保存短消息的完整内容、短消息的发送时间、发送本短消息的电话号码的详细信息文件,以及用于保存与短信编号相对应的记录号的影子文件;基本信息文件和详细信息文件中的记录是一一对应的。
一种可在用户识别模块中实现大量短消息存储和管理的方法,该方法在用户识别模块上建立了一个完整的短消息数据库,完成对大量短消息的存储,同时在此用户识别模块中建立了一个短消息数据库管理***,对短消息数据库进行管理。
上述可在用户识别模块中实现大量短消息存储和管理的方法,其中,当移动终端接收到一条短消息时,首先启动号簿信息存储模块,根据移动终端传入的短消息发件号码获取发件人姓名,然后根据短消息中的详细信息整理出需要写入基本信息文件和详细信息文件中的数据,并将这些信息写入短消息数据库,并在影子文件中建立起映射关系。
进一步,在向短消息数据库写入数据的时候,短消息数据库管理***根据事先由用户设定的分类条件,对短消息加以鉴别,在基本信息文件对短消息的属性加以设置,从而完成对短消息的分类,一条短消息的属性可以同时设置多个类型。
上述可在用户识别模块中实现大量短消息存储和管理的方法,其中,当移动终端试图访问标准短消息文件时,短消息数据库管理***根据影子文件中保存的记录号找到对应的短消息信息传递给移动终端。
或者,短消息数据库管理***利用STK功能设计的菜单,建立短消息列表,通过对短消息数据库中基本信息文件的访问选择短消息,并通过对应关系获得短消息数据库中详细信息文件的完整内容。
上述可在用户识别模块中实现大量短消息存储和管理的方法,其中,用户识别模块中的所有短消息按照分页的方式加以显示,短消息数据库管理***设有输入目标页码的功能,可以直接跳转到用户希望进入的某一页面上;短消息数据库管理***中设有加密目录,用户收到并阅读短消息之后,自动将此短消息转移至加密目录;短消息数据库管理***中设有信息排序子***。
综上所述,本发明在用户识别模块上实现了一个短消息数据库及其管理***,在扩大短消息存储数量的同时提供了便捷的短消息管理方法。同时,使用本发明的用户识别模块,可以自动完成部分短消息管理、分类的功能,减少用户的操作,便于用户使用。
具体实施方式
下面结合附图和实施例对本发明作进一步详写描述。本具体实施方式是一个实现大量短消息存储和管理的用于GSM通信***的SIM卡。
如图1所示,此SIM卡的存储空间包括存储短消息数据库、号码簿等数据的数据存储模块110和存储数据库管理***、通信管理***等程序的程序存储模块120。
程序存储模块120包括:底层控制模块121,用于实现硬件接口;通信管理模块122,用于完成基本的入网鉴权等功能;短消息数据库管理模块124,用于实现对短消息数据库的查询、遍历、排序和查找,并完成对短消息的自动分类;号码簿管理模块123,用于完成对号码簿的查询并协助短消息数据库管理模块进行短消息的管理;用户界面管理模块125,完成与用户的交互,实现用户对短消息数据库的操作;以及安全控制模块124,完成对短消息的加密管理。
数据存储模块110包括:基本通信信息存储模块111,移动通信的基本用户信息,例如用户的电话号码,用户的网络识别码等,这些信息是在任何一张SIM卡上都必须存在的;号簿信息存储模块112,保存一系列的联系人姓名及其号码,通过查询这些姓名及号码,在显示短消息信息的时候可以不仅显示出短消息的内容,还显示出短消息发件人的姓名;短消息数据库模块113,保存各短消息的全部数据。
短消息数据库管理***基于用户识别模块工具箱技术实现,这种技术是成熟的现有技术,被绝大部分移动终端所支持。短消息数据库与标准的短消息文件可以存放在同一个目录下。在本实施例中,一个完整的短消息数据库由三个文件组成,这些文件的结构及相互关系如图2所示。
如图2所示,一个完整的短消息数据库由基本信息文件201、详细信息文件202。这两个文件都是记录文件,即:文件中的信息都是以“记录”的形式存储的。在基本信息文件(201)中,包含的信息有:短消息的发件人姓名、短消息的起始部分以及短消息的属性。其中,“短消息发件人的姓名”指发送此短信的号码在前述“号簿信息存储模块”中对应的联系人姓名。如果在号簿信息存储模块中无法查询到该号码,则在“发件人姓名”部分保存的信息应为“未知号码”或其它提示信息。“短消息的起始部分”指短消息内容的开始部分的几个字,把这一部分单独进行保存的原因是为了在进行短消息列表时快速的进行显示。“短消息的属性”是指本短消息属于哪个分类、哪个加密目录,以及本短消息是否已经回复。在详细信息文件(202)中,包含的信息有:短消息的完整内容、短消息的发送时间、发送本短消息的电话号码。在用户希望了解一个短消息的完整信息时,通过访问本文件中的信息进行显示。这两个文件的记录是一一对应的。也就是说,基本信息文件中的第一条记录对应于详细信息文件中的第一条记录,因此,只要知道某短消息在数据库中的记录号,就可以根据这两个文件获取此短消息的全部信息。此外,这些文件的文件ID都是国际标准的通信协议中没有用到的,否则会造成冲突。
在本实施例中,短消息数据库的基本信息文件的文件ID是5E01,详细信息文件的文件ID是5E02。由于这两个文件完全由短消息数据库管理模块进行管理,不与手机终端进行直接交互,因此,这两个文件的结构完全可以自行定义,而不必遵循现有国际统一标准。在本实施例中,这两个文件中保存的记录数目最大都可以达到65535,也就是说,在本实施例中,最多可以保存65535条短消息。这一数目远远超过了国际标准中规定的标准短消息文件的最大记录数目(254)。
为实现与手机的兼容,本发明提出来“影子文件”的概念。图3显示了本实施例中的“影子文件”的结构。影子文件本身非常简单,它也是一个记录文件,其记录数目与GSM***中的标准短消息文件(6F3C)完全一致,但是其记录的内容仅仅是一个记录号,此记录号对应于短消息数据库中的短信编号,这一影子文件与数据库文件的关系如图4所示。因此,如果知道了影子文件中保存的记录号,就可以获取完整的短消息的内容。在手机通过Update Record以及Read Record对6F3C文件进行处理的时候,实际上是通过这个影子文件对短消息数据库进行读写操作。
在手机收到短消息后对数据库进行更新的工作流程如图5所示。
在手机收到一个短消息的时候,一定是通过Update Record命令将收到的短消息写入智能卡的6F3C文件,此时,SIM卡收到Update Record命令,首先判断在现有的影子文件中是否已经建立起对应关系。如果已经建立起对应关系,说明是对目前已经存在于短消息数据库中的一条短消息进行更新,否则说明需要在短消息数据库中新建一条短消息,并在影子文件中建立起映射关系。在手机通过Update Record命令向SIM卡传递一条短消息的时候,传输的数据中包含发件人的号码信息(这一格式是国际通行规范:GSM03.40中规定的),短消息数据库管理模块将获取此号码信息,并将此信息传递给号码簿管理模块。号码簿管理模块将搜索在SIM卡上保存的全部电话号码簿信息,找到与该号码对应的发件人姓名,并将此发件人姓名返回给短消息数据库管理模块。这样,短消息数据库管理模块就可以根据此发件人的姓名以及短消息中的详细信息整理出需要写入基本信息文件和详细信息文件中的数据,并将这些信息写入短消息数据库。同时,在本实施例的短消息数据库管理模块中,还实现了对短消息的自动分类管理。用户可以实现设定好一定的
“过滤条件”在SIM卡收到从手机传来的短消息时,短消息数据库管理模块将自动判断收到的短消息是否符合某一“过滤条件”,从而按照自动地按照该条件的规定设置该短消息的属性(例如将其分配到某一类别或者某一加密目录中)。此过程在图6中也有说明。更详细地,例如,用户可以事先设置“如果发件人的号码是139012345678,则将该短信存入名称为‘1111’的加密目录中”。这样,当卡片收到来自139012345678的短消息时,将自动将其属性设置为“属于‘1111’加密目录”。从而实现对短消息的自动分配和管理。
特别地,在向短消息数据库写入数据的时候,短消息数据库管理模块根据事先由用户设定的分类条件,对短消息加以鉴别,如果这些短消息来自特定联系人或者具有特定关键词,符合用户事先的设定,则自动的将这些短消息的属性加以设置,从而完成对短消息进行分类。这一过程如图6所示。
特别地,某个短消息所属的类型是在短消息数据库中的短消息基本信息文件中记录的。一条短消息可能属于多个类型,例如它既可以属于“经典笑话”,也可以属于“来自好友的短消息”,如果将短消息从某个类别中删除,并不会把它从数据库中完全删除,而是将其在数据库中对应的类型编号进行删除。直到本短消息不再属于任何一个类型的时候,用户执行的“删除”操作才会将它从数据库中完全删除。通过这种机制,可以更加方便的短消息进行管理。
经过上述过程,一条从手机传入的短消息得以成功的被输入短消息数据库。
当用户希望读取短消息的内容时,一般来说,有两种方法。第一种方法,通过对6F3C文件进行Read Record实现。第二种方法:利用STK功能,建立短消息列表,供用户进行选择,然后根据用户的选择显示出详细的短消息内容。
对于第一种方法,本实施例的实现流程如图7所示,这种方法与现有手机完全兼容。
对于第二种方法,本实施例利用STK功能提供了一个菜单,可供用户进行短消息的存储和管理。此STK菜单的结构如图8所示。在图8中,根菜单提供了可以进行短消息管理的入口,进入“收件箱”、“分类管理”等各子菜单之后,可以显示属于本子菜单的所有短消息的数目以及分为多少也进行显示,通过这一途径,用户可以快捷地进行翻页处理。由于在前述“短消息基本信息文件”中保存了各个短消息的发件人姓名和短消息的开头若干个字的内容,在进入各子菜单的时候,只需要访问这一个文件,***的运行速度会非常快,并且可以向用户一次性的提供发件人信息和短信内容的基本信息,这种操作方法极大地提高了***运行速度,并改善了人机界面。在用户选择某一短消息之后,***从短消息数据库的“短消息详细信息文件”中获取该短消息的发送时间、完整内容等信息,详细地显示出来,从而帮助用户进行短消息查询和管理。通过这种方式,可以使用户一次获取与本短消息相关的全部信息,而不必通过多次操作进行显示。这样的操作方式可以为用户进行大量短消息的快速查询和管理提供便利的条件,也是本发明的创新点之一。
在短消息数据库管理***中,内置一个排序子***,用户在进入任何一个子菜单(例如“收件箱”)的时候,都是按照一定顺序(例如发件人姓氏、收到本短消息的时间等)进行排列的。按照这种排列方法,用户可以快速的进行短消息的查询和阅读,大大节约了用户的操作时间。
通过图8可以看到,用户可以将某一短消息设置为不同的类型,以便进行更加快捷的管理。具体的设置方式如图9所示:用户选择某一短消息后,可以选择进行后续操作的方式,例如转发、回复等。在这些操作中,有一项“类型设置”,用户选择这一选项后,可以看到目前设置的全部类型名称,通过选择类型,设置在“短消息基本信息文件”中的属性,从而在不改变短消息存储未知的前提下进行类型的设置。
本实施例中,还实现了通过分页跳转机制进行短消息显示和管理的方法。一般来说,在用户的SIM卡上储存的短消息是很多的,而在手机每一页面上可以显示的短消息数目有限,在这种情况下,如果用户希望找到某一特定短消息就须要较多次的“翻页”操作,管理效率过低。在本实施例中,将所有的短消息按照“每一页面显示八条”的规则进行显示,并在每一页面的第一行显示“共有...条短消息,第n/N页,跳转至...”,这样,用户可以方便的选择自己将要阅读的短信所属于的页码,如图8所示。在图8所示的“收件箱”中,已经指明短消息共有8页,用户可以凭借自己的记忆按照排序的顺序选择将要跳转到哪一页去。在本实施例中,分页跳转机制是由排序子***实现的,也就是说,在进行排序的同时,***即可记录下每一页的短消息,从而实现短消息的快速显示和管理。
本实施例中,还实现了将短消息进行自动加密的方法和对加密目录进行隐藏的方法。如图8所示,在本实施例中,有一个“加密短信”选项。当用户选择此“加密短信”选项后,显示出的如图10所示界面。在此界面中,并不显示SIM卡上具有几个加密目录,在用户第一次使用“加密目录”时,首先通过“增加目录”选项向***中增加若干个加密目录,每个目录的名称都是一个四位数字。以后,当用户选择“进入目录”的选项时,由用户本人输入一个四位数字,***将根据此数字将对应目录中的信息显示出来。同时,如果用户连续三次无法正确进入加密目录,则***自动关闭,以避免恶意攻击。采用这种策略,卡片上的加密信息可以得到最大限度的保护,而且在特殊情况下(例如有不法分子强迫用户告知密码)时,用户可以把某一个不太重要的目录名称公开,从而隐藏更重要的信息。
本发明不受上述的实施方式的限制,并且能够在权利要求限定的本发明的范围内进行各种改进和变化。这些改进或变化应当被视为落入本发明的保护范围内。