建立通信通道的方法和装置的制造方法_2

文档序号:9814065阅读:来源:国知局
时接收到的通信请求。
[0051]可以理解的是,当不考虑网络延时等影响网络数据传输的因素时,同时发起的通信请求可以当作同时接收到的通信请求处理,同时接收到的通信请求也可以当作同时发起的通信请求处理。
[0052]步骤406,对同时发起或者同时接收到的通信请求进行随机匹配。
[0053]具体地,在同时发起或者同时接收到的通信请求确定后,服务器就可以对其中的通信请求进行随机匹配,可以随机两两配对来实现任意两个通信请求的匹配,此种情况适用于任意两个陌生人的终端之间的通信通道的建立。还可以进行3个以上的指定数量的通信请求的随机聚类来实现通信请求的随机匹配,这里指定数量可以由服务器指定也可以由终端发送的通信请求所指定,此种情况适用于超过两个陌生人的终端之间的用于群组通信的通信通道的建立。
[0054]步骤408,根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
[0055]具体地,服务器可以向发起匹配的通信请求中的每个通信请求的终端发送建立通信通道的通知,从而使得接收到通知的终端根据该通知与其它终端建立通信通道。向每个终端发送的通知,根据匹配的通信请求各自所携带的终端的标识生成。其中根据接收该通知的终端的标识可生成该通知中的接收方的信息,根据匹配的通信请求所对应的所有终端中除去接收该通知的终端的标识,可以生成该通知中用于使接收该通知的终端建立通信通道所需要的必要数据。具体必要数据可以是其它终端的标识,此时既可以建立终端之间经由服务器的通信通道,也可以建立终端之间的P2P(点对点)通信通道。必要数据还可以是根据其它终端的标识所生成的通信接口标识,接收到通知的终端便可以根据该通信接口标识而与其它终端建立经由服务器的通信通道。
[0056]在一个实施例中,终端之间所建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。其中语音通信通道是指用于传送语音的通信通道,可以是适用于移动语音通信的基于移动通信网络的通信通道,也可以是适用于数据通信的基于数据网络的通信通道,比如通过GPRS (General Packet Rad1 Service,通用分组无线服务)通信通道所建立的语音通信通道。即时会话通信通道是指适用于即时通信的通信通道,可以传输文本、图片、表情、界面元素、用户头像、用户签名等即时通信中需要传输的数据。视频通信通道则是适用于视频传输的通信通道,适用于视频聊天的场景。
[0057]在一个实施例中,建立了通信通道的终端之间可以通过该通信通道进行通信,且当其中任意终端以用户标识登录后通过服务器向另一终端发起建立好友关系的请求后,月艮务器接收另一个终端以用户标识登录后发起的确认建立好友关系的反馈,从而建立两个用户标识之间的好友关系。
[0058]上述建立通信通道的方法,接收到多个终端发来的通信请求后,将同时发起或者同时接收到的通信请求进行随机匹配,这些同时发起或者同时接收到的通信请求表示发起相应通信请求的用户都具有与陌生人通信的意图,通过随机匹配能够自动将两个具有通信意图的用户联系起来。然后根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道,这样直接建立起两个用户的终端之间的通信通道,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。
[0059]如图5所示,在另一个实施例中,一种建立通信通道的方法,具体包括如下步骤:
[0060]步骤502,接收分别来自多个终端的通信请求。
[0061]具体地,终端向服务器发送的通信请求可携带有用于建立通信通道的必要数据,比如发起该通信请求的终端的物理地址和/或网络地址等。终端可以通过检测预设操作来触发向服务器发送通信请求。比如终端可以提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向服务器发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。该终端也可以通过终端的触摸板或者摄像头检测到手势操作,或者用于通过终端的运动传感器检测到的符合预设运动条件的终端运动时触发向服务器发送通信请求。
[0062]步骤504,根据接收到的通信请求确定同时发起或者同时接收到的通信请求。
[0063]具体地,如上所述,根据接收到的通信请求确定同时发起或者同时接收到的通信请求可以采用多种方式,服务器可以获取接收到的通信请求各自携带的请求发起时间,将请求发起时间一致的通信请求确定为同时发起的通信请求。服务器也可以记录接收通信请求时的请求接收时间,将请求接收时间一致的通信请求确定为同时接收到的通信请求。月艮务器也可以根据接收时间将接收到的通信请求按照预设值的时间区段缓存,将属于同一时间区段的通信请求确定为同时接收到的通信请求。服务器还可以将接收到的通信请求按接收顺序排列为队列,并记录队列中通信请求的请求接收时间,实时将队列中请求接收时间与当前时间的差距超过预设值的通信请求删除,将当前队列中的通信请求作为同时接收到的通信请求。
[0064]步骤506,检测到所述同时发起或者同时接收到的通信请求中携带有通信对象需求信息时,获取所述通信对象需求信息。
[0065]具体地,各个终端可以在触发向服务器发送通信请求前,设定通信对象需求信息,用于表示意图与之建立通信通道的陌生人需要满足的条件。通信对象需求信息可以用预设种类的用户属性标识和相应的用户属性值表示,比如性别:女,地理位置:青海,年龄:20-25等。通信对象需求信息也可以用按预设顺序排列的用户属性值序列来直接表示,其中用户属性值所对应的用户属性用其所处位置来区分,没有相应用户属性值的可以在用户属性值序列中相应位置处用空值或者其它特殊符号来表示,比如女,青海,20-25。
[0066]多个终端中,可以部分终端设置有通信对象需求信息,相应地通信请求中将携带有通信对象需求信息,而另外部分的终端则可以不设置通信对象需求信息,相应地其发起的通信请求中将不携带通信对象需求信息。终端是否设置通信对象需求信息可以根据用户需要来确定。对于同时发起或者同时接收到的通信请求中的每个通信请求,服务器检测其是否携带有通信对象需求信息,如果检测到就获取该通信请求中的通信对象需求信息,再检测下一个通信请求;若未检测到就直接继续处理下一个,直至将同时发起或者同时接收到的通信请求中的每个通信请求检测完毕。
[0067]步骤508,检测到同时发起或者同时接收到的通信请求中携带有用户标识时,提取用户标识所对应的用户属性。
[0068]具体地,携带有用户标识的通信请求是以该用户标识登录的终端所发起的,服务器将从携带有用户标识的通信请求中获取用户标识,并从用户数据库中提取该用户标识所对应的用户属性,该用户属性可以是用户性别、用户所处地理位置、兴趣爱好以及年龄分布等。对于不携带用户标识的通信请求,则不提取用户属性。上述步骤506和步骤508的执行顺序可以调换也可以同时执行。
[0069]步骤510,分别判断对应不同的通信请求的通信对象需求信息和用户属性是否匹配。
[0070]具体地,对于同时发起或者同时接收到的通信请求,分别两两判断对应不同的通信请求的通信对象需求信息和用户属性是否匹配,具体分别判断一个通信请求所对应的需求信息与另一个通信请求所对应的用户属性是否匹配,以优先满足通信请求所携带的通信对象需求信息。
[0071]步骤512,将判断为匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配。
[0072]具体地,若判定一个通信请求所对应的需求信息与另一个通信请求所对应的用户属性匹配,则将对应该匹配的需求信息和用户属性的通信请求进行匹配。若存在对应一个通信请求的通信对象需求信息与多个通信请求所对应的用户属性分别匹配,则可将该通信请求与多个通信请求中随机的一个或者指定数量的匹配。
[0073]在其它实施例中,若判断为匹配的通信对象需求信息和用户属性为双向匹配,则将判断为双向匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配,若存在多个则随机在其中选取一个或者指定数量的通信请求匹配。其中双向匹配是指一个通信请求所对应的需求信息与另一个通信请求所对应的用户属性匹配,并且该一个通信请求所对应的用户属性也与该另一个通信请求所对应的通信对象需求信息匹配。
[0074]步骤514,将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。
[0075]具体地,通过步骤512中对通信请求的匹配,同时发起或者同时接收到的通信请求中已经有部分通信请求得到的匹配结果,对于除去这部分的剩余未匹配的通信请求则进行随机匹配。
[0076]步骤516,根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
[0077]具体地,服务器可以向发起匹配的通信请求中的每个通信请求的终端发送建立通信通道的通知,从而使得接收到通知的终端根据该通知与其它终端建立通信通道。向每个终端发送的通知,根据匹配的通信请求各自所携带的终端的标识生成。其中根据接收该通知的终端的标识可生成该通知中的接收方的信息,根据匹配的通信请求所对应的所有终端中除去接收该通知的终端的标识,可以在该通知中生成接收该通知的终端建立通信通道所需要的必要数据。终端之间所建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。
[0078]本实施例提供的建立通信通道的方法,先根据用户设定的通信对象需求信息进行通信请求的匹配,当无法匹配时才进行随机匹配,可以使得建立了通信通道的陌生人尽量优先满足用户需求,一定程度上保证通信安全,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
[0079]如图6所示,在再一个实施例中,一种建立通信通道的方法,具体包括如下步骤:
[0080]步骤602,接收分别来自多个终端的通信请求。
[0081]具体地,终端向服务器发送的通信请求可携带有用于建立通信通道的必要数据,比如发起该通信请求的终端的物理地址和/或网络地址等。终端可以通过检测预设操作来触发向服务器发送通信请求。比如终端可以提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向服务器发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。该终端也可以通过终端的触摸板或者摄像头检测到手势操作,或者用于通过终端的运动传感器检测到的符合预设运动条件的终端运动时触发向服务器发送通信请求。
[0082]步骤604,根据接收到的通信请求确定同时发起或者同时接收到的通信请求。
[0083]具体地,如上,根据接收到的通信请求确定同时发起或者同时接收到的通信请求可以采用多种方式,服务器可以获取接收到的通信请求各自携带的请求发起时间,将请求发起时间一致的通信请求确定为同时发起的通信请求。服务器也可以记录接收通信请求时的请求接收时间,将请求接收时间一致的通信请求确定为同时接收到的通信请求。服务器也可以根据接收时间将接收到的通信请求按照预设值的时间区段缓存,将属于同一时间区段的通信请求确定为同时接收到的通信请求。服务器还可以将接收到的通信请求按接收顺序排列为队列,并记录队列中通信请求的请求接收时间,实时将队列中请求接收时间与当前时间的差距超过预设值的通信请求删除,将当前队列中的通信请求作为同时接收到的通信请求。
[0084]步骤606,检测到同时发起或者同时接收到的通信请求中携带有用户标识时,提取用户标识所对应的用户属性。
[0085]具体地,携带有用户标识的通信请求是以该用户标识登录的终端所发起的,服务器将从携带有用户标识的通信请求中获取用户标识,并从用户数据库中提取该用户标识所对应的用户属性,该用户属性可以是用户性别、用户所处地理位置、兴趣爱好以及年龄分布等。对于不携带用户标识的通信请求,则不提取用户属
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1