专利名称:一种短厅系统处理会话的方法及装置的制作方法
技术领域:
本发明涉及通信技术领域,尤其涉及一种短厅系统处理会话的方法及装置。
背景技术:
随着对用户体验的越来越注重以及为了更好的维护用户权益,短信营业厅(简称短厅)会通过短信的方式跟用户进行多次交互以让用户更好更全面的了解并订购需要办理的业务。基于短厅分布式部署的需要,必须建立数据库并以所述数据库为缓存,在数据库中创建和保存用户与短厅系统间的会话。其中,短厅会跟用户进行多次交互,在交互期间通过查询、增加、更新或删除等方式来操作数据库以实现短厅与用户间的会话。现有技术中,当短厅系统接收到用户终端发送的短信请求后,需要根据用户号码对数据库中的所有数据进行查询以查找所述短信请求是否有对应的会话,如果没有,则创 建新的会话,如果有,则在数据库中添加该短信请求;当短厅服务器再次接收到该用户终端发送的短信请求且与上次短信请求对应于同一个会话时,同样需要查询整个数据库以找到该会话,以便对该会话进行更新或删除的操作。但是,由于针对同一会话短厅系统与用户终端之间需要进行多次交互,而每交互一次,都要重新查找整个数据库以获取对应的会话,直到本次会话结束为止。基于短信交互业务上的繁琐以及用户量的巨大,如此频繁的操作存储数据量比较大的数据库,就会增大系统压力,降低系统的反应速度,也会造成主机系统的性能消耗。此外,只能在结束一个用户的当前会话后才能继续下一个会话,即短厅系统针对一个用户不能同时并行处理多个会话。
发明内容
有鉴于此,本发明的主要目的在于提供一种短厅系统处理会话的方法及装置,以实现减少对数据库的访问量以提高系统吞吐效率的目的。为实现上述目的,本发明提供了一种短厅系统处理会话的方法,包括接收用户终端发送的第一短信请求;如果用于接收所述第一短信请求的目标号码中未携带扩展码,则创建第一会话,并为所述第一会话分配第一扩展码;利用携带所述第一扩展码的目标号码向所述用户终端回复响应短信;如果在回复响应短信后的第一会话超时时间内接收到所述用户终端发送的第二短信请求且用于接收所述第二短信请求的目标号码中携带所述第一扩展码,则根据所述第一扩展码查询并定位数据库中的第一会话,并将所述第二短信请求添加到所述第一会话中。优选地,在上述方法中,如果在回复响应短信后的第一会话超时时间内未接收到第二短信请求,则销毁所述第一会话。优选地,在上述方法中,如果用于接收所述第一短信请求的目标号码中携带第二扩展码,则获取所述第二扩展码;如果根据所述第二扩展码在数据库中查询到第二会话,则将所述第一短信请求添加到所述第二会话中。优选地,在上述方法中,如果根据所述第二扩展码未在数据库中查询到第二会话,则回复无效请求短信,用以告知用户终端所述第二会话已被销毁。优选地,在上述方法中,通过获取对应的会话存储配置分别对会话进行创建、删除、添加、查询操作。优选地,在上述方法中,所述目标号码由服务器代码和扩展码组成。本发明还提供了一种短厅系统处理会话的装置,包括
请求接收模块,用于接收用户终端发送的第一短信请求;第一判断模块,用于判断用于接收所述第一短信请求的目标号码中是否携带扩展码;会话创建模块,用于在所述第一判断模块判断得到的用于接收所述第一短信请求的目标号码中未携带扩展码时,创建第一会话,并为所述第一会话分配第一扩展码;短信回复模块,用于利用携带所述第一扩展码的目标号码向所述用户终端回复响应短 目;第二判断模块,用于判断在回复响应短信后的第一会话超时时间内是否接收到所述用户终端发送的第二短信请求;第三判断模块,用于在所述第二判断模块判断得到的在回复响应短信后的第一会话超时时间内接收到所述用户终端发送的第二短信请求时,判断用于接收所述第二短信请求的目标号码中是否携带所述第一扩展码;会话更新模块,用于在所述第三判断模块判断得到的用于接收所述第二短信请求的目标号码中携带所述第一扩展码时,根据所述第一扩展码查询并定位数据库中的第一会话,并将所述第二短信请求添加到所述第一会话中。优选地,上述装置还包括会话销毁模块,用于在所述第二判断模块判断得到的在回复响应短信后的第一会话超时时间内未接收到第二短信请求时,销毁所述第一会话。优选地,上述装置还包括扩展码获取模块,用于在所述第一判断模块判断得到的用于接收所述第一短信请求的目标号码中携带第二扩展码时,获取所述第二扩展码;会话查询单元,用于根据所述第二扩展码在数据库中查询第二会话;所述会话更新模块,还用于在根据所述第二扩展码在数据库中查询到第二会话时,将所述第一短信请求添加到所述第二会话中。优选地,上述装置还包括无效响应模块,用于在根据所述第二扩展码未在数据库中查询到第二会话时,回复无效请求短信,用以告知用户终端所述第二会话已被销毁。本发明短厅系统处理会话的方法及装置,在获取到用户终端发送的短信请求后,查询用于接收短信请求的目标号码中是否携带扩展码,如果否,则在数据库中创建新的会话并分配扩展码,如果是,则根据该扩展码查询数据库并定位数据库中的会话单表,并将短信请求更新到会话单表中。由于本发明是根据扩展码对不同会话进行区分的,相当于把数据库拆分成了多个单表,在每次操作数据库时不需要对整个数据库中的所有数据进行查询,而只需根据扩展码精准定位归属会话表,并只对该会话表进行操作即可,这样可以大大减少查询数据库所消耗的时间,同时可以起到减少对短厅系统访问时的性能消耗,大大提高了短厅系统的数据吞吐效率。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I为本发明短厅系统处理会话的方法的实施例I的流程示意图;图2为本发明会话机制示意·
图3为本发明短厅系统处理会话的方法的实施例2的流程示意图;图4为本发明短厅系统处理会话的装置的实施例I的结构示意图;图5为本发明短厅系统处理会话的装置的实施例2的结构示意图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面首先对本发明的会话机制进行介绍客户办理业务的过程中与短信营业厅的多次交互组成了一次会话(相邻两次交互的间隔时间不超过会话超时时间),为了实现短信营业厅与用户间的会话,短信营业厅需要提供会话机制,所述会话机制是指用户终端和短信营业厅服务端保持会话状态的一种机制。会话机制包括但不限于对以下业务功能做支撑I、在正常的菜单交互过程中,支持用户利用手机发送或是其它键值获取上级菜单的功能;2、支持业务订购确认功能,即系统在客户申请订购某项业务后,回复业务订购确认信息给客户,待客户回复确认信息后,系统可继续进行订购的最终提交或者取消申请的操作;3、在正常的菜单交互过程中,如果主动营销通过10086X或是其它号码发送业务推荐信息,客户可以回复对应的确认信息给10086X或是其它号码,而不影响先前的菜单交互和业务办理,在此过程中客户与短信营业厅建立了独立的两个会话,会话之间没有影响;4、支持以会话为粒度,保存客户接触记录。参见图I所示,图I为本发明提供的一种短厅系统处理会话的方法,实现该方法的步骤如下SlOl :接收用户终端发送的第一短信请求。为了办理相应的业务,用户可发送指定代码(如“开通彩铃”或KTCL”)到10086。
S102:如果用于接收所述第一短信请求的目标号码中未携带扩展码,则创建第一会话,并为所述第一会话分配第一扩展码。如果上述目标号码中不包含扩展码,例如目标号码只是服务代码10086,说明该第一短信请求是用户首次发起的短信请求,且在短厅系统中还没有建立相应的会话,针对用户的首次请求,短厅系统会在数据库中新增加一条会话如第一会话,并选取一个扩展码标识该会话。由于存在大量的用户与短厅系统进行交互,以及每个用户可能同时进行两个或是两个以上的不同业务交互,导致数据库中的会话数据较多,所以数据库中会存在多张会话表,且每张会话表是通过扩展码来区分的,不同扩展码对应的会话记录就会保存在相对应的会话表中,比如,以401为扩展码的会话记录就保存在TD_SESSI0N_401表中,其目的是以不同扩展码对会话进行区分。可按照下述方式为会话分配扩展码 按照会话建立的时间顺序依次为每条会话分配扩展码,例如扩展码I到400均已经被分配过,其中包括被销毁的会话,可按照顺序为当前会话分配扩展码401 ;或者将已经被销毁的会话对应的扩展码分配给当前会话,因为会话被销毁后,用于标识会话的扩展码也同时被销毁,可将空缺出的扩展码进行重新分配。当然,分配扩展码的方式包括但不限于上述的分配方式,所有衍生类的方式均为本发明的保护范畴。S103 :利用携带所述第一扩展码的目标号码回复响应短信至所述用户终端。当用于接收第一短信请求的目标号码为10086,且为所述第一会话分配的第一扩展码为401时,短厅系统会在建立第一会话后以“10086+401”(服务器代码+扩展码)的形式回复短信。在本实施例中,为了让用户更进一步的了解订购业务或是顺利的完成需要办理的业务,需要通过回复的响应短信告知用户如何操作,例如建议用户回复“Y”或是“N”进行下一步的交互;或是回复响应短信通知用户已经成功完成业务订购,此时不需要用户再次发送请求短信。S104:如果在回复响应短信后的第一会话超时时间内接收到所述用户终端发送的第二短信请求且用于接收所述第二短信请求的目标号码中携带所述第一扩展码,则根据所述第一扩展码查询并定位数据库中的第一会话,并将所述第二短信请求添加到所述第一会话中。针对不同业务类型,短厅系统会设置不同的会话超时时间,例如会话超时时间为12小时或是10分钟。会话超时时间是短厅系统在回复用户短信后用户再次发送短信请求的有效时间,即超出会话超时时间用户发送的短信请求便是无效请求;但若在会话超时时间内用户再次发送了请求短信,短厅系统会将该请求更新到对应的会话表中;如果需要继续短信交互,短厅系统会再次回复短信,并在会话超时间内等待用户的下一次短信请求。参见图2所示的会话机制示意图,为了更清楚的了解本发明是如何处理一条会话的,下面进行具体说明I、用户第I次短信请求被短信营业厅接收后,短信营业厅服务端创建会话(SESSION),并将会话保存在数据库中,保存的过程中以扩展码区分,并下发目标号码为服务代码+扩展码,其中服务代码为10086,扩展码是短信网关的一个端口,之后利用该携带扩展码的目标号码向用户回复短信。其中,每个扩展码会对应着一张会话表,根据一定的规则将不同扩展码对应的会话保存到相对应的会话表中。2、在会话超时时间内,如果短厅系统接收到第2次短信请求,首先会通过用户回复短信的目标号码(服务代码+扩展码)中的扩展码去相对应的会话表中查找是否有会话记录,如果有,就会进行会话操作,同时通过扩展码将第2次短信请求更新到相对应的会话表中。3、在本次会话结束之前,用户终端会不断发送第2次短信请求、第3次短信请
求......第η次短信请求,在每次接收到短信请求,短厅系统都会回复短信,直到会话超时
时间内无新的短信请求到达或是会话结束,系统会自行销毁该会话;当要删除某条会话时,也是先通过扩展码先查询到相对应的会话表,在这张表中再去删除该会话记录。
·
本发明短厅系统处理会话的方法,在获取到用户终端发送的短信请求后,查询用于接收短信请求的目标号码中是否携带扩展码,如果否,则在数据库中创建新的会话并分配扩展码,如果是,则根据该扩展码查询数据库并定位数据库中的会话单表,并将短信请求更新到会话单表中。由于本发明是根据扩展码对不同会话进行区分的,相当于把数据库拆分成了多个单表,在每次操作数据库时不需要对整个数据库中的所有数据进行查询,而只需根据扩展码精准定位归属会话表,并只对该会话表进行操作即可,这样可以大大减少查询数据库所消耗的时间,同时可以起到减少对短厅系统访问时的性能消耗,大大提高了短厅系统的数据吞吐效率。本发明通过获取对应的会话存储配置分别对会话进行创建、删除、添加、查询操作。参见图3所示,图3为本发明提供的一种短厅系统处理会话的方法的实施例2的流程示意图,实现该方法的步骤如下S301 :接收用户终端发送的第一短信请求;S302:判断用于接收所述第一短信请求的目标号码中是否携带扩展码,如果是(例如目标号码为10086+扩展码),则说明所述第一短信请求在短厅系统数据库中有过对应的会话,此时执行步骤S308至S311 ;如果否(例如目标号码为10086),则说明所述第一短信请求在短厅系统数据库中没有对应的会话且是首次发起的请求,此时执行步骤S303至 S307 ;S303 :取出用于实现“增加会话”的会话存储配置,然后根据当前取出的会话存储配置创建第一会话,并为所述第一会话分配第一扩展码;S304:在创建会话后,短厅系统根据第一短信请求中的请求内容,利用携带所述第一扩展码的目标号码向所述用户终端回复响应短信。S305:判断在回复响应短信后的第一会话超时时间内是否接收到第二短信请求且用于接收第二短信请求的目标号码中是否携带第一扩展码,如果是,则执行步骤S306 ;如果否,则执行步骤S307。S306:首先,取出用于实现“查询会话”的会话存储配置,然后利用当前取出的会话存储配置根据所述第一扩展码查询并定位数据库中的第一会话;然后,取出用于实现“更新会话”的会话存储配置,然后根据当前取出的会话存储配置将所述第二短信请求添加到所述第一会话中。
S307:首先,取出用于实现“查询会话”的会话存储配置,然后利用当前取出的会话存储配置根据所述第一扩展码查询并定位数据库中的第一会话;然后,取出用于实现“删除会话”的会话存储配置,然后根据当前取出的会话存储配置销毁第一会话。S308 :获取用于接收所述第一短信请求的目标号码中携带的第二扩展码。S309:首先,取出用于实现“查询会话”的会话存储配置,然后根据当前取出的会话存储配置利用第二扩展码在数据库中查询到第二会话,如果能够查询到第二会话,说明是在第二会话超时时间内接收到的第一短信请求,执行步骤S310 ;如果不能查询到第二会话,说明是第二会话超时时间后接收的第一短信请求,由于在第二会话超时时间前该会话已经被销毁,此时执行步骤S311。S310:取出用于实现“更新会话”的会话存储配置,然后利用当前取出的会话存储配置将第一短信请求添加到第二会话中。
S311 :回复无效请求短信,用以告知用户终端所述第二会话已被销毁,短厅系统当前接收的第一短线请求无效,用户需要重新与短厅系统建立会话。本发明短厅系统处理会话的方法,基于每条会话都是以扩展码区分的,对应的会话表都是独立存在的,所以同一个用户在针对某一业务与短厅系统进行交互的过程中,还可以针对其它业务与短厅系统进行短信交互,同一用户的不同会话间没有任何影响,短厅系统可满足同一用户的多个会话的并行处理。参见图3所示,图3为本发明提供的一种短厅系统处理会话的装置的实施例I的结构示意图,该装置包括请求接收模块1,用于接收用户终端发送的第一短信请求;第一判断模块2,用于判断用于接收所述第一短信请求的目标号码中是否携带扩展码;会话创建模块3,用于在所述第一判断模块2判断得到的用于接收所述第一短信请求的目标号码中未携带扩展码时,创建第一会话,并为所述第一会话分配第一扩展码;短信回复模块4,用于利用携带所述第一扩展码的目标号码向所述用户终端回复响应短信;第二判断模块5,用于判断在回复响应短信后的第一会话超时时间内是否接收到所述用户终端发送的第二短信请求;第三判断模块6,用于在所述第二判断模块5判断得到的在回复响应短信后的第一会话超时时间内接收到所述用户终端发送的第二短信请求时,判断用于接收所述第二短信请求的目标号码中是否携带所述第一扩展码;会话更新模块7,用于在所述第三判断模块6判断得到的用于接收所述第二短信请求的目标号码中携带所述第一扩展码时,根据所述第一扩展码查询并定位数据库中的第一会话,并将所述第二短信请求添加到所述第一会话中。参见图4所示,图4为本发明提供的一种短厅系统处理会话的装置的实施例2的结构示意图,在上述实施例I的基础上,该装置还包括以下模块会话销毁模块8,用于在所述第二判断模块5判断得到的在回复响应短信后的第一会话超时时间内未接收到第二短信请求时,销毁所述第一会话。扩展码获取模块9,用于在所述第一判断模块2判断得到的用于接收所述第一短信请求的目标号码中携带第二扩展码时,获取所述第二扩展码;会话查询单元10,用于根据所述第二扩展码在数据库中查询第二会话;所述会话更新模块7,还用于在根据所述第二扩展码在数据库中查询到第二会话时,将所述第一短信请求添加到所述第二会话中。无效响应模块11,用于在根据所述第二扩展码未在数据库中查询到第二会话时,回复无效请求短信,用以告知用户终端所述第二会话已被销毁。本发明短厅系统处理会话的装置,在获取到用户终端发送的短信请求后,查询用于接收短信请求的目标号码中是否携带扩展码,如果否,则在数据库中创建新的会话并分配扩展码,如果是,则根据该扩展码查询数据库并定位数据库中的会话单表,并将短信请求更新到会话单表中。由于本发明是根据扩展码对不同会话进行区分的,相当于把数据库拆分成了多个单表,在每次操作数据库时不需要对整个数据库中的所有数据进行查询,而只需根据扩展码精准定位归属会话表,并只对该会话表进行操作即可,这样可以大大减少查·询数据库所消耗的时间,同时可以起到减少对短厅系统访问时的性能消耗,大大提高了短厅系统的数据吞吐效率。另外,基于每条会话都是以扩展码区分的,对应的会话表都是独立存在的,所以同一个用户在针对某一业务与短厅系统进行交互的过程中,还可以针对其它业务与短厅系统进行短信交互,同一用户的不同会话间没有任何影响,短厅系统可满足同一用户的多个会话的并行处理。还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
权利要求
1.一种短厅系统处理会话的方法,其特征在于,包括 接收用户终端发送的第一短信请求; 如果用于接收所述第一短信请求的目标号码中未携带扩展码,则创建第一会话,并为所述第一会话分配第一扩展码; 利用携带所述第一扩展码的目标号码向所述用户终端回复响应短信; 如果在回复响应短信后的第一会话超时时间内接收到所述用户终端发送的第二短信请求且用于接收所述第二短信请求的目标号码中携带所述第一扩展码,则根据所述第一扩展码查询并定位数据库中的第一会话,并将所述第二短信请求添加到所述第一会话中。
2.根据权利要求I所述的方法,其特征在于, 如果在回复响应短信后的第一会话超时时间内未接收到第二短信请求,则销毁所述第—会话。
3.根据权利要求I所述的方法,其特征在于, 如果用于接收所述第一短信请求的目标号码中携带第二扩展码,则获取所述第二扩展码; 如果根据所述第二扩展码在数据库中查询到第二会话,则将所述第一短信请求添加到所述第二会话中。
4.根据权利要求3所述的方法,其特征在于, 如果根据所述第二扩展码未在数据库中查询到第二会话,则回复无效请求短信,用以告知用户终端所述第二会话已被销毁。
5.根据权利要求I至4任一项所述的方法,其特征在于,通过获取对应的会话存储配置分别对会话进行创建、删除、添加、查询操作。
6.根据权利要求I至4任一项所述的方法,其特征在于,所述目标号码由服务器代码和扩展码组成。
7.一种短厅系统处理会话的装置,其特征在于,包括 请求接收模块,用于接收用户终端发送的第一短信请求; 第一判断模块,用于判断用于接收所述第一短信请求的目标号码中是否携带扩展码;会话创建模块,用于在所述第一判断模块判断得到的用于接收所述第一短信请求的目标号码中未携带扩展码时,创建第一会话,并为所述第一会话分配第一扩展码; 短信回复模块,用于利用携带所述第一扩展码的目标号码向所述用户终端回复响应短 目; 第二判断模块,用于判断在回复响应短信后的第一会话超时时间内是否接收到所述用户终端发送的第二短信请求; 第三判断模块,用于在所述第二判断模块判断得到的在回复响应短信后的第一会话超时时间内接收到所述用户终端发送的第二短信请求时,判断用于接收所述第二短信请求的目标号码中是否携带所述第一扩展码; 会话更新模块,用于在所述第三判断模块判断得到的用于接收所述第二短信请求的目标号码中携带所述第一扩展码时,根据所述第一扩展码查询并定位数据库中的第一会话,并将所述第二短信请求添加到所述第一会话中。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括会话销毁模块,用于在所述第二判断模块判断得到的在回复响应短信后的第一会话超时时间内未接收到第二短信请求时,销毁所述第一会话。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括 扩展码获取模块,用于在所述第一判断模块判断得到的用于接收所述第一短信请求的目标号码中携带第二扩展码时,获取所述第二扩展码; 会话查询单元,用于根据所述第二扩展码在数据库中查询第二会话; 所述会话更新模块,还用于在根据所述第二扩展码在数据库中查询到第二会话时,将所述第一短信请求添加到所述第二会话中。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括 无效响应模块,用于在根据所述第二扩展码未在数据库中查询到第二会话时,回复无效请求短信,用以告知用户终端所述第二会话已被销毁。
全文摘要
本发明公开了一种短厅系统处理会话的方法,包括接收用户终端发送的第一短信请求;如果用于接收所述第一短信请求的目标号码中未携带扩展码,则创建第一会话,并为所述第一会话分配第一扩展码;利用携带所述第一扩展码的目标号码向所述用户终端回复响应短信;如果在回复响应短信后的第一会话超时时间内接收到所述用户终端发送的第二短信请求且用于接收所述第二短信请求的目标号码中携带所述第一扩展码,则根据所述第一扩展码查询并定位数据库中的第一会话,并将所述第二短信请求添加到所述第一会话中。本发明还公开了一种短厅系统处理会话的装置。
文档编号H04W24/02GK102946597SQ201210510550
公开日2013年2月27日 申请日期2012年12月3日 优先权日2012年12月3日
发明者郭胜航, 李晓东, 李全胜 申请人:亚信联创科技(中国)有限公司