专利名称:Sip通信中针对文本消息的传递报告的制作方法
技术领域:
本发明涉及通信领域,尤其涉及使用会话发起协议(sip)的文本消息传递。
背景技术:
在许多无线通信网络中,文本消息传送已经变成了一种非常流行的通信方式。文本消息传送的一个示例就是短消息服务(SMS),其是一组允许在移动设备之间交换短文本消息(即,160个字符或更少)的通信协议。尽管术语“文本消息”通常指的是使用SMS发送的只包含文本的消息,但是其已经被扩展为包括多媒体消息,比如图像、视频、声音内容等等。多媒体消息可以使用多媒体消息服务(MMS)协议发送。相比于语音呼叫,移动用户往往更频繁地使用文本消息传送来进行通信。新的文本消息的发送者在用户设备(例如,电话)中输入该消息的一个或多个预期的目的地,并且输入该消息的内容。发送者的用户设备将文本消息转换为适当的协议,并将文本消息通过适当的信号传送信道发送至网络中的消息中心。一个典型的消息中心的示例就是SMS中心(SMSC)。然后,SMSC尝试将SMS消息传送至其目的地。很多传统的移动(无线)网络是电路交换的。例如,GSM(全球移动通信系统)网络和CDMA2000网络就是电路交换网络的类型。网络运营商在这些类型的电路交换网络上提供文本消息传送服务。其它类型的得到普及的网络是分组交换网络。IP多媒体子系统(IMS)网络和长期演进(LTE)网络是分组交换网络的两个示例。网络运营商同样正在尝试在这些类型的网络上提供文本消息传送服务。分组交换网络中使用的一种类型的信号传送协议是会话发起协议(SIP)。当发送文本消息时,文本消息的数据被封装在SIP请求中,通常是SIP MESSAGE (SIP消息)。然后,该SIP请求被路由至接收者,在这里接收者设备中的应用尝试解析包括在SIP请求中的文本消息。第三代合作伙伴项目(3GPP和3GPP2)的技术规范已经定义了如何通过分组交换(IP)网络交换文本消息。作为这些规范的一部分,当文本消息被传递给接收者时,接收者必须发起新的SIP事务(transaction)来回报文本消息的传递成功/失败。当网络运营商尝试为它们的客户提供文本消息传送时,在分组交换网络中这样的方法可能会导致问题。
发明内容
这里所描述的实施例提供了报告使用SIP发送的文本消息传递成功/失败的一种改进的方式。当文本消息被封装在SIP请求中时,接收该SIP请求的系统生成SIP响应。先前的系统会发送仅指示该SIP请求的传递状态的SIP响应。然后,先前的系统会发起单独的SIP事务来报告文本消息本身的传递状态。根据这里的实施例,接收SIP请求(封装有文本消息)的系统生成指示封装在SIP请求中的文本消息的传递状态的SIP响应。SIP响应可以是SIP中新定义的,比如7xx消息。通过在SIP响应中包括文本消息的传递状态,无需发起单独的SIP事务来报告文本消息的传递状态。
一个实施例包括一种适于处理分组交换网络上的文本消息的文本消息系统。该文本消息系统包括可操作用来从分组交换网络中的实体接收SIP请求的网络接口,其中该SIP请求封装有文本消息。该文本消息系统进一步包括可操作用来确定向接收者传递该文本消息的状态的控制系统。该控制系统进一步可操作用来产生包括针对文本消息的传递状态参数的SIP响应,并且用来在该SIP响应的传递状态参数中插入针对文本消息的已确定的传递状态。网络接口进一步可操作用来通过分组交换网络向该实体传输SIP响应。在另一实施例中,SIP响应包括指示针对文本消息的成功传递尝试的SIP 700响应。控制系统进一步可操作用来在SIP 700响应中插入移动应用部分(MAP) RP-ACK,用于指示针对文本消息的成功传递尝试。在另一实施例中,SIP响应包括指示针对文本消息的失败传递尝试的SIP 701响应。控制系统进一步可操作用来在SIP 701响应中插入移动应用部分(MAP)RP-ERROR,用于指示针对文本消息的失败传递尝试。在另一实施例中,传递状态包括针对移动发起(MO)文本消息的SMS-SUBMIT-REPORT。在另一实施例中,传递状态包括针对移动终止(MT)文本消息的SMS-DELIVER-REP0RT。另一实施例包括一种用于处理分组交换网络上的文本消息的方法。该方法包括从分组交换网络中的实体接收封装有文本消息的会话发起协议(SIP)请求,以及确定向接收者传递文本消息的状态。该方法进一步包括生成包括针对文本消息的传递状态参数的SIP响应,在SIP响应的传递状态参数中插入针对文本消息的已确定的传递状态,以及通过分组交换网络向该实体传输SIP响应。在另一实施例中,SIP响应包括指示针对文本消息的成功传递尝试的SIP 700响应,该方法进一步包括在SIP 700响应中插入移动应用部分(MAP) RP-ACK,用于指示针对文本消息的成功传递尝试。在另一实施例中,SIP响应包括指示针对文本消息的失败传递尝试的SIP 701响应,该方法进一步包括在SIP 701响应中插入移动应用部分(MAP)RP-ERROR,用于指示针对文本消息的失败传递尝试。在另一实施例中,传递状态包括针对移动发起(MO)文本消息的SMS-SUBMIT-REPORT。在另一实施例中,传递状态包括针对移动终止(MT)文本消息的SMS-DELIVER-REP0RT。其它的示例性实施例可以在下面进行描述。
现在仅通过示例的方式并参照附图对本发明的一些实施例进行描述。相同的附图标记在所有的附图中表示相同的或者相同类型的元素。图1图示了示例性实施例中的文本消息系统。图2为图示了示例性实施例中的报告文本消息的传递状态的方法的流程图。图3图示了示例性实施例中的通信系统。
图4为图示了示例性实施例中的SMS消息的失败传递的消息图。图5为图示了示例性实施例中的SMS消息的成功传递的消息图。
具体实施例方式附图以及下面的描述说明了本发明的特定的示例性实施例。因此,应该认识到,本领域技术人员能够设想出各种布置方式,尽管在这里没有明确地描述或示出,但这些实施例体现了本发明的原理并且包含在本发明的范围内。而且,这里所描述的任何示例旨在帮助理解本发明的原理,应该被解释为不限于这些具体记载的示例和条件。因此,本发明并不限于下面所描述的特定实施例或示例,而是受到权利要求及其等同方案的限制。图1图示了示例性实施例中的文本消息系统100。文本消息系统100包括可操作用来对经由会话发起协议(SIP)通过分组交换网络110发送的文本消息进行处理的任何服务器、网关、端用户设备或者其它系统。例如,文本消息系统100可以包括端用户设备(或用户设备(UE)),该设备启用SIP并且包括处理经由SIP接收的文本消息的应用。在另一实施例中,文本消息系统100可以包括接收封装有文本消息的SIP请求的服务器、网关或者分组交换网络中的某些其它系统,比如頂S网络中的应用服务器或IP-SM-GW,或者处理SMS的LTE网关。文本消息系统100或者是分组交换网络110的一部分,或者与分组交换网络110耦合(如图1所示)以便与分组交换网络110中的实体(未示出)交换SIP消息。分组交换网络Iio可以包括MS网络、LTE网络或者任何其它基于IP的网络。文本消息系统100包括网络接口 102和控制系统104。网络接口 102包括适于使用SIP与分组交换网络110中的一个或多个实体(未示出)进行通信的任何设备或部件。尽管图1中没有明确地示出,这些实体可以包括应用服务器、服务-呼叫会话控制功能(S-CSCF)、LTE网关或者路由或产生文本消息的任何其它元件。控制系统104包括适于提供被封装在SIP请求中的文本消息的传递状态的任何设备或部件。在下述实施例中,当文本消息系统100从分组交换网络110中的实体接收到封装有文本消息的SIP请求时,系统100能够在SIP响应中向该实体回报该文本消息的传递状态。例如,文本消息系统100能够报告该文本消息是否被成功地传递至其预期的接收者,或者传递是否失败。对于分组交换网络上的文本消息传送而言,以前无法如下面的实施例所描述的那样在SIP响应中报告传递状态。作为背景,在SIP中定义了一组被称为SIP请求或“方法”的命令。一个这样的SIP请求是用来传输即时消息、文本消息等的SIP MESSAGE。SIP还定义了一组被称为SIP响应的命令。SIP响应用来响应特定的SIP请求。一些常见的 SIP 响应为 lxx、2xx、3xx、4xx、5xx 以及 6xx。目前,当接收到封装有文本消息的SIP请求时,接收设备并不在SIP响应中提供该文本消息的传递状态。接收设备提供接收到SIP请求本身的SIP响应(应答),比如在SIP200 OK中。但是该SIP响应并未指示文本消息是否被成功地传递至其接收者;其仅指示SIP请求的传递状态。接收设备必须发起新的SIP事务以通过发送报告文本消息的传递状态的单独的SIP请求来提供该传递状态。下面提供的实施例避免了必须发起新的SIP事务来报告文本消息的传递状态,因为传递状态在SIP响应中得以提供。图2为图示了示例性实施例中的报告文本消息的传递状态的方法200的流程图。将参照图1中的文本消息系统100对方法200的步骤进行描述,但是本领域技术人员能够认识到,方法200可以在其它的网络及系统上执行。这里所描述的流程图中的步骤并非包含所有的,可以包括其它没有示出的步骤。这些步骤还可以以其它可替换的顺序执行。在步骤202中,网络接口 102从分组交换网络110中的实体(未示出)接收SIP请求,其中该SIP请求封装有文本消息。例如,该分组交换网络110中的实体可以包括在SIP请求中发送移动发起(MO)文本消息的端用户设备。分组交换网络110中的实体可以可替换地包括在SIP请求中向系统100转发文本消息的服务器或网关。该SIP请求可以包括SIPMESSAGE或传输文本消息(例如,SMS消息)的其它类型的SIP请求。在步骤204中,控制系统104确定向接收者传递文本消息的状态,其被称为文本消息的传递状态。传递状态包括任何指示向其预期的接收者传递文本消息成功或者失败的信息。用来确定文本消息的传递状态的过程超出了本申请的范围。然而,在一个示例中,如果文本消息100在端用户设备中实现,控制系统104(或者该端用户设备中的另一系统)就可以解析用于该文本消息的数据以确定是否存在寻址错误、格式错误或者任何其它类型的错误。如果在解析该文本消息时检测到一个或多个错误,那么控制系统104可以确定该文本消息的传输失败了。如果在解析该文本消息时未检测到错误,控制系统104可以确定该文本消息的传递是成功的。在步骤206中,控制系统104生成SIP响应,其包括针对文本消息的传递状态参数。当前可用的这组SIP响应并不具有为文本消息的传递状态定义的参数。因此,根据这里提供的实施例,定义了包括用于指示向接收者传递文本消息的状态的传递状态参数的一个或多个新的SIP响应。下面将更加详细地讨论这些新的SIP响应。虽然这里使用了术语“参数”,其它的术语比如报头参数、报头字段、报头内容等可以被用来描述SIP响应的增强的特征。在步骤208中,控制系统104在SIP响应的传递状态参数中插入文本消息的已确定的传递状态。然后,在步骤210中,网络接口 102通过分组交换网络110向该实体传输该SIP响应。根据上面的描述可以明显看出,该SIP响应中实际上包括文本消息的传递状态。该SIP响应还可以指示SIP请求的传递状态。由于SIP响应包括文本消息的传递状态,所以无需文本消息系统100和分组交换网络110中的实体之间的新的SIP事务(例如,另一个SIP请求)来报告文本消息的传递状态。就多种原因而言这都是有利的。例如,当需要多个SIP事务来报告文本消息的传递状态时,发送者和接收者均必须保存关于两个SIP事务的数据,以便使来自两个事务的SIP请求/响应相关联。此外,第一 SIP请求的发送者可以是与接收报告传递状态的第二 SIP请求不相同的节点;因此SIP事务的相关联可能是困难的。正如这里的实施例中,在SIP响应中报告文本消息的传递状态(连同SIP请求的状态)允许在分组交换网络中有效地实现文本消息传送。根据这里的实施例,对SIP响应命令(参见RFC 3261)进行了增强以便支持针对封装有文本消息的SIP请求的新的响应代码/类别。这些新的SIP响应中的一个是SIP700,其指示以成功结果完成的尝试。更加具体地,SIP 700包括指示文本消息的传递成功的参数。SIP 700中的参数可以被填充以指示传递成功的各种信息。该信息的一个示例可以是MAP RP-ACK (或者是针对移动发起(MO)文本消息的SMS-SUMMIT-REPORT或者是针对移动终止(MT)文本消息的SMS-DELIVER-REPORT)。这些新的SIP响应中的另一个是SIP 701,其指示以不成功(失败)结果完成的尝试。更加具体地,SIP 701包括指示文本消息传递失败的参数。SIP 701中的参数可以被填充以指示传递不成功的各种信息。该信息的一个示例可以是MAP RP-ERROR(或者是针对移动发起(MO)文本消息的SMS-SUMMIT-REPORT或者是针对移动终止(MT)文本消息的SMS-DELIVER-REPORT)。示例图3图示了示例性实施例中的通信系统300。通信系统300包括多个无线通信网络,在该实施例中被示为CDMA网络310JMS网络320以及LTE网络330。下面所描述实施例说明了使用SIP消息向移动设备350进行的SMS消息的传递。CDMA网络310包括归属位置寄存器(HLR) 312、移动交换中心(MSC) 314以及分组数据网络网关(PDN-GW)316。HLR 312是中心用户数据库,其存储用户信息以及被授权使用CDMA网络310的移动设备的其它细节(例如,订户简档)。MSC 314是移动设备的服务节点,并且负责处理语音呼叫、SMS以及CDMA网络310中的其它服务。I3DN-GW 316包括CDMA网络310中在CDMA网络310和分组交换网络(比如IMS网络320)之间协调(interwork)信令的任何节点或元件。CDMA网络310可以包括出于简要的目的而没有示出的其它网络元件,比如基站、无线网络控制器等等。IMS网络320包括代理-呼叫会话控制功能(P-CSCF) 322、服务-呼叫会话控制功能(S-CSCF) 324、归属订户服务器(HSS) 326以及分组网关(PGW) 328。P-CSCF 322是MS域的入口点并且用作頂S设备的出站(outbound)代理服务器。S-CSCF 324是信令平面的中心节点,并对在頂S网络320上发起会话的MS设备进行会话控制。S-CSCF 324与图3中没有示出的一个或多个接入网络上的頂S设备进行通信。HSS 326是订户服务器,其存储与订阅有关的信息(例如,订户简档),进行端用户的认证和授权、提供关于用户位置的信息等等。PGW 328包括MS网络320中与外部网络交换分组的任何节点或元件。为了简要,LTE网络330的元件并未在该实施例中示出。通信系统300还包括SMS中心(SMSC) 342以及SMS网关344,其可以包括LTE网关、IP短消息网关(IP-SM-GW)或者某些处理基于IP的SMS的其它网关。SMS中心342包括使用存储-转发处理来传递SMS消息的用于电路交换网络的任何节点。SMS网关344包括在基于SIP的网络与使用不同信令协议的网络或设备之间协调信令的任何节点。例如,如果网络或设备使用短消息点对点(SMPP)协议来交换SMS消息,那么SMS网关344就将SMPP协议消息协调为SIP,反之亦然。通信系统300还包括外部短消息传送实体(ESME) 346和348。ESME是外部应用,其与SMSC 342或SMS网关344连接以便进行SMS消息的发送和/或接收。ESME的典型示例是向移动用户、处理SMS投票的投票系统等发送自动的营销消息的系统。对于该实施例,假设ESME 348生成预期去往移动设备350的SMS消息。下面的实施例说明如何在SIP响应中提供传递状态。图4为图示了示例性实施例中的SMS消息的失败传递的消息图。作为参考,在该实施例中图1的文本消息系统100在移动设备350中实现。在ESME 348生成了用于移动设备350的SMS消息之后,ESME 348对SMPP协议data_sm消息进行格式化并将该SMS消息封装在data_sm消息中。此时假设ESME 348启用SMPP协议。如果不是这样,可以在ESME348与SMS网关344之间实现SMPP网关。然后,ESME 348将data_sm消息发送给SMS网关344。响应于data_sm消息,SMS网关344使用直径用户数据请求(UDR)向HSS 326询问移动设备350的注册状态。HSS 326确定移动设备350已注册,并通过指示该移动设备350已注册的直径用户数据应答(UDA)来响应SMS网关344。然后,SMS网关344构建封装有该SMS消息的SIP MESSAGE。该SIP MESSAGE的报头可以按如下方式构造:MESSAGE tel:+19305020103 SIP/2.0Via:SIP/2.0/UDP 135.1.62.120:5060 ;branch = z9hG4bTo:tel:+19305020103From:tel:+19305020106 ;tag = I(ESME Address-long code)Call-1D:689e5af4451c0170ilivemaslMax-Forwards:70CSeq:1 MESSAGERoute: LTE Gff SIP URIP-Charging-Vector = icid-value =PCSF: 192.161.1.xxx-xxxxxxxx”
Content-Type:application/vnd.3gpp.smsContent-Length:XX(中继层消息的长度) 封装的 RP-DATA (SMS-DELIVER) 然后,SMS网关 344 向 IMS 网络 320 中的 S-CSCF 324 发送 SIP MESSAGE。S-CSCF324接着将SIP MESSAGE路由至移动设备350。然后,移动设备350尝试解析SIP MESSAGE中的SMS消息(RP-DATA)。假定对于该实施例,由于一个或多个原因而发生了错误。移动设备350因此确定SMS消息的传递已经失败。于是,移动设备350生成包括用于SMS消息的传递状态的参数的SIP 701响应,并在该SIP 701响应的参数中插入对于失败的传递的指示。例如,移动设备350可以插入SMS-DELIVER-REPORT(参见3GPP TS 23.040),其包括指示传递失败的原因的TP-Failure-Cause。SIP 701响应可以看起来像下面这样:SIP/2.0 701 Attempted with unsuccessful resultVia:SIP/2.0/UDP 135.1.30.70:5080 ;branch = z9hG4bK287482662_1402101Max-Forwards:69From: <sip:+19305020103iverizon.net ;user = phone ; Ir>; tag =pctUA_287482662To: LTE Gff SIP URICall-1D:287482662-1402079CSeq:1 MESSAGEContent-Type:application/vnd.3gpp.smsContent-Length:XX(中继层消息的长度) 封装的 RP-ERROR (SMS-DELIVER-REPORT 消息) 然后,移动设备350将SIP 701响应路由至S-CSCF 324。S-CSCF324接着将SIP701响应路由至SMS网关344。SMS网关344对SIP 701响应进行处理以便识别失败的传递(例如,对指示SMS消息传递失败原因的TP-Failure-Cause (TP失败原因)值进行处理)。然后,SMS网关344将错误码映射为data_sm_resp中的SMPP command_status (命令状态)结果码(如果是不同的协议,可能有不同的映射)。下面提供的表I说明了错误码映射的示
权利要求
1.一种系统,包括: 网络接口,所述网络接口可操作用来从分组交换网络中的实体接收封装有文本消息的会话发起协议(SIP)请求;以及 控制系统,所述控制系统可操作用来确定向接收者传递所述文本消息的状态,产生包括针对文本消息的传递状态参数的SIP响应,以及在所述SIP响应的所述传递状态参数中插入针对所述文本消息的已确定的传递状态; 所述网络接口进一步可操作用来通过所述分组交换网络向所述实体传输所述SIP响应。
2.根据权利要求1所述的系统,其中: 所述SIP响应包括指示针对所述文本消息的成功传递尝试的SIP700响应;以及所述控制系统进一步可操作用来在所述SIP 700响应中插入移动应用部分(MAP)RP-ACK,用以指示针对所述文本消息的成功传递尝试。
3.根据权利要求1所述的系统,其中: 所述SIP响应包括指示针对所述文本消息的失败传递尝试的SIP701响应;以及所述控制系统进一步可操作用来在所述SIP 701响应中插入移动应用部分(MAP)RP-ERROR,用以指示针对所述文本消息的失败传递尝试。
4.根据权利要求1所述的系统,其中: 所述传递状态包括针对移动发起(MO)文本消息的SMS-SUBMIT-REPORT。
5.根据权利要求1所述的系统,其中: 所述传递状态包括针对移动终止(MT)文本消息的SMS-DELIVER-REP0RT。
6.一种方法,包括: 从分组交换网络中的实体接收封装有文本消息的会话发起协议(SIP)请求; 确定向接收者传递所述文本消息的状态; 生成包括针对文本消息的传递状态参数的SIP响应; 在所述SIP响应的所述传递状态参数中插入针对所述文本消息的已确定的传递状态;以及 通过所述分组交换网络向所述实体传输所述SIP响应。
7.根据权利要求6所述的方法,其中: 所述SIP响应包括指示针对所述文本消息的成功传递尝试的SIP700响应;以及在所述SIP响应的所述参数中插入针对所述文本消息的已确定的传递状态的步骤包括:在所述SIP 700响 应中插入移动应用部分(MAP)RP-ACK,用以指示针对所述文本消息的成功传递尝试。
8.根据权利要求6所述的方法,其中: 所述SIP响应包括指示针对所述文本消息的失败传递尝试的SIP701响应;以及在所述SIP响应的所述参数中插入针对所述文本消息的已确定的传递状态的步骤包括:在所述SIP 701响应中插入移动应用部分(MAP)RP-ERROR,用以指示针对所述文本消息的失败传递尝试。
9.根据权利要求6所述的方法,其中: 所述传递状态包括针对移动发起(MO)文本消息的SMS-SUBMIT-REPORT。
10.根据权利要求6所述的方法,其中:所述传递状态包括针对移 动终止(MT)文本消息的SMS-DELIVER-REPORT。
全文摘要
公开了用于在SIP响应中提供文本消息的传递状态的系统以及方法。在一个实施例中,文本消息系统从分组交换网络中的实体接收SIP请求,其中该SIP请求封装有文本消息。该文本消息系统确定向接收者传递该文本消息的状态,并产生包括针对文本消息的传递状态参数的SIP响应。该文本消息系统在该SIP响应的传递状态参数中插入针对该文本消息的已确定的传递状态,并通过分组交换网络向该实体传输该SIP响应。
文档编号H04L12/58GK103181126SQ201180051726
公开日2013年6月26日 申请日期2011年10月5日 优先权日2010年10月26日
发明者蔡亦钢, S·华 申请人:阿尔卡特朗讯