CN108076055B - 一种sip多方会话的强拆强插控制方法及装置 - Google Patents

一种sip多方会话的强拆强插控制方法及装置 Download PDF

Info

Publication number
CN108076055B
CN108076055B CN201711261546.2A CN201711261546A CN108076055B CN 108076055 B CN108076055 B CN 108076055B CN 201711261546 A CN201711261546 A CN 201711261546A CN 108076055 B CN108076055 B CN 108076055B
Authority
CN
China
Prior art keywords
user
call
priority
forced
queue
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.)
Active
Application number
CN201711261546.2A
Other languages
English (en)
Other versions
CN108076055A (zh
Inventor
双锴
李屹
徐鹏
苏森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201711261546.2A priority Critical patent/CN108076055B/zh
Publication of CN108076055A publication Critical patent/CN108076055A/zh
Application granted granted Critical
Publication of CN108076055B publication Critical patent/CN108076055B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1016IP multimedia subsystem [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明提供一种SIP多方会话的强拆强插控制方法及装置。所述方法包括:一种SIP多方会话的强拆强插控制方法,其特征在于,包括:第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。本发明解决了复杂的强拆、强插行为发生时,各个用户通话的接续处理及某些用户挂断后的恢复问题。

Description

一种SIP多方会话的强拆强插控制方法及装置
技术领域
本发明涉及IP多媒体子系统核心网基本服务技术领域,更具体地,涉及一种SIP多方会话的强拆强插控制方法及装置。
背景技术
下一代网络(Next Generation Network,NGN)是一个建立在IP技术基础上的新型公共电信网络。它是一个国家的信息基础设施的重要组成部分和信息通信的神经枢纽,承担着大范围内的公众电信业务。
IP多媒体子系统(IP Multimedia Subsystem,IMS)是NGN控制层的核心构架,是第三代移动通信伙伴组织(3rd Generation Partnership Project,3GPP)在Release 5版本标准中提出的支持IP多媒体业务的系统。IMS的特点是使用会话初始化协议(SessionInitiation Protocol,SIP)呼叫控制机制来创建、管理和终结各种类型的多媒体业务,实现了控制和承载的分离,支持开放的应用程序编程接口(Application ProgrammingInterface,API),基于IP分组网络,支持各类接入方式。
SIP(Session Initiation Protocol)是用来确保这种演进实现而需要的NGN(下一代网络)系列协议中重要的一员。SIP(Session Initiation Protocol)是一个应用层的信令控制协议。用于创建、修改和释放一个或多个参与者的会话。SIP对会话进行协商,以便所有参与方都能够就会话功能达成一致以及进行修改。它甚至可以添加、删除或转移用户。
IMS网络中SIP用户通过SIP服务器进行注册、呼叫请求等操作,通话建立后各个用户终端可以建立点对点的媒体流,也可以通过媒体服务器中继建立媒体流连接。复杂的SIP服务除了支持用户进行呼叫、接听、挂断外,还支持更多的通话场景,比如:
呼叫保持:用户A与用户B通话时,用户A选择呼叫保持,用户B进入保持等待状态,用户A可以发起新的呼叫。
保持恢复:用户A已有与用户B的通话处在呼叫保持中,且用户B在保持等待状态,用户A选择保持恢复,恢复与用户B的通话。
强拆:用户A与用户B在通话中,用户C呼叫用户A并选择强拆,用户B通话结束,用户A与用户C通话。
强插:用户A与用户B在通话中,用户C呼叫用户A并选择强插,用户B进入保持等待状态,用户A与用户C通话。用户C挂断后,用户A与用户B恢复通话。
然而,面向同一呼叫目标的多个强拆\强插请求,目前还没有一种有效的维持各路通话正常进行的控制方法。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的SIP多方会话的强拆强插控制方法及装置。
根据本发明的一个方面,提供一种SIP多方会话的强拆强插控制方法,包括:
S100,第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;
S200,根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;
S300,所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
根据本发明的另一个方面,还提供一种SIP多方会话的强拆强插控制装置,包括呼叫请求检测模块、优先通话模块和顺序通话模块;
所述呼叫请求检测模块,用于第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;
所述优先通话模块,用于根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;
所述顺序通话模块,用于所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
根据本发明的另一个方面,还提供一种电子设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行本发明实施例所述SIP多方会话的强拆强插控制方法及其任一可选实施例的方法。
根据本发明的另一个方面,提供一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行本发明实施例所述SIP多方会话的强拆强插控制方法及其任一可选实施例的方法。
本发明提出一种SIP多方会话的强拆强插控制方法,通过呼叫请求检测,当同一呼叫目标的具有多个强拆\强插请求时,根据优先级顺序,从最高优先级开始依次进行强拆\强插,从而有效管理多个用户间发生强拆强插时的通话接通、等待及某些用户挂断后相关用户通话的恢复,解决了解决复杂的强拆、强插行为发生时,各个用户通话的接续处理及某些用户挂断后的恢复问题。
附图说明
图1为本发明实施例一种SIP多方会话的强拆强插控制方法流程示意图;
图2为本发明实施例SIP多方会话的强拆强插控制方法示意图;
图3为本发明实施例信令服务器控制媒体服务器拆分、混合媒体流的时序示意图;
图4为本发明实施例一种电子设备的框架示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
IMS网络中特定系统的SIP用户具有优先级属性。用户A与用户B通话时,用户C希望呼叫用户A并且具有比用户B更高的优先级,可以选择强拆或强插入目标通话。强拆时,用户B直接结束通话;强插时,用户B进入保持等待状态,待用户C结束通话后,恢复用户B与用户A的通话。本发明实施例一种SIP多方会话的强拆强插控制方法可以有效处理面向同一呼叫目标的多个强拆\强插请求,以及多个用户级联的强拆\强插请求。
图1为本发明实施例一种SIP多方会话的强拆强插控制方法流程示意图,如图1所示的SIP多方会话的强拆强插控制方法,包括:
S100,第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;
步骤S100中,若检测到优先级低于所述第二用户的其他用户对所述第一用户的呼叫请求,则不处理。
S200,根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;
步骤S200中,若优先级最高的第三用户选择强拆指令,则对所述第一用户与第二用户的通话进行强拆;若优先级最高的第三用户选择强插指令,则对所述第一用户与第二用户的通话进行强插。
S300,所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
根据步骤S200中第三用户的选择,若选择强拆指令,则第二用户结束通话,第一用户依次与所有第三用户通话;若选择强插指令,则第二用户进入保持等待状态,第一用户依次与所有第三用户通话,所有第三用户通话完毕,恢复第一用户与第二用户的通话。
本实施例是面向同一呼叫目标的多个强拆\强插请求:用户A与用户B通话时,用户C、D、E……都向用户A发出呼叫请求,他们具有比用户B更高的优先级,并且有的选择强拆、有的选择强插,本机制能够让用户A与优先级最高的用户通话,该用户挂断后,再与优先级次高的用户通话,以此类推。
本发明实施例提出一种SIP多方会话的强拆强插控制方法,通过呼叫请求检测,当同一呼叫目标的具有多个强拆\强插请求时,根据优先级顺序,从最高优先级开始依次进行强拆\强插,从而有效管理多个用户间发生强拆强插时的通话接通、等待及某些用户挂断后相关用户通话的恢复,解决了解决复杂的强拆、强插行为发生时,各个用户通话的接续处理及某些用户挂断后的恢复问题。
在一个可选的实施例中,所述SIP多方会话的强拆强插控制方法还包括:
当前第三用户与所述第一用户通话过程中,若检测到比所述第一用户的优先级更高的第四用户向所述当前第三用户发送呼叫请求,根据所述第四用户的强拆或强插指令,对所述当前第三用户与第一用户的通话进行强拆或强插,以使所述第四用户与所述当前第三用户进行通话;或者
当前第三用户与所述第一用户通话过程中,若检测到比所述当前第三用户的优先级更高的第五用户向所述第一用户发送呼叫请求,根据所述第五用户的强拆或强插指令,对所述当前第三用户与第一用户的通话进行强拆或强插,以使所述第五用户与第一用户进行通话。
本实施例是多个用户级联的强拆\强插请求,在第一用户与任意第三用户通话过程,都可能发生对第一用户和任意第三用户的多个用户级联的强拆\强插请求,都可以通过本发明实施例来处理,即:面向同一呼叫目标的多个强拆\强插请求、多个用户的级联的强拆\强插请求没有顺序限制,可以叠加发生,即所有用户只要优先级足够,便可以随意进行呼叫的强拆、强插。呼叫期间,所有用户都可以进行呼叫保持、保持恢复、挂断等操作而不影响其余通话正常有序进行。
具体的,多个用户级联的强拆\强插请求可描述为:用户A与用户B通话时,用户C具有比用户B更高的优先级,希望呼叫用户A,选择强拆或强插入用户A的通话。此时用户A与用户C通话,又有用户D具有比用户A更高的优先级并且希望呼叫用户C,选择强拆或强插入用户C的通话,此时用户C与用户D通话,以此类推。
在一个可选的实施例中,所述SIP多方会话的强拆强插控制方法还包括:
通过信令服务器为每个用户的每个通话以及每个通话保持维护一个具有优先级的通话队列,每个用户的所有通话队列组成的一个哈希表,所述哈希表的键为所述用户的通话对象的用户名,所述哈希表的值为所述通话对象所在的通话队列;其中所述通话保持为呼叫保持中的通话。
具体的,一个用户可能同时有多个通话(一个在通话中,其他的在保持中),这些通话是互相独立的,该用户有一个哈希表来存储这些通话,键为通话对象的用户名,值为通话对象所在的队列。所有的键-值对(用户名-通话队列)组成哈希表,每个键的值只是一个队列,队列中存储该通话中被强插的其他用户。
用户同时存在的多个通话可以是互相独立的,即用户可以同时和不同的用户处于通话关系,一个正在通话,其余的保持,它们是不同的通话;而强插场景中的多个用户处于同一个通话中,只有优先级最高的可以和目标用户通话,其余用户等待,它们形成该次通话的通话队列。
所述具有优先级的通话队列为根据筛选策略重写pop、push、比较函数的优先队列;
所述筛选策略为:获取所述通话队列中处于呼叫等待状态且优先级高于所述通话队列中其他同状态用户的第一个通话对象。
本发明实施例所述筛选策略具体包括:检查通话队列获取第一个可用的通话对象,所述可用通话对象条件为:
1)处于呼叫等待状态。
2)优先级高于队列中其他同状态的用户
所述信令服务器维护通话队列后,每个用户与筛选出的通话对象通话,处于保持等待状态的用户听提示音,这个过程不再发生媒体协商,直接由信令服务器控制媒体服务器进行对应媒体流的拆分和混合。
基于上述实施例,所述信令服务器依据每个用户的优先级、用户的通话状态和用户行为更新所述用户的通话队列;
其中,所述通话状态包括空闲、呼叫中、呼叫保持和呼叫等待的任一种;所述用户行为包括选择强拆、选择强插、选择呼叫保持、选择保持恢复和选择挂断的任一种。
其中,所述呼叫保持为主动发起保持的用户所在状态,所述保持等待为被动接受保持的用户所在状态。
本发明实施例中用户的通话关系由信令服务器统一管理,信令服务器维护各个用户的通话队列,并完成某个用户挂断后相关用户的接续操作。信令服务器为每个用户维护通话队列,依据各个用户的优先级、用户的通话状态(空闲、呼叫中、呼叫保持、呼叫等待等)、用户的行为(选择强拆、选择强插、选择呼叫保持、选择保持恢复、选择挂断)等更新相关用户的通话队列,所述队列是一个优先级队列。
基于上述实施例,所述SIP多方会话的强拆强插控制方法还包括:
当前第三用户与所述第一用户通话过程中,若检测到比所述第一用户的优先级更低的第六用户向所述当前第三用户发送呼叫请求,则将所述第六用户放入所述第三用户的通话队列中按优先级顺序排队;或者
当前第三用户与所述第一用户通话过程中,若检测到比所述当前第三用户的优先级更低的第七用户向所述第一用户发送呼叫请求,则将所述第七用户放入所述第一用户的通话队列中按优先级顺序排队。
具体的,在任意第三用户与第一用户的通话过程中,可能检测到优先级更高或优先级更低的用户对当前第三用户呼叫请求,或者检测优先级更高或优先级更低的用户对第一用户的呼叫请求。对于优先级更高的用户的呼叫请求,根据前述实施例,可以进行强插或强拆;对于优先级更低的用户的呼叫请求,根据本实施例,可以将呼叫的用户放入对应的第三用户或第一用户的通话队列中进行优先级排序,等待通话,也是一种多用户级联的通话状态。
在一个可选的实施例中,各用户终端之间,通过信令服务器进行媒体协商,建立媒体服务器与通话终端的媒体流连接;并通过信令服务器控制所述媒体服务器混合媒体流,以实现用户终端之间的中继通话。
本发明实施例中用户之间的通话由媒体服务器进行中继,信令服务器控制媒体服务器进行各路通话的管理。
在一个可选的实施例中,所述媒体协商的请求事务为SIP标准协议的定义事务,包括请求和应答;
所述请求是指SDP协议的offer,在SIP协议的INVITE请求中携带;所述应答指SDP协议的answer,在SIP协议的特定响应中携带。
本发明实施例所述SDP是一种会话描述格式。所述SIP协议的特定响应可以是SIP协议的200OK响应或180Ringing可靠响应。
本发明上述实施例根据SIP,SDP及RFC 5359进行相关处理。所述用户指用户终端,即用户终端设备,是指具备接入IMS网络能力的设备。所述通话包括:语音和/或视频。
下面通过一个具体实施例来说明本发明实施例所述SIP多方会话的强拆强插控制方法。
当用户C呼叫正在与用户B通话的用户A时,如果用户C符合强拆强插条件,按照本发明实施例多方会话的强拆强插控制方法处理,由用户C选择发起强拆或强插流程;如果不符合条件,按照标准协议进行处理。所述条件为用户C具有比用户B更高的优先级。
图2为本发明实施例SIP多方会话的强拆强插控制方法示意图,图3为本发明实施例信令服务器控制媒体服务器拆分、混合媒体流的原理示意图,请参考图2和图3,所述强拆强插控制方法具体如下:
信令服务器为每个用户的每次通话维护一个通话队列,单个用户的所有通话队列成组linkUser,结构为HashMap<String,PriorityQueue<SipUser>>,其键为当前通话对象的用户名,值为当前通话的相关用户的组成的通话队列,是一个优先级队列。
初始时,用户A关于用户B有通话队列A.linkUser[B]=Q_A,用户B关于用户A有通话队列B.linkUser[A]=Q_B。
(1)当上述用户C选择强拆时:
1)对用户C,产生通话队列C.linkUser[A]=Q_C,由于C是新呼叫,Q_C中没有其他用户;
2)对用户A,其关于用户B的通话队列转换为关于C的通话队列,即A.linkUser[C]=Q_A,A.linkUser.remove(B);
3)对用户B,如果Q_B中没有其他用户,结束通话。否则选择Q_B中符合筛选策略的用户D,将用户B关于用户A的通话队列转换为关于用户D的通话队列,即B.linkUser[D]=Q_B1,B.linkUser.remove(A),其中Q_B1为Q_B移除用户D后的优先级队列。
(2)当上述用户C选择强插时:
1)对用户C,产生通话队列C.linkUser[A]=Q_C,由于C是新呼叫,Q_C中没有其他用户;
2)对用户A,其关于用户B的通话队列转换为关于C的通话队列,用户B成为用户A的等待用户,加入A的呼叫队列Q_A产生新的队列Q_A1,即A.linkUser[C]=Q_A1,A.linkUser.remove(B);
3)对用户B,如果Q_B中没有保持等待的用户,B处在呼叫保持状态。否则选择Q_B中符合筛选策略的用户D,将用户B关于用户A的通话队列转换为关于用户D的通话队列,即B.linkUser[D]=Q_B2,B.linkUser.remove(A),其中Q_B2为Q_B移除用户D、加入用户A后的优先级队列。
(3)当某个用户,不妨称为用户E选择呼叫保持时:用户E的当前通话对象用户F进入保持等待状态,听系统提示音。用户F加入E的呼叫队列,即E.linkUser[F].push(F)。
(4)当上述用户E选择保持恢复时:从用户E的通话队列选出符合筛选策略的用户G恢复通话
1)如果用户G即为用户F,将F移除呼叫队列,即E.linkUser[F].pop(F)。
2)如果用户G不为用户F,将E关于F的呼叫队列转换为E关于G的呼叫队列,即E.linkUser[G]=E.linkUser[F],E.linkUser[G].pop(G),E.linkUser.remove(F)。
3)如果没有符合筛选策略的用户,用户E听提示音,处于保持等待状态,并将F移除呼叫队列,即E.linkUser[F].pop(F)。
(5)当某个用户,不妨称为用户E选择挂机时:将E从本次通话队列的其余用户的通话队列中移除,其余通话对象检查各自的通话队列,如果有符合筛选策略的用户,恢复与该用户的通话。
下面通过另一个具体实施例来说明本发明实施例所述SIP多方会话的强拆强插控制方法应对多方用户复杂的强拆、强插场景的通话管理策略。
信令服务器维护和管理所有SIP终端用户的状态,SIP终端用户通过SIP协议与信令服务器交互,用户终端的媒体连接通过媒体服务器中继实现,具体步骤为:
(1)基本呼叫场景:用户A呼叫用户B时,用户A向信令服务器发送INVITE消息。信令服务器向用户A发送带有媒体服务器SDP的200OK消息,在用户A与媒体服务器之间建立媒体连接,并构造带有媒体服务器SDP的INVITE请求给用户B,用户B返回200OK消息后,用户B与媒体服务器建立媒体连接。最后信令服务器控制媒体服务器混合两路媒体流,使得用户A与用户B可以通话。
(2)简单的强拆场景:用户A与用户B正在通话,用户C向信令服务器发送INVITE请求希望呼叫用户A,信令服务器检查用户C具有比用户B更高的优先级,向用户C发送带有媒体服务器SDP的200OK消息并播放提示音询问用户C强拆还是强插,用户C按下拨号键1通过INFO消息选择强拆,用户B结束与用户A的通话,信令服务器控制媒体服务器混合用户C、用户A与媒体服务器的媒体连接,使得用户A与用户C通过媒体服务器中继通话。
(3)简单的强插场景:用户A与用户B正在通话,用户C向信令服务器发送INVITE请求希望呼叫用户A,信令服务器检查用户C具有比用户B更高的优先级,向用户C发送带有媒体服务器SDP的200OK消息并播放提示音询问用户C强拆还是强插,用户C按下拨号键2通过INFO消息选择强插,用户B进入保持等待状态。信令服务器控制媒体服务器混合用户C、用户A与媒体服务器的媒体连接,使得用户A与用户C通过媒体服务器中继通话。信令服务器控制媒体服务器播放提示音给用户B。用户C挂断后,信令服务器控制媒体服务器混合用户B、用户A与媒体服务器的媒体连接,使得用户A与用户B通过媒体服务器中继通话。
(4)复杂的强拆强插场景由多个简单的强拆、强插场景叠加,多个用户互相之间可能发生强拆、强插、呼叫保持、挂机等行为。
结合图2,具体实施方式如下:
步骤1:用户A呼叫用户B,信令服务器为各个用户维护通话队列组,并控制媒体服务器完成媒体协商,使用户A与用户B通过媒体服务器中继建立媒体连接。
步骤2:用户C呼叫用户A,信令服务器发现用户A正在与用户B通话,应用本发明SIP多方会话的强拆强插恢复机制。
步骤3.a:根据本机制,用户C如果不具有高于用户B的优先级,按标准协议处理。
步骤3.b:根据本机制,用户C具有更高优先级,按照用户C选择的强拆或强插行为及本机制的逻辑,信令服务器维护各个用户的通话队列,并控制媒体服务器进行相应的媒体流拆分、混合。
步骤4:当有用户选择挂机时,按照本机制逻辑,信令服务器维护各个用户的通话队列,并控制媒体服务器进行相应的媒体流拆分、混合。
具体队列维护方式及媒体流拆分、混合方式如图3所示。
本发明提出一种SIP多方会话的强拆强插控制方法,通过呼叫请求检测,当同一呼叫目标的具有多个强拆\强插请求时,根据优先级顺序,从最高优先级开始依次进行强拆\强插,从而有效管理多个用户间发生强拆强插时的通话接通、等待及某些用户挂断后相关用户通话的恢复,解决了复杂的强拆、强插行为发生时,各个用户通话的接续处理及某些用户挂断后的恢复问题。本发明技术方案能够有效处理复杂以及级联的强拆、强插行为,及复杂强拆、强插场景中呼叫保持、保持恢复、挂断等行为,保证各路通话合理有序进行。
本发明实施例还提供一种SIP多方会话的强拆强插控制装置,包括呼叫请求检测模块、优先通话模块和顺序通话模块;
所述呼叫请求检测模块,用于第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;
所述优先通话模块,用于根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;
所述顺序通话模块,用于所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
本发明实施例的装置,可用于执行图1所示的SIP多方会话的强拆强插控制换方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图4示出了本发明实施例电子设备的框架示意图。
参照图4,所述电子设备,包括:处理器(processor)601、存储器(memory)602和总线603;
其中,所述处理器601和存储器602通过所述总线603完成相互间的通信;
所述处理器601用于调用所述存储器602中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:S100,第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;S200,根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;S300,所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
本发明另一实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:S100,第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;S200,根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;S300,所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
本发明另一实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:S100,第一用户与第二用户通话过程中,检测到至少一个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;S200,根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;S300,所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
本领域普通技术人员可以理解:实现上述设备实施例或方法实施例仅仅是示意性的,其中所述处理器和所述存储器可以是物理上分离的部件也可以不是物理上分离的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种SIP多方会话的强拆强插控制方法,其特征在于,包括:
S100,第一用户与第二用户通话过程中,检测到多个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;
S200,根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;
S300,所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当前第三用户与所述第一用户通话过程中,若检测到比所述第一用户的优先级更高的第四用户向所述当前第三用户发送呼叫请求,根据所述第四用户的强拆或强插指令,对所述当前第三用户与第一用户的通话进行强拆或强插,以使所述第四用户与所述当前第三用户进行通话;或者
当前第三用户与所述第一用户通话过程中,若检测到比所述当前第三用户的优先级更高的第五用户向所述第一用户发送呼叫请求,根据所述第五用户的强拆或强插指令,对所述当前第三用户与第一用户的通话进行强拆或强插,以使所述第五用户与第一用户进行通话。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
通过信令服务器为每个用户的每个通话以及每个通话保持维护一个具有优先级的通话队列,每个用户的所有通话队列组成一个哈希表,所述哈希表的键为所述用户的通话对象的用户名,所述哈希表的值为所述通话对象所在的通话队列;其中所述通话保持为呼叫保持中的通话;
所述具有优先级的通话队列为根据筛选策略重写pop、push、比较函数的优先队列;
所述筛选策略为:获取所述通话队列中处于呼叫等待状态且优先级高于所述通话队列中其他同状态用户的第一个通话对象。
4.根据权利要求3所述的方法,其特征在于,所述信令服务器依据每个用户的优先级、用户的通话状态和用户行为更新所述用户的通话队列;
其中,所述通话状态包括空闲、呼叫中、呼叫保持和呼叫等待的任一种;所述用户行为包括选择强拆、选择强插、选择呼叫保持、选择保持恢复和选择挂断的任一种。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当前第三用户与所述第一用户通话过程中,若检测到比所述第一用户的优先级更低的第六用户向所述当前第三用户发送呼叫请求,则将所述第六用户放入所述第三用户的通话队列中按优先级顺序排队;或者
当前第三用户与所述第一用户通话过程中,若检测到比所述当前第三用户的优先级更低的第七用户向所述第一用户发送呼叫请求,则将所述第七用户放入所述第一用户的通话队列中按优先级顺序排队。
6.根据权利要求1-5任一项所述的方法,其特征在于,各用户终端之间,通过信令服务器进行媒体协商,建立媒体服务器与通话终端的媒体流连接;并通过信令服务器控制所述媒体服务器混合媒体流,以实现用户终端之间的中继通话。
7.根据权利要求6所述的方法,其特征在于,所述媒体协商的请求事务为SIP标准协议的定义事务,包括请求和应答;
所述请求是指SDP协议的offer,在SIP协议的INVITE请求中携带;所述应答指SDP协议的answer,在SIP协议的特定响应中携带。
8.一种SIP多方会话的强拆强插控制装置,其特征在于,包括呼叫请求检测模块、优先通话模块和顺序通话模块;
所述呼叫请求检测模块,用于第一用户与第二用户通话过程中,检测到多个第三用户向所述第一用户发送呼叫请求,所述第三用户的优先级高于所述第二用户;
所述优先通话模块,用于根据优先级最高的第三用户的强拆或强插指令,对所述第一用户与第二用户的通话进行强拆或强插,以使所述优先级最高的第三用户与所述第一用户进行通话;
所述顺序通话模块,用于所述优先级最高的第三用户挂断后,按照剩余第三用户的优先级从高到低的顺序,依次使每个剩余第三用户与所述第一用户进行通话。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至7任一所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至7任一所述的方法。
CN201711261546.2A 2017-12-04 2017-12-04 一种sip多方会话的强拆强插控制方法及装置 Active CN108076055B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711261546.2A CN108076055B (zh) 2017-12-04 2017-12-04 一种sip多方会话的强拆强插控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711261546.2A CN108076055B (zh) 2017-12-04 2017-12-04 一种sip多方会话的强拆强插控制方法及装置

Publications (2)

Publication Number Publication Date
CN108076055A CN108076055A (zh) 2018-05-25
CN108076055B true CN108076055B (zh) 2020-06-30

Family

ID=62157614

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711261546.2A Active CN108076055B (zh) 2017-12-04 2017-12-04 一种sip多方会话的强拆强插控制方法及装置

Country Status (1)

Country Link
CN (1) CN108076055B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112291442B (zh) * 2020-10-29 2021-10-08 迈普通信技术股份有限公司 电话通话处理方法、装置、电子设备及存储介质
CN112968998A (zh) * 2021-02-10 2021-06-15 联想(北京)有限公司 通信处理方法和电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1809099A (zh) * 2006-02-13 2006-07-26 迈普(四川)通信技术有限公司 一种基于号码优先级强拆呼叫的方法和系统
CN101060645A (zh) * 2007-04-10 2007-10-24 华为技术有限公司 一种通信方法、设备及系统
CN101730031A (zh) * 2009-11-25 2010-06-09 中兴通讯股份有限公司 下一代通讯网络实现强插呼叫的设备和方法
WO2010076993A2 (en) * 2009-01-02 2010-07-08 Lg Electronics Inc. Method of trasmitting signlas from a user equipment by harq scheme in releasing sps radio resource and user equipment for the same
CN103167453A (zh) * 2013-01-28 2013-06-19 青岛朗讯科技通讯设备有限公司 一种强插呼叫业务的实现方法
CN103929409A (zh) * 2013-01-15 2014-07-16 深圳市中航比特通讯技术有限公司 一种基于软交换的sip用户强插业务实现方法
CN105491049A (zh) * 2015-12-11 2016-04-13 中国人民解放军国防信息学院 基于sip的呼叫增强控制方法
CN105722046A (zh) * 2016-04-08 2016-06-29 重庆邮电大学 一种td-lte应急通信系统强插/强拆业务的实现方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1809099A (zh) * 2006-02-13 2006-07-26 迈普(四川)通信技术有限公司 一种基于号码优先级强拆呼叫的方法和系统
CN101060645A (zh) * 2007-04-10 2007-10-24 华为技术有限公司 一种通信方法、设备及系统
WO2010076993A2 (en) * 2009-01-02 2010-07-08 Lg Electronics Inc. Method of trasmitting signlas from a user equipment by harq scheme in releasing sps radio resource and user equipment for the same
CN101730031A (zh) * 2009-11-25 2010-06-09 中兴通讯股份有限公司 下一代通讯网络实现强插呼叫的设备和方法
CN103929409A (zh) * 2013-01-15 2014-07-16 深圳市中航比特通讯技术有限公司 一种基于软交换的sip用户强插业务实现方法
CN103167453A (zh) * 2013-01-28 2013-06-19 青岛朗讯科技通讯设备有限公司 一种强插呼叫业务的实现方法
CN105491049A (zh) * 2015-12-11 2016-04-13 中国人民解放军国防信息学院 基于sip的呼叫增强控制方法
CN105722046A (zh) * 2016-04-08 2016-06-29 重庆邮电大学 一种td-lte应急通信系统强插/强拆业务的实现方法

Also Published As

Publication number Publication date
CN108076055A (zh) 2018-05-25

Similar Documents

Publication Publication Date Title
JP2009246994A (ja) セッション設定プロトコル基盤のアーリーメディアサービス提供方法、及びセッション設定プロトコル基盤のアーリーメディアサービス提供応用サーバ
US10320972B2 (en) Enhanced session initiation protocol recording
WO2008116408A1 (fr) Système, équipement et procédé de mise en œuvre de services d'appel spéciaux
KR20070039108A (ko) 하이브리드 전기 통신 네트워크에서 세션 제어를 위한 방법및 장치
CN103716299B (zh) 一种基于sip进行会话的方法、终端及呼叫业务服务器
EP2381617A1 (en) A method for calling a conference when hard terminals have been bound to pc clients, a login server thereof, a conference server thereof and a pc client thereof
CN108076055B (zh) 一种sip多方会话的强拆强插控制方法及装置
US9071690B2 (en) Call transfer processing in SIP mode
CN100550884C (zh) 基于重试机制的业务过程中对sip协议请求的处理方法
CN104756447A (zh) 一种录制会话信息的方法和录制服务器
US8213373B2 (en) Supporting method for REFER message expansion parameter
US20070047699A1 (en) Separation of session and session control
CN101877708A (zh) 一种ims网络中实现多媒体会议的方法和系统
WO2008000157A1 (fr) Procédé et dispositif assurant une fonction d'appel parallèle d'un appel multimédia
US8483206B2 (en) Method and system for providing a multimedia call model
CN105991239A (zh) 一种ims系统中的信令处理方法、装置和相关设备
CN111212192B (zh) Ims固话用户拨打volte用户的放音方法、装置和存储介质
US8559613B2 (en) Method and system for performing communication transfer service for access gateway control function user
EP3136756A1 (en) System, device and method for implementing ring back tone service
CN108337244B (zh) 一种基于sip协议的对讲通信方法、服务器、介质及设备
JP2005020676A (ja) 電話通信方法及び装置
CN107360116B (zh) Ims多方会话的分离方法及装置
JP6348875B2 (ja) 中継装置、呼制御システム、呼制御方法、および、呼制御プログラム
US8984148B2 (en) Method and apparatus for signaling post-ring reservations
KR100564644B1 (ko) 교환기에서 호 보류 서비스를 제공하기 위한 방법 및 그교환기 시스템

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant