具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
为便于描述,先简要说明本发明实施例中,为实现家庭网络内部电话业务的共享,所涉及的三种设备:TCP(Telephony Control Point,电话控制点)、TC(Telephony Client,电话客户端)和TS(Telephony Server,电话服务器)。其中,TS为能够为家庭网络中其他设备提供电话功能的设备,如手机;TC为能够从家庭网络中的TS上接收并呈现媒体/数据,和/或能够为TS提供媒体/数据的设备,如TV;TCP用于控制家庭网络中TS和TC以实现家庭网络内的电话业务共享。现有技术所述两UPnP设备之间媒体会话参数的协商,即是指此处电话服务器与电话客户端之间媒体会话参数的协商。
为实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商,如图1所示,本发明实施例中提供如下媒体协商方法,该方法可以包括:
步骤101、接收电话服务器TS发来的第一媒体描述,所述第一媒体描述包括TS LAN(Local Area Network,局域网)侧的媒体会话参数;
步骤102、将所述第一媒体描述转发给电话客户端TC;
步骤103、接收TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;
步骤104、将所述第二媒体描述转发给TS。
由图1所示流程可以得知,本发明实施例中,接收电话服务器TS发来的第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;将所述第一媒体描述转发给电话客户端TC;接收TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;将所述第二媒体描述转发给TS,从而实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商,本实施例工作效率高,设备实现的复杂性低。
图1所示流程可由TCP实施,当然也可由能够实现其功能的设备进行实施,本发明实施例中以TCP为例进行说明。
为实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商,如图2所示,本发明实施例中还提供如下媒体协商方法,该方法可以包括:
步骤201、向电话控制点TCP发送第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;
步骤202、接收TCP转发的TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数。
由图2所示流程可以得知,本发明实施例中,向电话控制点TCP发送第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;接收TCP转发的TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数,从而实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商,本实施例工作效率高,设备实现的复杂性低。
图2所示流程可由TS实施,当然也可由能够实现其功能的设备进行实施,本发明实施例中以TS为例进行说明。
为实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商,如图3所示,本发明实施例中还提供如下媒体协商方法,该方法可以包括:
步骤301、接收TCP转发的TS的第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;
步骤302、根据所述第一媒体描述生成第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;
步骤303、向TCP发送所述第二媒体描述,以使所述TCP向所述TS发送所述第二媒体描述。
由图3所示流程可以得知,本发明实施例中,接收TCP转发的TS的第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;根据所述第一媒体描述生成第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;向TCP发送所述第二媒体描述,以使所述TCP向所述TS发送所述第二媒体描述,从而实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商,本实施例工作效率高,设备实现的复杂性低。
图3所示流程可由TC实施,当然也可由能够实现其功能的设备进行实施,本发明实施例中以TC为例进行说明。
另外,实施中描述媒体会话参数可以使用SDP协议,也可以使用其他描述方式,后续实施例中以使用SDP协议描述媒体会话参数为例进行说明。
实施例一
如前所述,本发明实施例中,TCP作为TS/TC之间媒体协商的中介,获取TS的第一媒体描述,记为SDP#1;将第一媒体描述发送给TC,用于TC根据第一媒体描述生成自己的第二媒体描述,记为SDP#2;TCP再将TC的第二媒体描述发送给TS,这样TS、TC双方都获得了对方的媒体描述,可以直接开始媒体会话(如RTP会话)。
本发明实施例满足了rfc3264所定义的SDP Offer/Answer Model:SDP#1相当于来自第一方(TS)的Offer,SDP#2相当于第二方(TC)根据Offer产生的Answer;只是在这里TCP充当了双方信息交互的中间人,解决了TS/TC之间无法通过UPnP协议直接相互访问的问题,并且简化了TS/TC之间协商的流程,不需要再进行媒体参数的交互。
需要指明的是,本发明所述的媒体描述具体可以为按照SDP规范的语法对媒体参数/能力进行描述并封装为XML(Extensible Markup Language,可扩展标记语言)格式的状态变量(State Variable,SV)或控制命令中参数的一部分内容。
可选的,第一媒体描述还可以包括TS WAN(Wide Area Network,广域网)侧的媒体会话信息;具体实施时,TS WAN侧的媒体会话信息,可以包括TS在WAN侧使用的媒体编码;TS LAN侧的媒体会话参数,可以包括:TS在LAN侧的接收媒体地址、接收媒体端口和使用的媒体编码之一或任意组合。
媒体描述SDP#1具体内容例如:
v=0
o=-0 0IN IP4 192.168.1.10
s=
c=IN IP4 192.168.1.10/127
t=0 0
a=sendrecv
m=audio1234RTP/AVP0
a=rtpmap:0PCMU/8000
m=video2345RTP/AVP96
b=AS:48
a=rtpmap:96MP4V-ES/90000
其中,“c=”表示该SDP提供者能够被联系到的IP地址,通常是接收媒体流地址。“m=”提供了该设备支持的或希望使用的媒体格式(音/视频、接收端口、编码)。对于对端来说,获取该设备所提供的媒体信息、连接地址/端口等信息对于后续开始媒体会话十分重要。
因此,TC根据所述第一媒体描述生成的第二媒体描述,可以包括:
根据所述第一媒体描述中的媒体格式信息、地址信息和端口信息之一或任意组合,生成第二媒体描述。
下面举例说明TCP作为TS/TC之间媒体参数协商中介流程,用以说明本发明实施例中实现SDP Offer/Answer Model的过程。如图4所示,本例中媒体协商方法流程可以包括:
步骤401、TS(如手机、固定电话、VoIP网关等设备)已经与WAN侧的通信对端完成了呼叫建立(如完成了从SIP(Session Initiation Protocol,会话发起协议)Invite到SIP ACK的交互过程);
步骤402、TS将WAN侧建立通信的描述转换为LAN(Local Area Network,局域网)侧应该使用的描述,即SDP#1;
本步骤中,TS将用于WAN侧的媒体参数描述转换为希望在LAN侧建立的媒体会话的参数描述。例如,通过SDP进行描述时,WAN侧的媒体描述可能为SDP#0,其中可以描述了该TS设备的WAN IP地址,以及已经与对端建立的多媒体通信包含音频及视频以及接收它们的端口。此时,TS可能希望在LAN侧与TC建立的会话包含以上所有媒体,只是需要指定与TC进行媒体会话的地址/端口等信息。
TS将WAN侧的SDP转换为LAN侧的SDP#1,本例中,TS希望与TC的通信中包含与WAN通信的所有媒体,因而只将通信地址/端口转换为LAN侧的地址/端口。
步骤403、TS将SDP#1提供给TCP;
TS将SDP#1提供给TCP的方式可以有多种,例如:
A、通过事件将SDP#1发送给TCP,事件可以通过GENA(General EventNotification Architecture,通用事件通知架构)协议发送。
B、通过定义UPnP控制命令(action),TCP调用该action,TS将SDP#1在响应中返回给TCP。例如,定义GetMediaDescription()action,TCP通过该action指示需要获取TS希望在LAN侧建立的媒体通信参数描述,TS将在响应消息中协议包含SDP#1的参数。
步骤404、TCP将来自TS的媒体描述SDP#1(相当于SDP Offer)提供给TC,TC根据该信息向TCP返回TC将使用的媒体参数的描述SDP#2(相当于SDP Answer)。
例如,TC根据前面的SDP#1的例子,结合自己的能力返回的SDP#2可能如下:
v=0
o=-0 0IN IP4 192.168.0.35
s=
c=IN IP4 192.168.0.35/127
t=0 0
m=audio2324RTP/AVP0
a=rtpmap:0PCMU/8000
m=video3435RTP/AVP96
b=AS:48
a=rtpmap:96MP4V-ES/90000
步骤405、TCP将来自TC的媒体描述SDP#2发送给TS,TS将得知TC的信息,后续便可以根据双方的媒体参数信息开始媒体会话。
步骤406、TS/TC之间根据以上的媒体参数开始媒体会话,媒体会话可以采用RTP、HTTP、TCP(Transport Control Protocol,传输控制协议)、UDP等协议。
本实施例中,TC对于TS提供的所有媒体格式都支持,因而返回的SDP#2提供了TC的接收媒体流的地址/端口,媒体格式描述方面与SDP#1基本相同。而实施中,很可能存在TC并不支持SDP#1中的所有内容,例如,不支持Video MP4V-ES格式,处理方法可参见后续实施例。
实施例二
本实施例对实施例一的细化主要在于:TCP不仅仅作为中介,而且根据双方的媒体能力对媒体参数选择进行必要的修改,以便一轮Offer/Answer交互就足以确定双方最终使用的媒体会话参数。实施中描述媒体能力可以使用SDP协议,也可以使用其他描述方式,后续实施例中以使用SDP协议描述媒体能力为例进行说明。
实施例二(A)
本实施例中,TCP根据TC/TS各自能力,对SDP#1进行了修改,删除TC不支持的内容后提供给TC(SDP#1'),这样TC可以完全接受里面所提供的媒体格式;TCP再将SDP#1'发送给TS,指示这是TS应该采用的最终媒体描述。
本实施例中,TCP、TS、TC分别实施如下:
TCP获取TC的媒体能力并根据TC的媒体能力对所述第一媒体描述进行修改;将修改后的所述第一媒体描述转发给TC;接收TC根据修改后的所述第一媒体描述生成的第二媒体描述;还包括:将修改后的所述第一媒体描述转发给TS。
TS接收修改后的所述第一媒体描述、以及TC根据修改后的所述第一媒体描述生成的第二媒体描述;所述修改后的所述第一媒体描述由TCP根据TC的媒体能力修改所述第一媒体描述获得。
TC在接收所述第一媒体描述之前,向TCP提供TC的媒体能力;后续接收TCP在接收到TS发来的第一媒体描述后,根据TC的媒体能力修改后的所述第一媒体描述;根据修改后的所述第一媒体描述生成第二媒体描述。
如图5所示,本实施例具体流程可以包括:
步骤501、TCP提前获知TC所支持的媒体能力(当然也可以获取TS的媒体能力),该步骤可独立于WAN侧通信的建立,即可以在TS与WAN侧设备建立呼叫前就确定,或者获取到TS与WAN侧设备通信参数协商过程中,或完成后(例如通过SIP协议进行协商)通信已经建立之后再获取能力。
1)TCP获取TC支持的媒体能力(MediaCapability)具体可以通过UPnPaction,例如定义GetMediaCapability()action,TC将在命令响应消息中向TCP提供该设备支持的媒体能力。
2)媒体能力的描述可以包含如下的信息,也可以使用其他格式。TC支持的所有媒体能力可以如下所示(MediaCapability#2):
m=audio0RTP/AVP0 1
a=rtpmap:0PCMU/8000
a=rtpmap:1 1016/8000
m=video0RTP/AVP31
a=rtpmap:31H261/90000
步骤502、TS(如手机、固定电话、VoIP网关等设备)已经与WAN侧的通信对端完成了呼叫建立(如完成了从SIP Invite到SIP ACK的交互过程);
步骤503、TS将WAN侧建立通信的描述转换为LAN(Local Area Network,局域网)侧应该使用的描述,即SDP#1;
步骤504、TS将第一媒体描述提供给TCP;
步骤505、TCP在获取到来自TS的媒体描述SDP#1后,结合之前获取的TC支持的媒体能力(也可以可选地参考TS支持的能力),确定应该给TC发送的TS的媒体描述SDP#1';
1)来自TS的媒体描述SDP#1可能为如下所示:
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
m=video4567RTP/AVP34
a=rtpmap:34H263/90000
其中,TS将在WAN侧使用H.263编码格式的视频流,TCP可以根据TC的能力确定TC是不支持该媒体格式的。在本实施例中,TCP根据以上判断确定TC与TS之间无法传输H.263流,因而选择只在它们之前传输PCMU语音流。
2)根据以上判断,TCP确定了应该发送给TC的修改后的TS的媒体描述SDP#1'为如下所示。这里,SDP#1'相当于SDP Offer,且这个Offer应被TC接受,而且是TS应该使用的最终版本。
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
3)TCP向TC发送TS媒体描述可以通过UPnP action(例如StartMediaSession()),在该命令请求消息中携带SDP#1',TC将接受该“Offer”并返回响应消息,其中携带SDP#2“Answer”。此外,TCP在StartMediaSession()请求消息中也可以携带其他信息,例如TS原始的描述SDP#1;TC也可以在其响应消息中携带MediaSessionID(唯一地标识将与TS进行的媒体会话)。
步骤506、TCP向TC发送SDP#1';接收TC根据SDP#1生成的SDP#2;
步骤507、TCP在向TS发送来自TC的SDP#2的同时,还要为其提供SDP#1',因为SDP#1'将是TS与TC通信时TS端应使用的媒体参数。TS将使用SDP#1'替代SDP#1作为与TC通信的媒体参数的最终版本;
1)具体地,TCP可以通过UPnP action(例如StartMediaTransfer()),在该命令请求消息中携带SDP#1'以及SDP#2,TS将接受二者并准备与TC建立媒体会话。此外,在该请求消息中,TCP也可以携带来自TC的MediaSessionID,和/或TS产生的用于唯一标识与WAN通信的CallID(该CallID可以在TS与WAN侧设备通信开始时由TS产生并通过事件方式提供给TCP);
步骤508、TS/TC之间根据以上的媒体参数开始媒体会话,媒体会话可以采用RTP、HTTP、TCP、UDP等协议。
实施例二(B)
本实施例中,TCP通过比对TC/TS的能力,得知TC不支持其中媒体格式例如H.263,但TC/TS都支持H.261;因而TCP将SDP#1中的与H.263相关内容转换为H.261相关内容(SDP#1'),并发送给TC,TC接受并返回SDP#2;TCP将SDP#1'以及SDP#2发送给TS,指示TS将与TC建立的媒体会话将采用H.261编码格式,但TS需要执行转码功能:将来自WAN侧的H.263编码格式的媒体流转换为H.261编码格式并发送给TC,将来自TC的H.261编码格式的媒体流转换为H.263并发送给WAN侧通信对端。本实施例中,TCP、TS、TC分别实施如下:
TCP获取TC、TS的媒体能力并根据TC、TS的媒体能力对所述第一媒体描述进行修改;将修改后的所述第一媒体描述转发给TC;接收TC根据修改后的所述第一媒体描述生成的第二媒体描述;还包括:将修改后的所述第一媒体描述转发给TS。
TS接收修改后的所述第一媒体描述、以及TC根据修改后的所述第一媒体描述生成的第二媒体描述;所述修改后的所述第一媒体描述由TCP根据TC、TS的媒体能力修改所述第一媒体描述获得。
TC在接收所述第一媒体描述之前,向TCP提供TC的媒体能力;后续接收TCP在接收到TS发来的第一媒体描述后,根据TC、TS的媒体能力修改后的所述第一媒体描述;根据修改后的所述第一媒体描述生成第二媒体描述。
本例中具体流程如图6所示,与实施例二(A)所提供的步骤的主要区别是:TS与TC媒体格式不同时,TS将采用转码技术解决这个问题。图6中处理流程可以包括:
步骤601a-601b、TCP要事先获取TS/TC各自的媒体能力。例如,
A.TC的媒体能力为MediaCapability#2(MC#2):
m=audio0RTP/AVP0 1
a=rtpmap:0PCMU/8000
a=rtpmap:1 1016/8000
m=video0RTP/AVP31
a=rtpmap:31H261/90000
B.TS的媒体能力为MediaCapability#1(MC#1):
m=audio0RTP/AVP0 1 3
a=rtpmap:0PCMU/8000
a=rtpmap:1 1016/8000
a=rtpmap:3GSM/8000
m=video0RTP/AVP31 34
a=rtpmap:31H261/90000
a=rtpmap:34H263/90000
可知,TC相对于TS的媒体能力:音频不支持GSM,视频不支持H.263编码。
步骤602、TS(如手机、固定电话、VoIP网关等设备)已经与WAN侧的通信对端完成了呼叫建立(如完成了从SIP Invite到SIP ACK的交互过程);
步骤603、TS将WAN侧建立通信的描述转换为LAN(Local Area Network,局域网)侧应该使用的描述,即SDP#1;
步骤604、TS将第一媒体描述提供给TCP;
步骤605、TCP收到来自TS的SDP#1后,将根据MC#1/MC#2/SDP#1确定应该给TC提供怎样的TS的媒体描述(SDP#1')。
1)例如来自TS的SDP#1为(WAN侧编码:音频PCMU,视频H.263):
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
m=video4567RTP/AVP34
a=rtpmap:34H263/90000
2)通过之前获取的MC#1/MC#2并结合SDP#1分析,TCP可知可以在TS/TC之间建立H.261流,这样可以不丢弃视频数据。但是,要求TS要做转码工作。据此,TCP确定提供给TC的最终TS的媒体描述SDP#1'应该为,例如:
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
m=video4567RTP/AVP31
a=rtpmap:31H261/90000
步骤606、TCP向TC发送SDP#1';接收TC根据SDP#1生成的SDP#2;本例中,由于TC支持H.261,因而会接受SDP#1'并返回SDP#2作为自己的媒体参数描述;
步骤607、TCP向TS提供SDP#2以及修改后的SDP#1';
步骤608、TS/TC之间根据以上的媒体参数开始媒体会话,媒体会话可以采用RTP、HTTP、TCP、UDP等协议;对于TS来说,在本实施例中,通过收到的SDP#1'与SDP#1对比得知视频编码被TCP做了替换,因而该设备的行为应该是:后续将来自WAN侧的H.263视频流转码为H.261视频流并发送给TC;将来自TC的H.261视频流转码为H.263并发送给WAN侧的通信对端。
在本发明的一个实施例中,TS在提供SDP#1时,还可以提供TS支持的转码信息,如WAN侧使用的编码为H.263,TS提供的转码信息可以包括H.261,H.264等等,所述转码信息还可包括欲使用的端口等信息。TCP可以根据TS提供的转码信息,以及TC的能力(例如TC可能不支持H.263),在TS提供的转码信息中选择一种TC可以支持的编码(例如选择H.261),并将修改后的SDP#1'(其中仅包括H.261编码的相关信息)发送给TC,TC接受并返回SDP#2;TCP将SDP#2(也可同时发送SDP#1')发送给TS,指示TS将与TC建立的媒体会话将采用H.261编码格式,但TS需要执行转码功能:将来自WAN侧的H.263编码格式的媒体流转换为H.261编码格式并发送给TC,将来自TC的H.261编码格式的媒体流转换为H.263并发送给WAN侧通信对端。
由于在此实施例中,TS已经提供了转码信息,TCP可根据该信息及TC的能力进行转码的选择,并修改得到合适的SDP#1',故TCP在给TS发送SDP#2时,可不必发送SDP#1'。
实施例二(A)、实施例二(B)中,TCP将SDP#1中的内容修改(去除)发送给TC的原因为:TC并不支持SDP#1中的所有内容,具体实施时,TCP将SDP#1中的内容修改(去除)发送给TC的原因可以有多种,例如,TCP将使用2个或以上的TC同时与TS进行媒体会话(例如一个TC与TS进行音频会话,一个TC与TS进行视频会话)。这时,TCP可以将SDP#1修改为仅包含Media#1的SDP#1'发送给TC#1,将SDP#1修改为仅包含Media#2的SDP#1''发送给TC#2,TC#1/TC#2会分别根据SDP#1'/SDP#1''返回SDP#2/SDP#3。TCP再将SDP#2和SDP#3分别发送给TS,指示TS Media#1/Media#2的媒体会话分别与TC#1/TC#2进行。
实施例三
本实施例中,TCP仅仅作为中介,向TS/TC分别提供对端的媒体描述信息,可选地以及提供对端的媒体能力信息。TS/TC完全依靠自己的判断依据来选择并确定各自使用的媒体参数。
实施例三(A)
本实施例中,TC根据SDP#1返回SDP#2,TCP将SDP#2提供给TS;TS再据此修改SDP#1使其与SDP#2中的内容匹配;TCP再将TS修改后的SDP#1'作为TS的最终版本,发送给TC,后续二者便可以开始通信。
本实施例中,TCP、TS、TC分别实施如下:
TCP还接收TS根据所述第一媒体描述和第二媒体描述修改后的所述第一媒体描述;将修改后的所述第一媒体描述转发给TC。
TS向TCP发送根据所述第一媒体描述和第二媒体描述修改后的所述第一媒体描述,以使所述TCP向所述TC发送修改后的所述第一媒体描述。
TC还接收TCP转发的TS根据所述第一媒体描述和第二媒体描述修改后的所述第一媒体描述。
具体流程如图7所示,可以包括:
步骤701、TS(如手机、固定电话、VoIP网关等设备)已经与WAN侧的通信对端完成了呼叫建立(如完成了从SIP Invite到SIP ACK的交互过程);
步骤702、TS将WAN侧建立通信的描述转换为LAN(Local Area Network,局域网)侧应该使用的描述,即SDP#1;
步骤703、TS将SDP#1提供给TCP;
步骤704、TCP获取来自TS的事件,指示WAN侧通信已经建立,事件消息中提供了TS将用于LAN侧媒体通信的参数描述SDP#1;TCP将来自TS的媒体描述SDP#1(SDP Offer)发送给TC,TC根据SDP#1结合自身能力返回自己的媒体描述SDP#2(SDP Answer)。
1)如果TC满足SDP#1所提供的媒体格式,则与实施例一相同。
2)在本实施例中,假定TC仅满足部分SDP#1中提供的媒体格式。例如,
A.来自TS的媒体描述SDP#1具体可以为:
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
m=video4567RTP/AVP34
a=rtpmap:34H263/90000
而对于其中的H.263媒体编码格式,TC不支持,在本实施例中,TC根据自身的策略确定与TS的媒体通信中不包括H.263视频流。
B.因而,TC返回的SDP#2具体可以为:
v=0
o=-0 0IN IP4 192.168.0.35
s=
c=IN IP4 192.168.0.35/127
t=0 0
m=audio2324RTP/AVP0
a=rtpmap:0PCMU/8000
步骤705、TCP将来自TC的媒体描述SDP#2发送给TS,TS会与SDP#1进行比较并产生用于与TC进行媒体会话的最终媒体参数描述SDP#1'并返回给TCP;
1)在本例中,TC返回的SDP#2不包含SDP#1中的H.263媒体格式,因而TS收到SDP#2(SDP Answer)后与SDP#1(SDP Offer)比较发现了这一点。TS可以接受,并返回最终的媒体描述SDP#1'。
A.TS返回的SDP#1'具体可以如下:
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
2)另外,TS也可以根据其策略,因为TC无法满足其提供的所有媒体而选择放弃与TC进行媒体会话。
步骤706、TCP将来自TS的最终描述SDP#1'发送给TC,指示这是TS将使用的最终版本。
步骤707、TS、TC根据SDP#2/SDP#1'所描述的媒体会话参数开始媒体会话。在本例中,TC将与TS之间建立只包含PCMU音频的媒体会话。
实施例三(B)
本实施例中,TCP将来自TS的SDP#1连同TS支持的媒体能力一同发送给TC,供其选择;TC根据自身媒体能力选择与TS间使用H.261,因而返回SDP#2;TCP将SDP#2发送给TS,TS将得知TC不支持H.263而改用H.261,自己需要完成转码工作。
本实施例中,TCP、TS、TC分别实施如下:
TCP在所述接收TC根据所述第一媒体描述生成的第二媒体描述之前,还包括:获取TS的媒体能力并将TS的媒体能力转发给TC;接收TC根据TS、TC的媒体能力和所述第一媒体描述生成的第二媒体描述。
TS接收TCP转发的TC根据TS、TC的媒体能力和所述第一媒体描述生成的第二媒体描述。
TC接收TCP转发的TS的媒体能力;根据TS、TC的媒体能力和所述第一媒体描述生成第二媒体描述。
本例中流程上与实施例三(A)所提供的步骤类似,不同点在于TC/TS的处理行为上,以及TCP还要将向TC提供对端支持的媒体能力信息,供TC参考并选择出替代的媒体格式,以此表明需要TS进行转码工作。如图8所示,具体处理流程可以包括:
步骤801、TCP获取TS的媒体能力MediaCapability#1(也可以获取TC的能力);
步骤802、TS(如手机、固定电话、VoIP网关等设备)已经与WAN侧的通信对端完成了呼叫建立(如完成了从SIP Invite到SIP ACK的交互过程);
步骤803、TS将WAN侧建立通信的描述转换为LAN(Local Area Network,局域网)侧应该使用的描述,即SDP#1;
步骤804、TS将SDP#1提供给TCP;
步骤805、TCP获得来自TS希望用于LAN侧媒体通信的媒体描述SDP#1,将来自TS的媒体描述SDP#1以及TS的媒体能力MC#1一同发给TC,供其进行参考。
1)本实施例主要考虑SDP#1中某个/些媒体格式TC不支持的情况,TC将结合自身以及TS的能力确定一种转码方案。
A.来自TS的媒体描述SDP#1可以具体为:
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
m=video4567RTP/AVP34
a=rtpmap:34H263/90000
B.来自TS的媒体能力描述MC#1可以具体为:
m=audio0RTP/AVP0 1 3
a=rtpmap:0PCMU/8000
a=rtpmap:1 1016/8000
a=rtpmap:3GSM/8000
m=video0RTP/AVP31 34 96
a=rtpmap:31H261/90000
a=rtpmap:34H263/90000
a=rtpmap:96MP4V-ES/90000
2)TC结合SDP#1、MC#1以及自身的能力进行判断。例如,自身不支持SDP#1中提供的H.263视频编码而支持H.261,且发现TS也支持H.261。因而TC可以根据自己的策略得出结论:可以使用H.261作为替代的视频流编码方案。
3)TC根据判断结果返回媒体描述SDP#2,具体可以为如下:
v=0
o=-0 0IN IP4 192.168.0.35
s=
c=IN IP4 192.168.0.35/127
t=0 0
m=audio2324RTP/AVP0
a=rtpmap:0PCMU/8000
m=video3435RTP/AVP31
a=rtpmap:31H261/90000
步骤806、TCP将来自TC的媒体描述SDP#2发送给TS;
1)TS可以根据自身的策略(如不倾向于转码)选择拒绝来自TC的转码方案。或者,
2)接受来自TC的媒体描述,并根据SDP#2最终确定并返回SDP#1'。
A.TS确定的SDP#1'可以具体为如下:
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
m=video5678RTP/AVP31
a=rtpmap:31H261/90000
步骤807、TCP将来自TS的媒体描述最终版本SDP#1'发送给TC,指示双方将通过SDP#2以及SDP#1'所描述的媒体参数开始媒体会话;
步骤808、后续TS/TC之间的媒体会话将采用音频PCMU编码、视频H.261编码传输。对于TS,需要将来自TC的H.261编码转码成H.263视频流发送给WAN侧通信对端;将来自WAN侧通信对端的H.263视频流转码成H.261视频流发送给TC。
实施例四
本实施例中,TCP通过UPnP action主动要求TS生成用于LAN侧媒体通信的参数描述。
本实施例中,TCP、TS分别实施如下:
本实施例中,TCP调用通用即插即用UPnP控制命令,接收TS发来的对调用UPnP控制命令的响应,该响应中包括第一媒体描述。
TS向TCP发送对TCP调用UPnP控制命令的响应,该响应中包括第一媒体描述。
本实施例具体流程如图9所示,可以包括:
步骤901:TS与WAN侧完成通信协商并建立;
步骤902、TS通过UPnP事件向TCP发送通知消息(例如只携带CallID,或者以及呼叫状态例如“CallStatus=Established”),以告知TCP WAN侧的通信连接已经建立;
步骤903、TCP得到事件后,向TS获取TS用于LAN侧媒体会话的参数描述。
1)实施中,TCP可以根据用户的需要确定是否TS应与某TC建立媒体会话。也就是说这里TS不主动产生用于LAN侧媒体通信的参数,除非TCP命令其生成。
2)具体地,TCP可以通过UPnP action(例如GetMediaDescription())获取TS将在LAN侧使用的媒体参数的描述。TS收到请求消息后,将根据WAN侧的媒体描述生成对应的LAN侧的媒体描述,并在响应消息中向TCP返回。
步骤904、TCP将来自TS的媒体描述SDP#1(SDP Offer)发送给TC,TC根据SDP#1结合自身能力返回自己的媒体描述SDP#2(SDP Answer);
步骤905、TCP将来自TC的媒体描述SDP#2发送给TS,TS会与SDP#1进行比较并产生用于与TC进行媒体会话的最终媒体参数描述SDP#1';
步骤906、TCP将来自TS的最终描述SDP#1'发送给TC,指示这是TS将使用的最终版本;
步骤907、TS、TC根据SDP#2/SDP1'所描述的媒体会话参数开始媒体会话。
本实施例中,TCP充当SDP转发人,不指定或部分指定双方应使用的媒体参数;这样TC收到SDP#1后可能其能力与SDP#1中有出入(例如不支持某编码格式);TC会根据自身能力返回SDP#2,相对于SDP#1,情况1为TC放弃不支持的某媒体流,情况2为TC提供替代的媒体编码格式并要求TS进行转码;TS会根据SDP#2确定最终的SDP#1的版本。以上具体例子在前面的实施例中已经包含。本实施例仅与实施例一进行对照,在细节上也可以结合其他实施例。
实施例五
本实施例与前述实施例的区别在于:对TCP要求更多的工作和决定权。TCP将根据TS WAN侧的媒体通信参数(SDP#0)结合TC的能力初步确定TC的媒体参数描述(SDP#2)并将该描述发送给TS,要求TS根据SDP#2生成最终应使用的媒体参数描述SDP#1;TCP将来自TS的媒体描述SDP#1以及TCP为其初步指定的媒体描述SDP#2同时发送给TC,用以指示根据这些信息生成最终的媒体参数描述SDP#2';TCP最后将SDP#2'发送给TS,告知其SDP#2'为TC将使用的媒体参数描述的最终版本。
TCP初步指定TC/TS将使用的媒体格式的好处在于免除多于的协商过程,对TC/TS的处理能力要求较低;实际中,TCP可以向TS/TC指定部分参数,例如,指定包含:
m=audio0RTP/AVP0
a=rtpmap:0PCMU/8000
m=video0RTP/AVP31
a=rtpmap:31H261/90000
即向TS/TC指定它们之间的通信应该使用的媒体编码格式。这种情况下,TC/TS将接受使用指定的媒体格式并生成全面的SDP(将地址、端口等信息补上)。或者,指定:
v=0
o=-0 0IN IP4 192.168.0.10
s=
c=IN IP4 192.168.0.10/127
t=0 0
m=audio3456RTP/AVP0
a=rtpmap:0PCMU/8000
m=video4567RTP/AVP31
a=rtpmap:31H261/90000
这样即指定了TS/TC通信的所有或者主要参数,TS/TC不需要自行管理通信端口,这样对TC/TS的要求更低。实际中,TCP也可以向TS指定部分描述内容,而向TC指定包括地址/端口的所有内容,或者反之(根据设备具体能力而决定)。
本实施例中,TCP、TS、TC分别实施如下:
TCP接收TS发来的第一媒体描述之前,还包括:获取TS广域网WAN侧的媒体描述、TC的媒体能力,根据TS WAN侧的媒体描述、TC的媒体能力,初步确定第二媒体描述并将所述初步确定的第二媒体描述发送给TS;后续接收TS根据所述初步确定的第二媒体描述生成的第一媒体描述;将所述初步确定的第二媒体描述发送给TC;接收TC根据所述第一媒体描述、所述初步确定的第二媒体描述修改后的第二媒体描述;将修改后的第二媒体描述发送给TS。
TS向TCP发送第一媒体描述之前,还包括:向TCP提供TS广域网WAN侧的媒体描述;接收TCP根据TS WAN侧的媒体描述、TC的媒体能力,初步确定的第二媒体描述;后续向TCP发送根据所述初步确定的第二媒体描述生成的第一媒体描述;接收TCP转发的TC根据所述第一媒体描述、所述初步确定的第二媒体描述修改后的第二媒体描述。
TC接收所述第一媒体描述之前,向TCP提供TC的媒体能力;接收TCP发来的初步确定的第二媒体描述、以及TCP转发的TS根据初步确定的第二媒体描述生成的第一媒体描述,所述初步确定的第二媒体描述是TCP根据TS WAN侧的媒体描述、TC的媒体能力初步确定的第二媒体描述;根据所述第一媒体描述、所述初步确定的第二媒体描述修改第二媒体描述;向TCP发送修改后的第二媒体描述。
本实施例具体流程如图10所示,可以包括:
步骤1001a-1001b、TCP要事先获取TS/TC各自的媒体能力;
步骤1002、TS(如手机、固定电话、VoIP网关等设备)已经与WAN侧的通信对端完成了呼叫建立(如完成了从SIP Invite到SIP ACK的交互过程);
步骤1003、TS通过UPnP事件向TCP发送通知消息(例如只携带CallID,或者以及呼叫状态例如“CallStatus=Established”),以告知TCP WAN侧的通信连接已经建立;并提供WAN侧使用的媒体描述SDP#0;
步骤1004、TCP结合TS WAN侧的媒体通信参数(SDP#0)、TC的能力初步确定TC的媒体参数描述(SDP#2);
步骤1005、TCP将初步确定的SDP#2提供给TS;TS根据SDP#2生成最终应使用的媒体参数描述SDP#1;
步骤1006、TCP将来自TS的媒体描述SDP#1以及TCP为其初步指定的媒体描述SDP#2同时发送给TC;TC根据这些信息生成最终的媒体参数描述SDP#2';
步骤1007、TCP最后将SDP#2'发送给TS,告知其SDP#2'为TC将使用的媒体参数描述的最终版本;
步骤1008、TS、TC根据SDP#2'/SDP1所描述的媒体会话参数开始媒体会话。
下面举例给出本发明实施例的具体实施场景。如下实施场景为具体实例,实施中在家庭网络中使用电话业务的其它场景均可适用前述实施例方法。
实施场景一:通过TCP发起TS向WAN侧通信设备的会话,并建立TC/TS之间的媒体会话。如图10A所示,处理流程可以包括:
步骤1a-1b、TCP分别获取TS/TC的媒体会话能力(支持的媒体类型、编码等)。在此之前,用户决定通过TC与位于家庭网络外的某用户进行通话,因而通过TCP触发呼叫和会话建立的过程;
步骤2、TCP根据TS/TC等能力初步决定TS向WAN侧通信设备发起呼叫所应使用的媒体参数信息(SDP#0)。
1)具体地,TCP可以选择TS/TC都支持的媒体编码格式。
2)按照前面的实施例说明,如果TS/TC没有匹配的媒体格式,TCP可以选择放弃该媒体的通信或者选择TC支持的编码格式并要求TS后续进行转码。
步骤3、TCP向TS发起命令,指示TS使用SDP#0所描述的媒体参数向WAN侧设备发起呼叫。具体地,TCP通过调用UPnP action完成该过程,TS接受该命令并返回标识即将开始的呼叫的CallID。
步骤4、TS根据TCP的指令以及SDP#0所提供的媒体参数向WAN侧设备发起呼叫。例如,如果使用SIP协议,TS则向WAN侧对端通信设备发送SIPInvite消息,其中可以携带SDP Offer。
1)TS会根据来自TCP的SDP#0中的要求组织SDP Offer的具体内容(如附加确定接收媒体流的IP地址/端口等)。
2)TS将与WAN侧设备进行会话协商,其间会交互多个SIP消息。
步骤5、TS与WAN侧设备完成通信的建立;
步骤6、TS向TCP提供用于WAN侧媒体通信的会话参数描述SDP#1。
1)例如,通过SIP多个消息的交互,TS与通信对端确定了双方使用的媒体会话参数。
2)TS根据WAN侧使用的媒体参数生成用于LAN侧通信的参数描述SDP#1。按照前面的实施例,也可以为:TCP向TS发指令要求其生成LAN侧通信参数描述(该指令中还可以携带TC的媒体能力/参数信息)。
3)TS向TCP提供用于LAN侧媒体会话的参数描述SDP#1。按照前面的实施例,提供的方式可以通过TS向TCP发送事件,也可以为TCP通过调用action向TS获取。
步骤7、TCP将来自TS的媒体描述SDP#1的信息发送给TC。按照前面的实施例其具体实现可以为:
1)TCP将SDP#1发送给TC,供TC根据自身能力返回TC使用的媒体参数的描述SDP#2;
2)TCP根据TC的能力将SDP#1进行修改,并将SDP#1'发送给TC,TC接受并返回将要使用的媒体参数的描述SDP#2。
3)TCP根据SDP#1以及TC的能力直接确定并发送给TC应该使用的媒体参数的描述SDP#2,TC接受。
步骤8、TCP将TC将要在媒体会话中使用的媒体参数的描述SDP#2发送给TS,以便于TS与TC之间开始媒体会话。
1)如果TC向TS发送了SDP#1',这种情况TCP应该将SDP#1'也提供给TS,以便告知其应使用的媒体参数的最终版本。
步骤9、TC与TS按照SDP#1(SDP#1')/SDP#2所描述的媒体参数开始媒体会话,TS也会将与TC间进行的全部或部分媒体发送给WAN侧通信对端,将来自WAN侧通信对端的全部或部分媒体发送给TC,其间TS可能会对全部或部分编码格式的媒体进行转码操作。
实施场景二:通过TCP接受从WAN侧通信设备向TS的会话请求,并建立TC/TS之间的媒体会话。如图10B所示,处理流程可以包括:
步骤1、TS接收到来自WAN侧通信设备的呼叫请求。
步骤2、TS将所述呼叫请求提供给TCP。
1)TS向TCP提供的信息可包括:TS根据该请求生成的用于标识本次呼叫的CallID;媒体会话参数的描述SDP#0。其中,SDP#0既可以是通信对端所提供的SDP Offer所携带的媒体能力信息,也可以是TS根据自身能力将其过滤后向TCP提供的媒体能力信息。
2)TS向TCP提供该信息的方式可以为:通过事件或,TCP调用action,TS在响应详细中返回。
步骤3、TCP获取TC的媒体能力信息MediaCapability#1;
可选地,TCP也可以获取TS的能力。
步骤4、TCP根据SDP#0确定TS接受请求后希望使用的媒体会话参数SDP#0'。
TCP确定SDP#0'的方式,例如,SDP#0中包含了H.261,H.263等多种WAN侧通信对端支持的媒体编码格式,TCP根据TC(和TS)的能力确定本次会话使用H.261传输视频,因而在SDP#0'包含选择H.261编码格式。
步骤5、TCP命令TS接受该来自WAN侧的呼叫请求。接受的方式可以通过调用UPnP action,其中携带TS应该选择的媒体参数信息的描述SDP#0'。
步骤6、TS根据TCP的命令组织并向WAN侧设备返回SDP Answer。例如使用SIP协议,TS可以在SIP消息中携带SDP Answer。
步骤7、TS根据TCP的指示与WAN侧通信设备完成会话协商并建立通话。此时TS按照前面实施例所述的方式向TC提供用于LAN侧的媒体会话参数的描述SDP#1。
后续的步骤8-11与实施图10A中步骤6-9相同。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,可以包括上述实施例方法中的全部或部分步骤,所述的存储介质可以包括:ROM、RAM、磁盘、光盘等。
本发明实施例中还提供了一种电话控制点设备TCP、电话服务器设备TS、电话客户端设备TC及媒体协商系统,如下面的实施例所述。由于这些设备解决问题的原理与媒体协商方法相似,因此这些设备的实施可以参见方法的实施,重复之处不再赘述。
如图11所示,本发明实施例中的电话控制点设备TCP可以包括:
第一接收模块1101,用于接收电话服务器TS发来的第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;
第一转发模块1102,用于将所述第一媒体描述转发给电话客户端TC;
第二接收模块1103,用于接收TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;
第二转发模块1104,用于将所述第二媒体描述转发给TS。
一个实施例中,第一转发模块1102可具体用于:
获取TC的媒体能力并根据TC的媒体能力对所述第一媒体描述进行修改;或,获取TC和TS的媒体能力并根据TC和TS的媒体能力对所述第一媒体描述进行修改;
将修改后的所述第一媒体描述转发给TC;
第二接收模块1103可具体用于:接收TC根据修改后的所述第一媒体描述生成的第二媒体描述。
一个实施例中,第二转发模块1104还可用于:将修改后的所述第一媒体描述转发给TS。
如图12所示,一个实施例中,图11所示的TCP还可以包括:
第三接收模块1201,用于接收TS根据所述第一媒体描述和第二媒体描述修改后的所述第一媒体描述;
第三转发模块1202,用于将修改后的所述第一媒体描述转发给TC。
一个实施例中,第一转发模块1102还可用于:获取TS的媒体能力并将TS的媒体能力转发给TC;
第二接收模块1103可具体用于:接收TC根据TS和TC的媒体能力,以及所述第一媒体描述生成的第二媒体描述。
如图13所示,一个实施例中,图11所示的TCP还可以包括::
确定模块1301,用于获取TS广域网WAN侧的媒体描述和TC的媒体能力,根据TS WAN侧的媒体描述和TC的媒体能力,初步确定第二媒体描述并将所述初步确定的第二媒体描述发送给TS;
第一接收模块1101可具体用于:接收TS根据所述初步确定的第二媒体描述生成的第一媒体描述;
第一转发模块1102还可用于:将所述初步确定的第二媒体描述发送给TC;
第二接收模块1103可具体用于:接收TC根据所述第一媒体描述和所述初步确定的第二媒体描述修改后的第二媒体描述;
第二转发模块1104可具体用于:将修改后的第二媒体描述发送给TS。
一个实施例中,第一接收模块1101可具体用于:
通过事件接收TS发来的第一媒体描述;
或,调用通用即插即用UPnP控制命令,接收TS发来的对调用UPnP控制命令的响应,该响应中包括第一媒体描述。
如图14所示,本发明实施例中的电话服务器设备TS可以包括:
第一发送模块1401,用于向电话控制点TCP发送第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;
第一接收模块1402,用于接收TCP转发的TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数。
一个实施例中,第一接收模块1402可具体用于:接收修改后的所述第一媒体描述、以及TC根据修改后的所述第一媒体描述生成的第二媒体描述;所述修改后的所述第一媒体描述由TCP根据TC的媒体能力修改所述第一媒体描述获得,或由TCP根据TC和TS的媒体能力修改所述第一媒体描述获得。
如图15所示,一个实施例中,图14所示的TS还可以包括:
第二发送模块1501,用于向TCP发送根据所述第一媒体描述和所述第二媒体描述修改后的所述第一媒体描述。
一个实施例中,第一接收模块1402可具体用于:接收TCP转发的TC根据TS和TC的媒体能力,以及所述第一媒体描述生成的第二媒体描述。
如图16所示,一个实施例中,图14所示的TS还可以包括:
第三发送模块1601,用于向TCP提供TS广域网WAN侧的媒体描述;
第二接收模块1602,用于接收TCP根据TS WAN侧的媒体描述和TC的媒体能力,初步确定的第二媒体描述;
第一发送模块1401可具体用于:向TCP发送根据所述初步确定的第二媒体描述生成的第一媒体描述;
第一接收模块1402可具体用于:接收TCP转发的TC根据所述第一媒体描述和所述初步确定的第二媒体描述修改后的第二媒体描述。
一个实施例中,第一发送模块1401可具体用于:
通过事件向TCP发送第一媒体描述;
或,向TCP发送对TCP调用UPnP控制命令的响应,该响应中包括第一媒体描述。
如图17所示,本发明实施例中的电话客户端设备TC可以包括:
第一接收模块1701,用于接收TCP转发的TS的第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;
生成模块1702,用于根据所述第一媒体描述生成第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;
第一发送模块1703,用于向TCP发送所述第二媒体描述,以使所述TCP向所述TS发送所述第二媒体描述。
如图18所示,一个实施例中,图17所示的TC还可以包括:
第二发送模块1801,用于向TCP提供TC的媒体能力;
第一接收模块1701可具体用于:接收TCP在接收到TS发来的第一媒体描述后,根据TC的媒体能力修改后的所述第一媒体描述,或根据TC和TS的媒体能力修改后的所述第一媒体描述;
生成模块1702可具体用于:根据修改后的所述第一媒体描述生成第二媒体描述。
如图19所示,一个实施例中,图17所示的TC还可以包括:
第二接收模块1901,用于接收TCP转发的TS的媒体能力;
生成模块1702可具体用于:根据TS、TC的媒体能力和所述第一媒体描述生成第二媒体描述。
如图20所示,一个实施例中,图17所示的TC还可以包括:
第二发送模块2001,用于向TCP提供TC的媒体能力;
第一接收模块1701可具体用于:接收TCP发来的初步确定的第二媒体描述、以及TCP转发的TS根据初步确定的第二媒体描述生成的第一媒体描述,所述初步确定的第二媒体描述是TCP根据TS WAN侧的媒体描述和TC的媒体能力初步确定的第二媒体描述;
生成模块1702可具体用于:根据所述第一媒体描述和所述初步确定的第二媒体描述修改第二媒体描述;
第一发送模块1703可具体用于:向TCP发送修改后的第二媒体描述。
一个实施例中,生成模块1702可具体用于:根据所述第一媒体描述中的媒体格式信息、地址信息和端口信息之一或任意组合,生成第二媒体描述。
如图21所示,本发明实施例中的媒体协商系统可以包括:
电话服务器设备TS2101,用于发送第一媒体描述,所述所述第一媒体描述包括TS局域网LAN侧的媒体会话参数;
电话控制点设备TCP2102,用于接收所述第一媒体描述,并转发所述第一媒体描述;
以及电话客户端设备TC2103,用于接收所述TCP转发的第一媒体描述,并根据所述第一媒体描述生成第二媒体描述,将所述第二媒体描述发送给所述TCP;
所述TCP还用于接收所述TC发送的所述第二媒体描述,并将所述第二媒体描述发送给所述TS。
综上所述,本发明实施例中,接收电话服务器TS发来的第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;将所述第一媒体描述转发给电话客户端TC;接收TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;将所述第二媒体描述转发给TS,从而实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商。
本发明实施例中,向电话控制点TCP发送第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;接收TCP转发的TC根据所述第一媒体描述生成的第二媒体描述,所述第二媒体描述包括TC的媒体会话参数,从而实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商。
本发明实施例中,接收TCP转发的TS的第一媒体描述,所述第一媒体描述包括TS LAN侧的媒体会话参数;根据所述第一媒体描述生成第二媒体描述,所述第二媒体描述包括TC的媒体会话参数;向TCP发送所述第二媒体描述,以使所述TCP向所述TS发送所述第二媒体描述,从而实现家庭网络中电话服务器与电话客户端之间媒体会话参数的协商。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。