一种通讯终端来电信息的管理方法与流程

文档序号:11590648阅读:205来源:国知局
一种通讯终端来电信息的管理方法与流程

本发明属于通讯技术领域,尤其涉及voip通讯技术中分机终端的来电信息管理方法。



背景技术:

随着ip的语音通话技术voip的发展和成熟,基于voip基础通话所拓展的服务功能也越来越多,voip的服务器也不单单是对客户端的会话进行简单的视频语音处理,而是需要服务器和客户端之间有更多的交互。基于此,服务器同步不同话机来电信息的技术应运而生。目前一些voip服务器提供了一号多机功能,即一个帐号在不同的客户端上同时注册,实现同时响铃。很多服务都把未接来电显示功能放在了本地客户端上,对于一号多机、移动以及出差办公的情况,用户在新的话机上将无法获取未接来电等相关信息,可能错过一些重要的来电信息。

所以对于后注册上来的客户端就可能出现遗漏电话的情况,而且也不单单是未接电话,查询已接电话也是需要的。而这些记录由之前注册上的客户端发送给新注册上的客户端,显然是不太现实的,所以这时候就需要服务器来记录来电信息,并将信息发送给所有客户端,实现在所有的终端上共享通话信息,提高沟通的效率。



技术实现要素:

本发明目的在于提供一种通讯终端来电信息的管理方法,可以实现在不同终端上共享相同帐号的呼叫记录等信息,实现呼叫处理的无缝对接。

为了实现上述发明目的,本发明的技术方案如下:

一种通讯终端来电信息的管理方法,第一分机客户端和第二分机客户端基于同一个帐号先后与同一台服务器注册,该方法主要包括:步骤a:在服务器端配置所述第二分机客户端,同时在第二分机客户端开启先前来电信息的显示业务;步骤b:服务器把先前来电信息发送至第二分机客户端;步骤c:第二分机客户端解析先前来电信息并显示给用户。

优选的,服务器存储有第一分机客户端的相关来电信息,包括:未接来电号码、已接来电号码。

优选的,先前来电信息在来电信息中根据设置最大数目进行选择,或者先前来电信息在所述来电信息中根据设置一定时间周期内进行选择。

优选的,服务器在对应的register的响应消息200ok中,通过携带所述先前来电信息发送到第二客户端。

优选的,上述先前来电信息通过sdp传输,并采用sigcomp方案进行压缩。

优选的,上述步骤c中还包括:将上述先前来电信息与第二分机客户端的本地来电信息进行整合。

优选的,上述方法包括步骤d:如果上述第二分机客户端没有收到服务器回复的先前来电信息,则其会在一定时间后重新向该服务器请求。

优选的,上述先前来电信息的消息格式中包括:通话发起的时间戳、主叫名、主叫号码、来电振铃时间相关参数。

本发明提供的技术方案可以使一号多机下的客户端同步获取之前所有的未接来电和已接来电信息,使一号多机的使用更加智能,确保通话信息的无缝迁移,不会遗失或错过重要的来电信息。

附图说明

图1为本发明具体实施例一中实现来电信息管理方法的流程图;

图2为本发明具体实施例二中实现来电信息管理方法的流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明具体实施例一:

对于一号多机业务,在新注册的客户端就可能出现漏掉之前电话的情况,而且也不单单是未接电话,查询已接电话的记录也是常常需要的。如果这些记录由之前注册的客户端发送给新注册的客户端,显然是不太现实的,所以这时候就需要服务器来记录来电信息,并将信息发送给所有客户端,实现在所有的终端上共享通话信息,提高沟通的效率。为了实现将一号多机业务下将未接来电、已接来电下发给新注册客户端,服务器记录了先前来电信息,然后当新注册客户端注册成功后,给该新注册客户端发送上述先前来电信息,包括先前已接来电、未接来电等相关记录。

为了便于举例,我们以一号两机的情形来说明,其中,先前注册的客户端记为第一分机客户端,后面新注册的客户端记为第二分机客户端。

图1为本发明具体实施例一中实现来电信息管理方法的流程图。如图1所示,本发明方案具体包括如下实施步骤:

步骤110:服务器在创建配置第二分机客户端时,选择是否开启先前来电信息记录,也就是对该分机帐号先前的呼叫进行接收显示,该先前来电信息包括:未接来电、已接来电等。

其中,未接来电、已接来电的数量可根据用户需求来设置,可以设置最大数目,或者设置在一定时间周期内记录未接来电、已接来电相关信息。

步骤120:第二分机客户端向服务器发送注册请求,服务器响应成功的时候把先前来电信息发送给第二分机客户端。

其中,在对应的register的响应消息200ok中,通过携带相关来电信息给第二分机客户端,content-type使用called-info+xml,消息格式如下:

<calledinfo>

<missedcalltimptamp=1441104393>

<callername>durant<./callername>

<callernum>4001</callernum>

<ringtime>35</ringtime>

</missedcall>

<missedcalltimptamp=1441104493>

<callername>duncan<./callername>

<callernum>4003</callernum>

<ringtime>21</ringtime>

</missedcall>

<answeredcalltimptamp=1441105434>

<callername>kobe<./callername>

<callernum>4024</callernum>

<talktime>180</talktime>

</answeredcall>

<answeredcalltimptamp=1441105844>

<callername>shark<./callername>

<callernum>4012</callernum>

<talktime>32</talktime>

</answeredcall>

</calledinfo>

其中<calledinfo>表示呼叫过的信息,<missedcall>表示未接来电,<answeredcall>表示已接来电,<timetamp>表示通话发起的时间戳,<callername>表示主叫名,<callernum>表示主叫号码,<ringtime>表示来电振铃时间,<talktime>表示通话时长。如果所有的信息都通过messagebody来传输,可能会导致消息过长,所以这里可能还需要采取类似sigcomp的方案进行压缩,这里不详细赘述压缩的方法。

步骤130:第二分机客户端在收到服务器的200ok之后,解析相关的信息。

收到来电信息后,第二分机客户端解析xml格式的信息,当解析到timetamp的时候,将timetamp的数值转化为可视化的时间,解析missedcall下面的callername、callernum、ringtime等分别作为未接来电的姓名、号码、响铃时间;解析answeredcall下面的callername、callernum、talktime等分别作为已接来电的姓名、号码、通话时长。

步骤140:当第二分机客户端解析完xml之后,会发出通知,将未接来电、已接来电通过显示屏显示给用户。

在本发明具体实施例中,服务器端发过来的先前来电信息和第二分机客户端的本地来电信息可以进行整合,按时间顺序将所有的来电信息一起进行显示,并加标记以区别本地来电信息和服务器端发过来的先前来电信息。在整合服务器端和本地的来电信息过程中,可以判断服务器端记录的信息是否与本地已经记录的信息相同,如果相同,可以只保留本地的来电信息。

步骤150:服务器端自动清理先前来电信息。

在步骤110中提及,服务器会通过设置记录一定数量的先前来电信息,比如:未接来电、已接来电各10条,当来电信息数量超过设定值的时候,会自动清除掉最旧的记录。并且,服务器在一个注册周期结束后一定时间,比如10分钟内没有收到第二分机客户端的注册信息,会在服务器端删除该帐号相关的来电信息。这里,对于服务器端来电信息的清理也可以通过手动操作服务器进行。

本发明具体实施例二:

本发明实施方例二与具体实施例一的区别在于,对于一号多机业务下新注册的第二分机客户端,服务器并不会自动将相关来电信息发送给第二分机客户端,而是由第二分机客户端根据需要向服务器发送请求来获取相关的信息,如数据的插入、重复数据的处理等。

图2为本发明具体实施例二中实现来电信息管理方法的流程图。如图2所示,本发明的具体实施步骤如下:

步骤210:服务器在创建配置第二分机客户端的时候,选择是否开启来电消息记录,对该分机帐号的呼叫进行记录,包括未接来电、已接来电等。

其中,记录的未接来电、已接来电的数量可以设置,根据数目,或者设置在一个时间周期来记录未接来电、已接来电。

步骤220:当第二分机客户端需要获取该帐号的来电信息的时候,由用户启用本地的配置,向服务器发送subscribe,等待服务器响应,设置subscribe的event头为called-info以表明是来电处理消息类型的subscribe,accept头中支持application/called-info+xml,subscribe的例子如下:

subscribesip:4008@192.168.124.81:5060sip/2.0

via:sip/2.0/udp192.168.124.118:5060;branch=z9hg4bk1928936192;rport

from:<sip:4008@192.168.124.81>;tag=1474818806

to:<sip:4008@192.168.124.81>;tag=491f17a9-d9db-4dbb-9b5e-56334373073d

call-id:473322870-5060-489@192.168.124.118

cseq:35subscribe

contact:<sip:5013@192.168.124.118:5060>

max-forwards:70

supported:replaces,path,timer,eventlist

user-agent:grandstreamgxv32401.0.3.48

expires:0

supported:replaces,path,timer,eventlist

event:called-info

accept:application/called-info+xml,multipart/related,application/rlmi+xml

allow:invite,ack,options,cancel,bye,subscribe,notify,info,refer,update,message

content-length:0

步骤230:服务器收到第二分机客户端发过来的subscribe后,给第二分机客户端回复notify,notify的格式如具体实施例一中步骤120所示,content-type使用called-info+xml,在messagebody中使用xml格式传递数据。第二分机客户端在收到服务器端回复的来电信息后,如具体实施例一中步骤130的方式进行解析,回复200ok给服务器,并通过屏幕显示方式通知给用户。如果所有的信息都通过sdpmessagebody来传输,可能会导致消息过长,所以这里可能还需要采取类似sigcomp的方案进行压缩,这里不详细赘述压缩的方法。notify的消息如下所示:

notifysip:4002@192.168.124.118:5062sip/2.0

via:sip/2.0/udp192.168.124.81:5060;rport;branch=z9hg4bkpjaac020e1-6c2c-420e-adba-7281e521b136

from:<sip:4008@192.168.124.81>;tag=4d2cb1f2-335a-4595-8bdd-8379cbcee01b

to:<sip:4002@192.168.124.81>;tag=1251718929

contact:<sip:192.168.124.81:5060>

call-id:135801879-5062-259@192.168.124.118

cseq:35notify

event:dialog

subscription-state:terminated

allow-events:conference,presence,dialog,message-summary,call-completion,refer,called-info

max-forwards:70

user-agent:grandstreamucm6104v1.5a1.0.10.28

content-type:application/called-info+xml

content-length:690

<calledinfo>

<missedcalltimptamp=1441104393>

<callername>durant<./callername>

<callernum>4001</callernum>

<ringtime>35</ringtime>

</missedcall>

<missedcalltimptamp=1441104493>

<callername>duncan<./callername>

<callernum>4003</callernum>

<ringtime>21</ringtime>

</missedcall>

<answeredcalltimptamp=1441105434>

<callername>kobe<./callername>

<callernum>4024</callernum>

<talktime>180</talktime>

</answeredcall>

<answeredcalltimptamp=1441105844>

<callername>shark<./callername>

<callernum>4012</callernum>

<talktime>32</talktime>

</answeredcall>

</calledinfo>

步骤240:如果第二分机客户端没有收到服务端回复的先前来电信息,则会在一定时间后重新向服务器请求,具体超时时间可以设置,也可以不设置重发。分机客户端收到服务器端消息的处理和上述步骤130一致。

步骤250:服务器端自动清理来电消息。

服务器端对来电消息的处理与步骤140描述一致。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1