CN105577504A - 建立通信通道的方法和装置 - Google Patents
建立通信通道的方法和装置 Download PDFInfo
- Publication number
- CN105577504A CN105577504A CN201410529445.9A CN201410529445A CN105577504A CN 105577504 A CN105577504 A CN 105577504A CN 201410529445 A CN201410529445 A CN 201410529445A CN 105577504 A CN105577504 A CN 105577504A
- Authority
- CN
- China
- Prior art keywords
- communication request
- communication
- request
- user
- terminal
- 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.)
- Granted
Links
Abstract
本发明提供了一种建立通信通道的方法,包括:接收分别来自多个终端的通信请求;根据接收到的通信请求确定同时发起或者同时接收到的通信请求;对同时发起或者同时接收到的通信请求进行随机匹配;根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。本发明提供的建立通信通道的方法,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。本发明还提供了一种建立通信通道的装置。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种建立通信通道的方法和装置。
背景技术
通信技术的不断发展,使得人们的沟通变得更加便捷,而随着即时通信技术的出现,人们可以通过即时通信软件与好友随时、方便、快捷地沟通。目前的通信方法仅限于对于确定对象的通信,比如用户从即时通信客户端提供的好友列表中选择一个好友作为通信的对象,从而与之建立通信连接而进行通信。这样用户只能够与自己已经建立了好友关系的用户进行通信。用户如果要与陌生人聊天,就需要通过复杂的好友查找流程,从陌生人中人工选择好友逐个添加,操作繁琐。
发明内容
基于此,有必要针对目前的通信方法只能够在已建立好友关系的用户之间进行通信,而如果要与陌生人聊天需要进行添加好友的操作导致操作繁琐的技术问题,提供一种可以直接实现陌生人之间通信的建立通信通道的方法和装置。
一种建立通信通道的方法,所述方法包括:
接收分别来自多个终端的通信请求;
根据接收到的通信请求确定同时发起或者同时接收到的通信请求;
对同时发起或者同时接收到的通信请求进行随机匹配;
根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
一种建立通信通道的装置,所述装置包括:
通信请求接收模块,用于接收分别来自多个终端的通信请求;
通信请求处理模块,用于根据接收到的通信请求确定同时发起或者同时接收到的通信请求;
匹配模块,用于对同时发起或者同时接收到的通信请求进行随机匹配;
通信通道建立模块,用于根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
上述建立通信通道的方法和装置,接收到多个终端发来的通信请求后,将同时发起或者同时接收到的通信请求进行随机匹配,这些同时发起或者同时接收到的通信请求表示发起相应通信请求的用户都具有与陌生人通信的意图,通过随机匹配能够自动将两个具有通信意图的用户联系起来。然后根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道,这样直接建立起两个用户的终端之间的通信通道,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。
一种建立通信通道的方法,所述方法包括:
向服务器发送第一通信请求,使所述服务器在与所述第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与所述第一通信请求匹配的第二通信请求;
接收所述服务器返回的建立通信通道的通知;所述通知根据所述匹配的第二通信请求所携带的终端的标识生成;
根据所述通知自动建立与所述终端的通信通道。
一种建立通信通道的装置,所述装置包括:
通信请求发送单元,用于向服务器发送第一通信请求,使所述服务器在与所述第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与所述第一通信请求匹配的第二通信请求;
通知接收单元,用于接收所述服务器返回的建立通信通道的通知;所述通知根据所述匹配的第二通信请求所携带的终端的标识生成;
通信通道建立单元,用于根据所述通知自动建立与所述终端的通信通道。
上述建立通信通道的方法和装置,向服务器发送了第一通信请求后,服务器在与第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求,这样发送第一通信请求和发送第二通信请求的用户都具有与陌生人通信的意图,通过随机匹配能够自动将两个具有通信意图的用户联系起来。然后接收到服务器返回的根据匹配的第二通信请求所生成的通知后,通过该通知就可以与另一个终端建立通信通道,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。
附图说明
图1为一个实施例中建立通信通道的系统的环境图;
图2为一个实施例中图1中的服务器的内部结构图;
图3为一个实施例中图1中的终端的内部结构图;
图4为一个实施例中建立通信通道的方法的流程示意图;
图5为另一个实施例中建立通信通道的方法的流程示意图;
图6为再一个实施例中建立通信通道的方法的流程示意图;
图7为一个具体应用场景中实现建立通信通道的方法的流程示意图;
图8为一个实施例中终端上显示的用于触发通信请求的图形界面的示意图;
图9为一个实施例中建立通信通道的方法的流程示意图;
图10为一个实施例中建立通信通道的装置的结构框图;
图11为另一个实施例中建立通信通道的装置的结构框图;
图12为再一个实施例中建立通信通道的装置的结构框图;
图13为一个实施例中建立通信通道的装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,在一个实施例中,提供了一种建立通信通道的系统,该系统包括服务器102和终端104,终端104为至少两个,如图1中的104a、104b和104c,服务器102与终端104之间通过网络连接相互通信。
图1中的服务器102的内部结构如图2所示。该服务器包括通过系统总线连接的处理器、存储介质、内存和网络接口。其中,该服务器的存储介质存储有操作系统、数据库和一种建立通信通道的装置,该建立通信通道的装置用于实现一种建立通信通道的方法。该服务器的处理器用于提供计算和控制能力,支撑整个服务器的运行。该服务器的内存为存储介质中的建立通信通道的装置的运行提供环境。该服务器的网络接口用于据以与外部的终端通过网络连接通信,比如接收终端发送的请求以及向终端返回通知等。
图1中的终端104的内部结构如图3所示,该终端包括通过系统总线连接的处理器、存储介质、内存、网络接口、显示屏幕和输入设备。其中,终端的存储介质存储有操作系统和一种建立通信通道的装置,该建立通信通道的装置用于实现一种建立通信通道的方法,且该建立通信通道的方法与上述服务器中的建立通信通道的装置所实现的建立通信通道的方法相对应。该终端的处理器用于提供计算和控制能力,支撑整个终端的运行。该终端的内存为存储介质中的建立通信通道的装置的运行提供环境。该终端的网络接口用于经由其与服务器通过网络连接通信,比如向服务器发送请求、接收服务器返回的通知以及与其它终端建立通信通道等。该终端的显示屏幕用于显示图形界面,提供与用户交互的途径。该终端的输入设备可以接收用户输入的信息以及指令,比如建立通信通道的指令、通信对象需求信息等,输入设备可以是覆盖在显示屏幕上的触摸板,也可以是按键、轨迹球、鼠标等。该终端可以是手机、平板电脑等移动终端,也可以是台式计算机等非移动终端。
如图4所示,在一个实施例中,提供了一种建立通信通道的方法,本实施例以该方法应用于上述图1以及图2中的服务器来举例说明。该方法具体包括如下步骤:
步骤402,接收分别来自多个终端的通信请求。
具体地,这里的终端为图1以及图2中的终端104,多个终端至少为2个,最好为3个以上。通信请求是用以向服务器请求建立终端之间通信通道的请求,携带有用于建立通信通道的必要数据,比如发起该通信请求的终端的物理地址和/或网络地址等。物理地址比如MAC(MediaAccessControl)地址,网络地址比如IP地址(InternetProtocolAddress,网际协议地址)。
终端可以不登录就触发向服务器发送通信请求。终端可以通过检测预设操作来触发向服务器发送通信请求。比如终端可以提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向服务器发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。该终端也可以通过终端的触摸板或者摄像头检测到手势操作,或者通过终端的运动传感器检测到的符合预设运动条件的终端运动时触发向服务器发送通信请求。符合预设运动条件的终端运动比如超过预设晃动幅度的终端的晃动,或者比如超过预设翻转角度的终端的翻转等。
步骤404,根据接收到的通信请求确定同时发起或者同时接收到的通信请求。
可以理解的是,计算机技术中的同时可以是指两个或者两个以上的时间点非常接近,并不一定要求两个或者两个以上的时间点必须完全相同。这里同时发起的通信请求是指发起相应通信请求的时间的差距不超过预设值,类似地,同时接收到的通信请求则是指接收到相应通信请求的时间的差距不超过预设值。这里的预设值为小于等于2秒,最好小于等于1秒。
根据接收到的通信请求确定同时发起或者同时接收到的通信请求可以采用多种方式。在一个实施例中,步骤404包括:获取接收到的通信请求各自携带的请求发起时间,将请求发起时间一致的通信请求确定为同时发起的通信请求。具体地,本实施例中,终端在生成通信请求时在通信请求中携带请求发起时间,这样服务器在接收到通信请求后就可以获取每个通信请求中的请求发起时间,比较多个通信请求所携带的请求发起时间的差距是否在预设值以内,若是则判定其为发起时间一致的通信请求,从而将其确定为同时发起的通信请求。
在一个实施例中,步骤404包括:记录接收通信请求时的请求接收时间,将请求接收时间一致的通信请求确定为同时接收到的通信请求。具体地,本实施中,以接收到通信请求的请求接收时间为依据来判断多个通信请求是否为同时接收到的通信请求。通过记录接收到每个通信请求时的请求接收时间,可比较多个通信请求各自所对应的请求接收时间的差距是否在预设值以内,若是则判定其为请求接收时间一致的通信请求,从而将其确定为同时接收到的通信请求。
在一个实施例中,步骤404包括:根据接收时间将接收到的通信请求按照预设值的时间区段缓存,将属于同一时间区段的通信请求确定为同时接收到的通信请求。具体地,本实施例中,一个预设值的时间区段为从某一时间点开始经历预设值的时间长度到另一时间点这一区间的时间段。根据接收时间将接收到的通信请求按照预设值的时间区段缓存,是指参照接收到的通信请求的接收时间,将接收时间落在一个预设值的时间区段内的通信请求作为一类为缓存。这样作为一类缓存的通信请求也就是属于同一时间区段的通信请求,可以直接作为同时接收到的通信请求。
在一个实施例中,步骤404包括:将接收到的通信请求按接收顺序排列为队列,并记录队列中通信请求的请求接收时间,实时将队列中请求接收时间与当前时间的差距超过预设值的通信请求删除,将当前队列中的通信请求作为同时接收到的通信请求。其中当前时间是指执行该步骤404的当下,本实施例中该步骤404可每隔预设值的时间间隔执行一次,相应的当前时间为每隔预设值的时间间隔而获取的当前时间。具体地,本实施例中,将接收到的通信请求按接收顺序排列为队列,这样队列中相邻的通信请求就可以视为同时接收到的通信请求。由于记录有通信请求的请求接收时间,就可以根据记录的请求接收时间来实时维护队列,将过期的通信请求删除,从而队列中剩余的通信请求就作为当前同时接收到的通信请求。
可以理解的是,当不考虑网络延时等影响网络数据传输的因素时,同时发起的通信请求可以当作同时接收到的通信请求处理,同时接收到的通信请求也可以当作同时发起的通信请求处理。
步骤406,对同时发起或者同时接收到的通信请求进行随机匹配。
具体地,在同时发起或者同时接收到的通信请求确定后,服务器就可以对其中的通信请求进行随机匹配,可以随机两两配对来实现任意两个通信请求的匹配,此种情况适用于任意两个陌生人的终端之间的通信通道的建立。还可以进行3个以上的指定数量的通信请求的随机聚类来实现通信请求的随机匹配,这里指定数量可以由服务器指定也可以由终端发送的通信请求所指定,此种情况适用于超过两个陌生人的终端之间的用于群组通信的通信通道的建立。
步骤408,根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
具体地,服务器可以向发起匹配的通信请求中的每个通信请求的终端发送建立通信通道的通知,从而使得接收到通知的终端根据该通知与其它终端建立通信通道。向每个终端发送的通知,根据匹配的通信请求各自所携带的终端的标识生成。其中根据接收该通知的终端的标识可生成该通知中的接收方的信息,根据匹配的通信请求所对应的所有终端中除去接收该通知的终端的标识,可以生成该通知中用于使接收该通知的终端建立通信通道所需要的必要数据。具体必要数据可以是其它终端的标识,此时既可以建立终端之间经由服务器的通信通道,也可以建立终端之间的P2P(点对点)通信通道。必要数据还可以是根据其它终端的标识所生成的通信接口标识,接收到通知的终端便可以根据该通信接口标识而与其它终端建立经由服务器的通信通道。
在一个实施例中,终端之间所建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。其中语音通信通道是指用于传送语音的通信通道,可以是适用于移动语音通信的基于移动通信网络的通信通道,也可以是适用于数据通信的基于数据网络的通信通道,比如通过GPRS(GeneralPacketRadioService,通用分组无线服务)通信通道所建立的语音通信通道。即时会话通信通道是指适用于即时通信的通信通道,可以传输文本、图片、表情、界面元素、用户头像、用户签名等即时通信中需要传输的数据。视频通信通道则是适用于视频传输的通信通道,适用于视频聊天的场景。
在一个实施例中,建立了通信通道的终端之间可以通过该通信通道进行通信,且当其中任意终端以用户标识登录后通过服务器向另一终端发起建立好友关系的请求后,服务器接收另一个终端以用户标识登录后发起的确认建立好友关系的反馈,从而建立两个用户标识之间的好友关系。
上述建立通信通道的方法,接收到多个终端发来的通信请求后,将同时发起或者同时接收到的通信请求进行随机匹配,这些同时发起或者同时接收到的通信请求表示发起相应通信请求的用户都具有与陌生人通信的意图,通过随机匹配能够自动将两个具有通信意图的用户联系起来。然后根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道,这样直接建立起两个用户的终端之间的通信通道,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。
如图5所示,在另一个实施例中,一种建立通信通道的方法,具体包括如下步骤:
步骤502,接收分别来自多个终端的通信请求。
具体地,终端向服务器发送的通信请求可携带有用于建立通信通道的必要数据,比如发起该通信请求的终端的物理地址和/或网络地址等。终端可以通过检测预设操作来触发向服务器发送通信请求。比如终端可以提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向服务器发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。该终端也可以通过终端的触摸板或者摄像头检测到手势操作,或者用于通过终端的运动传感器检测到的符合预设运动条件的终端运动时触发向服务器发送通信请求。
步骤504,根据接收到的通信请求确定同时发起或者同时接收到的通信请求。
具体地,如上所述,根据接收到的通信请求确定同时发起或者同时接收到的通信请求可以采用多种方式,服务器可以获取接收到的通信请求各自携带的请求发起时间,将请求发起时间一致的通信请求确定为同时发起的通信请求。服务器也可以记录接收通信请求时的请求接收时间,将请求接收时间一致的通信请求确定为同时接收到的通信请求。服务器也可以根据接收时间将接收到的通信请求按照预设值的时间区段缓存,将属于同一时间区段的通信请求确定为同时接收到的通信请求。服务器还可以将接收到的通信请求按接收顺序排列为队列,并记录队列中通信请求的请求接收时间,实时将队列中请求接收时间与当前时间的差距超过预设值的通信请求删除,将当前队列中的通信请求作为同时接收到的通信请求。
步骤506,检测到所述同时发起或者同时接收到的通信请求中携带有通信对象需求信息时,获取所述通信对象需求信息。
具体地,各个终端可以在触发向服务器发送通信请求前,设定通信对象需求信息,用于表示意图与之建立通信通道的陌生人需要满足的条件。通信对象需求信息可以用预设种类的用户属性标识和相应的用户属性值表示,比如性别:女,地理位置:青海,年龄:20-25等。通信对象需求信息也可以用按预设顺序排列的用户属性值序列来直接表示,其中用户属性值所对应的用户属性用其所处位置来区分,没有相应用户属性值的可以在用户属性值序列中相应位置处用空值或者其它特殊符号来表示,比如女,青海,20-25。
多个终端中,可以部分终端设置有通信对象需求信息,相应地通信请求中将携带有通信对象需求信息,而另外部分的终端则可以不设置通信对象需求信息,相应地其发起的通信请求中将不携带通信对象需求信息。终端是否设置通信对象需求信息可以根据用户需要来确定。对于同时发起或者同时接收到的通信请求中的每个通信请求,服务器检测其是否携带有通信对象需求信息,如果检测到就获取该通信请求中的通信对象需求信息,再检测下一个通信请求;若未检测到就直接继续处理下一个,直至将同时发起或者同时接收到的通信请求中的每个通信请求检测完毕。
步骤508,检测到同时发起或者同时接收到的通信请求中携带有用户标识时,提取用户标识所对应的用户属性。
具体地,携带有用户标识的通信请求是以该用户标识登录的终端所发起的,服务器将从携带有用户标识的通信请求中获取用户标识,并从用户数据库中提取该用户标识所对应的用户属性,该用户属性可以是用户性别、用户所处地理位置、兴趣爱好以及年龄分布等。对于不携带用户标识的通信请求,则不提取用户属性。上述步骤506和步骤508的执行顺序可以调换也可以同时执行。
步骤510,分别判断对应不同的通信请求的通信对象需求信息和用户属性是否匹配。
具体地,对于同时发起或者同时接收到的通信请求,分别两两判断对应不同的通信请求的通信对象需求信息和用户属性是否匹配,具体分别判断一个通信请求所对应的需求信息与另一个通信请求所对应的用户属性是否匹配,以优先满足通信请求所携带的通信对象需求信息。
步骤512,将判断为匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配。
具体地,若判定一个通信请求所对应的需求信息与另一个通信请求所对应的用户属性匹配,则将对应该匹配的需求信息和用户属性的通信请求进行匹配。若存在对应一个通信请求的通信对象需求信息与多个通信请求所对应的用户属性分别匹配,则可将该通信请求与多个通信请求中随机的一个或者指定数量的匹配。
在其它实施例中,若判断为匹配的通信对象需求信息和用户属性为双向匹配,则将判断为双向匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配,若存在多个则随机在其中选取一个或者指定数量的通信请求匹配。其中双向匹配是指一个通信请求所对应的需求信息与另一个通信请求所对应的用户属性匹配,并且该一个通信请求所对应的用户属性也与该另一个通信请求所对应的通信对象需求信息匹配。
步骤514,将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。
具体地,通过步骤512中对通信请求的匹配,同时发起或者同时接收到的通信请求中已经有部分通信请求得到的匹配结果,对于除去这部分的剩余未匹配的通信请求则进行随机匹配。
步骤516,根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
具体地,服务器可以向发起匹配的通信请求中的每个通信请求的终端发送建立通信通道的通知,从而使得接收到通知的终端根据该通知与其它终端建立通信通道。向每个终端发送的通知,根据匹配的通信请求各自所携带的终端的标识生成。其中根据接收该通知的终端的标识可生成该通知中的接收方的信息,根据匹配的通信请求所对应的所有终端中除去接收该通知的终端的标识,可以在该通知中生成接收该通知的终端建立通信通道所需要的必要数据。终端之间所建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。
本实施例提供的建立通信通道的方法,先根据用户设定的通信对象需求信息进行通信请求的匹配,当无法匹配时才进行随机匹配,可以使得建立了通信通道的陌生人尽量优先满足用户需求,一定程度上保证通信安全,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
如图6所示,在再一个实施例中,一种建立通信通道的方法,具体包括如下步骤:
步骤602,接收分别来自多个终端的通信请求。
具体地,终端向服务器发送的通信请求可携带有用于建立通信通道的必要数据,比如发起该通信请求的终端的物理地址和/或网络地址等。终端可以通过检测预设操作来触发向服务器发送通信请求。比如终端可以提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向服务器发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。该终端也可以通过终端的触摸板或者摄像头检测到手势操作,或者用于通过终端的运动传感器检测到的符合预设运动条件的终端运动时触发向服务器发送通信请求。
步骤604,根据接收到的通信请求确定同时发起或者同时接收到的通信请求。
具体地,如上,根据接收到的通信请求确定同时发起或者同时接收到的通信请求可以采用多种方式,服务器可以获取接收到的通信请求各自携带的请求发起时间,将请求发起时间一致的通信请求确定为同时发起的通信请求。服务器也可以记录接收通信请求时的请求接收时间,将请求接收时间一致的通信请求确定为同时接收到的通信请求。服务器也可以根据接收时间将接收到的通信请求按照预设值的时间区段缓存,将属于同一时间区段的通信请求确定为同时接收到的通信请求。服务器还可以将接收到的通信请求按接收顺序排列为队列,并记录队列中通信请求的请求接收时间,实时将队列中请求接收时间与当前时间的差距超过预设值的通信请求删除,将当前队列中的通信请求作为同时接收到的通信请求。
步骤606,检测到同时发起或者同时接收到的通信请求中携带有用户标识时,提取用户标识所对应的用户属性。
具体地,携带有用户标识的通信请求是以该用户标识登录的终端所发起的,服务器将从携带有用户标识的通信请求中获取用户标识,并从用户数据库中提取该用户标识所对应的用户属性,该用户属性可以是用户性别、用户所处地理位置、兴趣爱好以及年龄分布等。对于不携带用户标识的通信请求,则不提取用户属性。
步骤608,计算不同的通信请求所对应的用户属性之间的相似度。
具体地,对于同时发起或者同时接收到的通信请求中的通信请求,两两计算相应的用户属性之间的相似度。相似度是对两个通信请求的用户属性相似程度的量化,可以用打分形式来量化,比如可以比较两个用户属性,将其中相同的部分记为一个正分值,而不同的部分则不计分值,从而可获得一个表示相似度的总分值。
不同的通信请求所对应的用户属性之间的相似度也可以通过计算两个用户属性之间的文本相似度来计算获得,比如可以通过最少编辑距离算法来计算两者的相似度。假设A、B为两个字符串,定义编辑距离为把A转换成B需要的最少删除(删除A中一个字符)、插入(在A中插入一个字符)和替换(把A中的某个字符替换成另一个字符)的次数。最少编辑距离算法具体步骤为将具有较长文本的用户属性的文本作为基准文本,则另一个用户属性的文本称为短文本。则遍历分段之后的短文本,发现长文本包含短文本子句后在长本文中移除,未发现匹配的字句累加长度。比较剩余文本长度与两段文本长度和,其比值为不匹配比率,对该不匹配比率进行负相关的运算,比如被1减去,则可获得相似度。
步骤610,将相似度高于预设阈值的用户属性所对应的通信请求进行匹配。
具体地,根据用户属性的相似度来对通信请求进行匹配,将相似度高于预设阈值的用户属性所对应的通信请求作为匹配的通信请求。该预设阈值可以根据需要设定。
步骤612,将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。
具体地,通过步骤610中对通信请求的匹配,同时发起或者同时接收到的通信请求中已经有部分通信请求得到的匹配结果,对于除去这部分的剩余未匹配的通信请求则进行随机匹配。
步骤614,根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
具体地,服务器可以向发起匹配的通信请求中的每个通信请求的终端发送建立通信通道的通知,从而使得接收到通知的终端根据该通知与其它终端建立通信通道。向每个终端发送的通知,根据匹配的通信请求各自所携带的终端的标识生成。其中根据接收该通知的终端的标识可生成该通知中的接收方的信息,根据匹配的通信请求所对应的所有终端中除去接收该通知的终端的标识,可以在该通知中生成接收该通知的终端建立通信通道所需要的必要数据。终端之间所建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。
本实施例提供的建立通信通道的方法,通过计算不同的通信请求对应的用户属性之间的相似度,优先将具有类似用户属性的陌生人联系起来建立通信通道,使得建立了通信通道的陌生人之间具有更多类似的用户属性,满足潜在的用户需求,提高通信质量,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,上述图5以及图6中的建立通信通道的方法可以结合。具体在图5所示的建立通信通道的方法的基础上,先执行步骤502~步骤512,再执行步骤608~步骤614,其中步骤608具体为计算同时发起或者同时接收到的通信请求中剩余未匹配的不同的通信请求所对应的用户属性之间的相似度。本实施例中,先根据用户设定的通信对象需求信息进行通信请求的匹配,再通过计算不同的通信请求对应的用户属性之间的相似度,将剩余的通信请求进行匹配,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。尽量满足用户提出的或者潜在的用户需求,提高通信质量。
下面用一个具体的应用场景来说明上述建立通信通道的方法的原理,本应用场景以该方法应用于服务器来进行说明。参考图7,假设有四个互不相识的用户分别为用户A、用户B、用户C和用户D,分别操作终端702、703、704和705,且每个终端分别与服务器706通过网络连接。四个用户分别通过各自的终端分别同时发起通信请求,参照图8,其中用户A通过终端702提供的图形界面,在不设置通信对象需求信息的情况下,点击通信请求触发控件802向服务器706发起随机通信请求。用户B则通过终端703提供的图形界面,在通信对象需求信息设置区域804中设置通信对象需求信息,比如性别、年龄段等,进而点击通信请求触发控件802以向服务器706发起携带有通信对象需求信息的通信请求。类似地,用户C通过终端704向服务器706发起随机通信请求。用户D通过终端705提供的图形界面,点击登录触发控件806凭借用户标识登录后,点击通信请求触发控件802以向服务器706发起携带有用户标识的通信请求。
服务器在接收到多个终端发来的通信请求后,确定四个通信请求为同时发起或者接收到的通信请求,并进行分析。对于携带有用户标识的通信请求,如用户D发起的通信请求,则提取用户标识所对应的用户属性。对于携带有通信对象需求信息的通信请求,如用户B发起的通信请求,则从其中获取通信对象需求信息。判断获取到的通信对象需求信息和提取出的用户属性是否匹配,若匹配则将两者通信请求进行匹配,从而分别向终端703和终端705返回建立通信通道的通知,使得终端703和终端705之间建立通信通道。对于剩余的终端701和终端703所发起的通信请求,则进行随机匹配,分别向终端701和终端703返回建立另一个通信通道的通知,从而使得终端701和终端703之间建立通信通道。这样互为陌生人的用户A和用户C之间,用户B和用户D,就可以基于建立的通信通道进行通信。
如图9所示,在一个实施例中,提供了一种建立通信通道的方法,本实施例以该方法应用于上述图1以及图2中的一个终端来举例说明。该方法具体包括如下步骤:
步骤902,向服务器发送第一通信请求,使服务器在与第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
为了便于描述,这里将本终端发送的通信请求称为第一通信请求,而将其他终端发送的通信请求称为第二通信请求,第一通信请求和第二通信请求统称为通信请求。第一通信请求和第二通信请求各自携带有用于建立通信通道的必要数据,比如发起相应的通信请求的终端的物理地址和/或网络地址等。
本终端可以不登录就触发向服务器发送第一通信请求。本终端可以通过检测预设操作来触发向服务器发送通信请求。比如本终端可以提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向服务器发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。本终端也可以通过终端的触摸板或者摄像头检测到手势操作,或者用于通过终端的运动传感器检测到的符合预设运动条件的终端运动时触发向服务器发送通信请求。
第一通信请求用于使服务器在与第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。具体地,服务器在收到分别来自多个终端的通信请求后,确定与第一通信请求同时发起或者同时接收到的第二通信请求集合,从而从该集合中随机确定与第一通信请求匹配的第二通信请求。服务器可以随机两两配对来实现任意两个通信请求的匹配,也可以进行3个以上的指定数量的通信请求的随机聚类来实现通信请求的随机匹配。这里指定数量可以由服务器指定也可以由第一通信请求所指定。
步骤904,接收服务器返回的建立通信通道的通知;通知根据匹配的第二通信请求所携带的终端的标识生成。
服务器可以向发起匹配的通信请求中的每个通信请求的终端发送建立通信通道的通知,从而使得接收到通知的终端根据该通知与其它终端建立通信通道。向每个终端发送的通知,根据匹配的通信请求各自所携带的终端的标识生成。其中根据第一通信请求所携带的终端的标识可生成该通知中的接收方的信息,根据匹配的第二通信请求所携带的终端的标识,可以生成该通知中用于使接收该通知的终端建立通信通道所需要的必要数据。
步骤906,根据通知自动建立与终端的通信通道。
具体地,通知中用于使接收该通知的终端建立通信通道所需要的必要数据可以是匹配的第二通信请求所携带的终端的标识,此时既可以建立终端之间经由服务器的通信通道,也可以建立终端之间的P2P通信通道。必要数据还可以是根据匹配的第二通信请求所携带的终端的标识所生成的通信接口标识,本终端便可以根据该通信接口标识而与其它终端建立经由服务器的通信通道。在一个实施例中,终端之间所建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。
在一个实施例中,本终端可以与建立了通信通道的另一个终端进行通信,当以第一用户标识登录后,通过服务器向另一个终端发起建立好友关系的请求,使得服务器接收另一个终端以第二用户标识登录后发起的确认建立好友关系的反馈,从而建立第一用户标识和第二用户标识之间的好友关系。
上述建立通信通道的方法,向服务器发送了第一通信请求后,服务器在与第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求,这样发送第一通信请求和发送第二通信请求的用户都具有与陌生人通信的意图,通过随机匹配能够自动将两个具有通信意图的用户联系起来。然后接收到服务器返回的根据匹配的第二通信请求所生成的通知后,通过该通知就可以与另一个终端建立通信通道,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。
在一个实施例中,第一通信请求携带有第一通信对象需求信息,用于使服务器将具有与第一通信对象需求信息匹配的用户属性的第二通信请求确定为与第一通信请求匹配的第二通信请求。第一通信对象需求信息还用于使服务器当未查找到具有与第一通信对象需求信息匹配的用户属性的第二通信请求时,在第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
具体地,本实施例中,第一通信请求用于使服务器在收到该第一通信请求后,确定与该第一通信请求同时发起或者同时接收到的第二通信请求集合,并获取第一通信请求中的第一对象需求信息以及第二通信请求集合中的第二通信请求中携带的第二用户标识,进而提取获取的第二用户标识所对应的第二用户属性。使得服务器分别判断第一对象需求信息与第二通信请求集合中各个第二通信请求所对应的第二用户属性是否匹配。使得服务器将判断为匹配的第一对象需求信息和与该第一对象需求信息匹配的第二用户属性所对应的第二通信请求进行匹配。当查找到具有与第一通信对象需求信息匹配的第二用户属性的第二通信请求时,将该第二通信请求确定为与第一通信请求匹配的第二通信请求。当未查找到具有与第一通信对象需求信息匹配的第二用户属性的第二通信请求时,则在第二通信请求集合中未匹配的第二通信请求中随机确定与第一通信请求匹配的第二通信请求。其中第一通信对象需求信息与第二通信请求所对应的第二用户属性的匹配可以为双向匹配。
本实施例中,服务器先根据用户设定的通信对象需求信息进行通信请求的匹配,当无法匹配时才进行随机匹配,可以使得建立了通信通道的陌生人尽量优先满足用户需求,一定程度上保证通信安全,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,第一通信请求携带有第一用户标识,用于使服务器提取第一用户标识所对应的第一用户属性,将第二通信请求集合中具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求确定为与第一通信请求匹配的第二通信请求。第一用户标识还用于使服务器当未查找到具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求时,在第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
具体地,第一通信请求用于使服务器在接收到该第一通信请求后,确定与该第一通信请求同时发起或者同时接收到的第二通信请求集合,并获取第一通信请求中的第一用户标识以及第二通信请求集合中的第二通信请求中携带的第二通信对象需求信息,进而提取第一用户标识所对应的第一用户属性。使得服务器分别判断第一用户属性与第二通信请求集合中各个第二通信请求所对应的第二通信对象需求信息是否匹配。使得服务器将判断为匹配的第一用户属性和与该第一用户属性匹配的第二对象需求信息所对应的第二通信请求进行匹配。当查找到具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求时,将该第二通信请求确定为与第一通信请求匹配的第二通信请求。当未查找到具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求时,则在第二通信请求集合中未匹配的第二通信请求中随机确定与第一通信请求匹配的第二通信请求。其中第一通信对象需求信息与第二通信请求所对应的第二用户属性的匹配可以为双向匹配。
本实施例中,服务器先根据其它用户设定的通信对象需求信息进行通信请求的匹配,当无法匹配时才进行随机匹配,可以使得建立了通信通道的陌生人尽量优先满足用户需求,一定程度上保证通信安全,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,第一通信请求携带有第一用户标识,用于使服务器提取第一用户标识所对应的第一用户属性,并计算第一用户属性与第二通信请求集合中各个第二通信请求所对应的第二用户属性的相似度,将高于预设值的相似度所对应的第二通信请求确定为与第一通信请求匹配的第二通信请求;当未查找到高于预设值的相似度时,在第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
具体地,本实施例中,第一通信请求用于使服务器在接收到第一通信请求后,确定与该第一通信请求同时发起或者同时接收到的第二通信请求集合,并获取第一通信请求中携带的第一用户标识以及第二通信请求集合中的第二通信请求中携带的第二用户标识,进而提取第一用户标识所对应的第一用户属性以及第二用户标识所对应的第二用户属性。使得服务器分别计算第一用户属性与第二用户属性之间的相似度。使得服务器在查找到与第一用户属性的相似度高于预设阈值的第二用户属性时,将计算出的相似度高于预设阈值的第二用户属性所对应的第二通信请求与第一通信请求匹配。使得服务器在未查找到与第一用户属性的相似度高于预设阈值的第二用户属性时,在第二通信请求集合中剩余未匹配的第二通信请求中随机确定与第一通信请求匹配的第二通信请求。
本实施例中,通过计算不同的通信请求对应的用户属性之间的相似度,优先将具有类似用户属性的陌生人联系起来建立通信通道,使得建立了通信通道的陌生人之间具有更多类似的用户属性,满足潜在的用户需求,提高通信质量,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,第一通信请求携带有第一请求发起时间,用于使服务器将携带有与第一请求发起时间一致的第二请求发起时间的第二通信请求作为与第一通信请求同时发起的第二通信请求。具体地,本实施例中,终端在生成第一通信请求时在第一通信请求中携带请求发起时间,这样服务器在接收到第一、第二通信请求后就可以获取每个通信请求中的请求发起时间,比较第二通信请求所携带的请求发起时间与第一通信请求所携带的请求发起时间的差距是否在预设值以内,若是则判定其为与第一通信请求发起时间一致的通信请求,从而将其确定为与第一通信请求同时发起的第二通信请求。
在一个实施例中,第一通信请求用于使服务器记录接收第一通信请求的第一请求接收时间,并将对应记录有与第一请求接收时间一致的第二请求接收时间的第二通信请求作为与第一通信请求同时接收到的第二通信请求。具体地,本实施中,服务器以接收到第一、第二通信请求的请求接收时间为依据来判断第二通信请求是否为与第一通信请求同时接收到的第二通信请求。通过记录接收到每个通信请求时的请求接收时间,可比较第二通信请求所对应的请求接收时间与第一通信请求所对应的请求接收时间之间的差距是否在预设值以内,若是则判定其为与第一通信请求的请求接收时间一致的通信请求,从而将其确定为与第一通信请求同时接收到的通信请求。
在一个实施例中,第一通信请求用于使服务器根据接收时间将接收到的第一通信请求和第二通信请求按照预设值的时间区段缓存,将与第一通信请求属于同一时间区段的第二通信请求确定为与第一通信请求同时接收到的第二通信请求。具体地,本实施例中,一个预设值的时间区段为从某一时间点开始经历预设值的时间长度到另一时间点这一区间的时间段。根据接收时间将接收到的第一通信请求和第二通信请求按照预设值的时间区段缓存,是指参照接收到的第一、第二通信请求的接收时间,将接收时间落在一个预设值的时间区段内的通信请求作为一类为缓存。这样作为一类缓存的通信请求也就是属于同一时间区段的通信请求,可以直接作为同时接收到的通信请求。
在一个实施例中,第一通信请求用于使服务器将接收到的第一通信请求加入通信请求按接收顺序所排列成的队列中,将队列中除第一通信请求的通信请求作为与第一通信请求同时接收到的第二通信请求集合;其中,队列中的通信请求记录有请求接收时间,且队列中请求接收时间与当前时间的差距超过预设值的通信请求被实时删除。具体地,本实施例中,将接收到的第一、第二通信请求按接收顺序排列为队列,这样队列中相邻的通信请求就可以视为同时接收到的通信请求。由于记录有通信请求的请求接收时间,就可以根据记录的请求接收时间来实时维护队列,将过期的通信请求删除,从而队列中剩余的通信请求就作为当前同时接收到的通信请求。
如图10所示,在一个实施例中,提供了一种建立通信通道的装置1000,用于实现上述任意实施例的应用于服务器的建立通信通道的方法。该建立通信通道的装置1000包括:通信请求接收模块1010、通信请求处理模块1020、随机匹配模块1030和通信通道建立模块1040。
通信请求接收模块1010,用于接收分别来自多个终端的通信请求。
具体地,通信请求是用以向建立通信通道的装置1000请求建立终端之间通信通道的请求,携带有用于建立通信通道的必要数据,比如发起该通信请求的终端的物理地址和/或网络地址等。物理地址比如MAC地址,网络地址比如IP地址。
终端可以不登录就触发向建立通信通道的装置1000发送通信请求。终端可以通过检测预设操作来触发向建立通信通道的装置1000发送通信请求。比如终端可以提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向建立通信通道的装置1000发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。该终端也可以通过终端的触摸板或者摄像头检测到手势操作,或者用于通过终端的运动传感器检测到的符合预设运动条件的终端运动时触发向建立通信通道的装置1000发送通信请求。
通信请求处理模块1020,用于根据接收到的通信请求确定同时发起或者同时接收到的通信请求。
这里同时发起的通信请求是指发起相应通信请求的时间的差距不超过预设值,类似地,同时接收到的通信请求则是指接收到相应通信请求的时间的差距不超过预设值。这里的预设值为小于等于2秒,最好小于等于1秒。
在一个实施例中,通信请求处理模块1020还用于获取接收到的通信请求各自携带的请求发起时间,将请求发起时间一致的通信请求确定为同时发起的通信请求。
在一个实施例中,通信请求处理模块1020还用于记录接收通信请求时的请求接收时间,将请求接收时间一致的通信请求确定为同时接收到的通信请求。
在一个实施例中,通信请求处理模块1020还用于根据接收时间将接收到的通信请求按照预设值的时间区段缓存,将属于同一时间区段的通信请求确定为同时接收到的通信请求。
在一个实施例中,通信请求处理模块1020还用于将接收到的通信请求按接收顺序排列为队列,并记录队列中通信请求的请求接收时间,实时将队列中请求接收时间与当前时间的差距超过预设值的通信请求删除,将当前队列中的通信请求作为同时接收到的通信请求。
可以理解的是,当不考虑网络延时等影响网络数据传输的因素时,同时发起的通信请求可以当作同时接收到的通信请求处理,同时接收到的通信请求也可以当作同时发起的通信请求处理。
随机匹配模块1030,用于对同时发起或者同时接收到的通信请求进行随机匹配。
具体地,在同时发起或者同时接收到的通信请求确定后,随机匹配模块1030就可以用于对其中的通信请求进行随机匹配,可以随机两两配对来实现任意两个通信请求的匹配,此种情况适用于任意两个陌生人的终端之间的通信通道的建立。随机匹配模块1030还可以用于进行任意指定数量的通信请求的随机聚类来实现通信请求的随机匹配,这里指定数量可以由该建立通信通道的装置1000指定也可以由终端发送的通信请求所指定,此种情况适用于超过两个陌生人的终端之间的用于群组通信的通信通道的建立。
通信通道建立模块1040,用于根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
具体地,通信通道建立模块1040可以用于向发起匹配的通信请求中的每个通信请求的终端发送建立通信通道的通知,从而使得接收到通知的终端根据该通知与其它终端建立通信通道。向每个终端发送的通知,根据匹配的通信请求各自所携带的终端的标识生成。其中根据接收该通知的终端的标识可生成该通知中的接收方的信息,根据匹配的通信请求所对应的所有终端中除去接收该通知的终端的标识,可以生成该通知中用于使接收该通知的终端建立通信通道所需要的必要数据。具体必要数据可以是其它终端的标识,此时既可以建立终端之间经由建立通信通道的装置1000的通信通道,也可以建立终端之间的P2P通信通道。必要数据还可以是根据其它终端的标识所生成的通信接口标识,接收到通知的终端便可以根据该通信接口标识而与其它终端建立经由建立通信通道的装置1000的通信通道。
在一个实施例中,终端之间所建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。在一个实施例中,建立了通信通道的终端之间可以通过该通信通道进行通信,且当其中任意终端以用户标识登录后通过建立通信通道的装置1000向另一终端发起建立好友关系的请求后,建立通信通道的装置1000用于接收另一个终端以用户标识登录后发起的确认建立好友关系的反馈,从而建立两个用户标识之间的好友关系。
上述建立通信通道的装置1000,接收到多个终端发来的通信请求后,将同时发起或者同时接收到的通信请求进行随机匹配,这些同时发起或者同时接收到的通信请求表示发起相应通信请求的用户都具有与陌生人通信的意图,通过随机匹配能够自动将两个具有通信意图的用户联系起来。然后根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道,这样直接建立起两个用户的终端之间的通信通道,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。
如图11所示,在一个实施例中,该建立通信通道的装置1000还包括:通信对象需求信息获取模块1050、用户属性提取模块1060、判断模块1070和第一匹配执行模块1080。
通信对象需求信息获取模块1050,用于检测到所述同时发起或者同时接收到的通信请求中携带有通信对象需求信息时,获取所述通信对象需求信息。通信对象需求信息可以用预设种类的用户属性标识和相应的用户属性值表示。通信对象需求信息也可以用按预设顺序排列的用户属性值序列来直接表示,其中用户属性值所对应的用户属性用其所处位置来区分,没有相应用户属性值的可以在用户属性值序列中相应位置处用空值或者其它特殊符号来表示。
用户属性提取模块1060,用于检测到同时发起或者同时接收到的通信请求中携带有用户标识时,提取用户标识所对应的用户属性。用户属性提取模块1060用于从携带有用户标识的通信请求中获取用户标识,并从用户数据库中提取该用户标识所对应的用户属性,该用户属性可以是用户性别、用户所处地理位置、兴趣爱好以及年龄分布等。对于不携带用户标识的通信请求,则不提取用户属性。
判断模块1070,用于分别判断对应不同的通信请求的通信对象需求信息和用户属性是否匹配。
第一匹配执行模块1080,用于将判断为匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配。具体地,若判定一个通信请求所对应的需求信息与另一个通信请求所对应的用户属性匹配,第一匹配执行模块1080则可用于将对应该匹配的需求信息和用户属性的通信请求进行匹配。若存在对应一个通信请求的通信对象需求信息与多个通信请求所对应的用户属性分别匹配,第一匹配执行模块1080则可用于将该通信请求与多个通信请求中随机的一个或者指定数量的匹配。在其它实施例中,第一匹配执行模块1080还用于若判断为匹配的通信对象需求信息和用户属性为双向匹配,则将判断为双向匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配。
随机匹配模块1030,还用于将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。同时发起或者同时接收到的通信请求中已经有部分通信请求得到的匹配结果,随机匹配模块1030用于对于除去这部分的剩余未匹配的通信请求则进行随机匹配。
本实施的建立通信通道的装置1000,先根据用户设定的通信对象需求信息进行通信请求的匹配,当无法匹配时才进行随机匹配,可以使得建立了通信通道的陌生人尽量优先满足用户需求,一定程度上保证通信安全,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
如图12所示,在一个实施例中,该建立通信通道的装置1000还包括用户属性提取模块1090、相似度计算模块1100和第二匹配执行模块1110。这里的用户属性提取模块1090可以与上述用户属性提取模块1060为同一模块。
用户属性提取模块1090,用于检测到同时发起或者同时接收到的通信请求中携带有用户标识时,提取用户标识所对应的用户属性。具体地,用户属性提取模块1090用于从携带有用户标识的通信请求中获取用户标识,并从用户数据库中提取该用户标识所对应的用户属性,该用户属性可以是用户性别、用户所处地理位置、兴趣爱好以及年龄分布等。对于不携带用户标识的通信请求,则不提取用户属性。
相似度计算模块1100,用于计算不同的通信请求所对应的用户属性之间的相似度。具体地,相似度计算模块1100可用于对于同时发起或者同时接收到的通信请求中的通信请求,两两计算相应的用户属性之间的相似度。相似度是对两个通信请求的用户属性相似程度的量化,可以用打分形式来量化,比如可以比较两个用户属性,将其中相同的部分记为一个正分值,而不同的部分则不计分值。不同的通信请求所对应的用户属性之间的相似度也可以通过计算两个用户属性之间的文本相似度来计算获得。
第二匹配执行模块1110,用于将相似度高于预设阈值的用户属性所对应的通信请求进行匹配。
随机匹配模块1030,还用于将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。同时发起或者同时接收到的通信请求中已经有部分通信请求得到的匹配结果,随机匹配模块1030则用于对于除去这部分的剩余未匹配的通信请求则进行随机匹配。
本实施例的建立通信通道的装置1300,通过计算不同的通信请求对应的用户属性之间的相似度,优先将具有类似用户属性的陌生人联系起来建立通信通道,使得建立了通信通道的陌生人之间具有更多类似的用户属性,满足潜在的用户需求,提高通信质量,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,上述图11和图12中的建立通信通道的装置1000可以结合。具体包括通信请求接收模块1010、通信请求处理模块1020、随机匹配模块1030、通信通道建立模块1040、通信对象需求信息获取模块1050、用户属性提取模块1060、判断模块1070、第一匹配执行模块1080、相似度计算模块1100以及第二匹配执行模块1110。其中相似度计算模块1100具体用于计算同时发起或者同时接收到的通信请求中剩余未匹配的不同的通信请求所对应的用户属性之间的相似度。本实施例中,先根据用户设定的通信对象需求信息进行通信请求的匹配,再通过计算不同的通信请求对应的用户属性之间的相似度,将剩余的通信请求进行匹配,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。尽量满足用户提出的或者潜在的用户需求,提高通信质量。
如图13所示,在一个实施例中,提供了一种建立通信通道的装置1300,用于实现上述任意实施例的应用于终端的建立通信通道的方法。该建立通信通道的装置1300包括:通信请求发送单元1310、通知接收单元1320和通信通道建立单元1330。
通信请求发送单元1310,用于向服务器发送第一通信请求,使服务器在与第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
第一通信请求和第二通信请求各自携带有用于建立通信通道的必要数据,比如发起相应的通信请求的终端或装置的物理地址和/或网络地址等。该通信请求发送单元1310可以用于不登录就触发向服务器发送第一通信请求。该通信请求发送单元1310可用于检测预设操作来触发向服务器发送通信请求。比如通信请求发送单元1310可用于提供一个图形界面,在界面中显示一个可操作的控件,当检测到对该控件的点击操作时则触发向服务器发送第一通信请求。该控件上或者周围可以显示有功能描述文字标签,这里的点击操作可以是单击、双击等操作。通信请求发送单元1310也可以用于通过触摸板或者摄像头检测到手势操作,或者用于通过运动传感器检测到的符合预设运动条件的运动时触发向服务器发送通信请求。
第一通信请求用于使服务器在与第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。具体地,服务器在收到分别来自多个终端或装置的通信请求后,确定与第一通信请求同时发起或者同时接收到的第二通信请求集合,从而从该集合中随机确定与第一通信请求匹配的第二通信请求。服务器可以随机两两配对来实现任意两个通信请求的匹配,也可以进行任意指定数量的通信请求的随机聚类来实现通信请求的随机匹配。这里指定数量可以由服务器指定也可以由第一通信请求所指定。
通知接收单元1320,用于接收服务器返回的建立通信通道的通知;通知根据匹配的第二通信请求所携带的终端的标识生成。
服务器可以用于向发起匹配的通信请求中的每个通信请求的终端或装置发送建立通信通道的通知,从而使得接收到通知的终端或装置根据该通知与其它终端建立通信通道。向每个终端或装置发送的通知,根据匹配的通信请求各自所携带的终端或装置的标识生成。其中根据第一通信请求所携带的建立通信通道的装置1300的标识可生成该通知中的接收方的信息,根据匹配的第二通信请求所携带的终端的标识,可以生成该通知中用于使接收该通知的建立通信通道的装置1300建立通信通道所需要的必要数据。
通信通道建立单元1330,用于根据通知自动建立与终端的通信通道。
具体地,通知中用于使接收该通知的建立通信通道的装置1300建立通信通道所需要的必要数据可以是匹配的第二通信请求所携带的终端的标识,此时通信通道建立单元1330既可以用于建立装置1300与终端之间经由服务器的通信通道,也可以用于建立装置1300与终端之间的P2P通信通道。必要数据还可以是根据匹配的第二通信请求所携带的终端的标识所生成的通信接口标识,通信通道建立单元1330便可以用于根据该通信接口标识而与其它终端建立经由服务器的通信通道。在一个实施例中,建立的通信通道可以为语音通信通道、即时会话通信通道和视频通信通道中的至少一种。
在一个实施例中,建立通信通道的装置1300可以用于与建立了通信通道的另一个终端进行通信,当以第一用户标识登录后,通过服务器向另一个终端发起建立好友关系的请求,使得服务器接收另一个终端以第二用户标识登录后发起的确认建立好友关系的反馈,从而建立第一用户标识和第二用户标识之间的好友关系。
上述建立通信通道的装置,向服务器发送了第一通信请求后,服务器在与第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求,这样发送第一通信请求和发送第二通信请求的用户都具有与陌生人通信的意图,通过随机匹配能够自动将两个具有通信意图的用户联系起来。然后接收到服务器返回的根据匹配的第二通信请求所生成的通知后,通过该通知就可以与另一个终端建立通信通道,陌生人用户之间就可以直接基于该建立的通信通道进行通信,而不需要进行添加好友、选择通信对象等一系列操作,操作简单,提高了操作便利性。
在一个实施例中,第一通信请求携带有第一通信对象需求信息,用于使服务器将具有与第一通信对象需求信息匹配的用户属性的第二通信请求确定为与第一通信请求匹配的第二通信请求。第一通信对象需求信息还用于使服务器当未查找到具有与第一通信对象需求信息匹配的用户属性的第二通信请求时,在第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
具体地,本实施例中,第一通信请求用于使服务器在收到该第一通信请求后,确定与该第一通信请求同时发起或者同时接收到的第二通信请求集合,并获取第一通信请求中的第一对象需求信息以及第二通信请求集合中的第二通信请求中携带的第二用户标识,进而提取获取的第二用户标识所对应的第二用户属性。使得服务器分别判断第一对象需求信息与第二通信请求集合中各个第二通信请求所对应的第二用户属性是否匹配。使得服务器将判断为匹配的第一对象需求信息和与该第一对象需求信息匹配的第二用户属性所对应的第二通信请求进行匹配。当查找到具有与第一通信对象需求信息匹配的第二用户属性的第二通信请求时,将该第二通信请求确定为与第一通信请求匹配的第二通信请求。当未查找到具有与第一通信对象需求信息匹配的第二用户属性的第二通信请求时,则在第二通信请求集合中未匹配的第二通信请求中随机确定与第一通信请求匹配的第二通信请求。其中第一通信对象需求信息与第二通信请求所对应的第二用户属性的匹配可以为双向匹配。
本实施例中,服务器先根据用户设定的通信对象需求信息进行通信请求的匹配,当无法匹配时才进行随机匹配,可以使得建立了通信通道的陌生人尽量优先满足用户需求,一定程度上保证通信安全,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,第一通信请求携带有第一用户标识,用于使服务器提取第一用户标识所对应的第一用户属性,将第二通信请求集合中具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求确定为与第一通信请求匹配的第二通信请求。第一用户标识还用于使服务器当未查找到具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求时,在第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
具体地,第一通信请求用于使服务器在接收到该第一通信请求后,确定与该第一通信请求同时发起或者同时接收到的第二通信请求集合,并获取第一通信请求中的第一用户标识以及第二通信请求集合中的第二通信请求中携带的第二通信对象需求信息,进而提取第一用户标识所对应的第一用户属性。使得服务器分别判断第一用户属性与第二通信请求集合中各个第二通信请求所对应的第二通信对象需求信息是否匹配。使得服务器将判断为匹配的第一用户属性和与该第一用户属性匹配的第二对象需求信息所对应的第二通信请求进行匹配。当查找到具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求时,将该第二通信请求确定为与第一通信请求匹配的第二通信请求。当未查找到具有与第一用户属性匹配的第二通信对象需求信息的第二通信请求时,则在第二通信请求集合中未匹配的第二通信请求中随机确定与第一通信请求匹配的第二通信请求。其中第一通信对象需求信息与第二通信请求所对应的第二用户属性的匹配可以为双向匹配。
本实施例中,服务器先根据其它用户设定的通信对象需求信息进行通信请求的匹配,当无法匹配时才进行随机匹配,可以使得建立了通信通道的陌生人尽量优先满足用户需求,一定程度上保证通信安全,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,第一通信请求携带有第一用户标识,用于使服务器提取第一用户标识所对应的第一用户属性,并计算第一用户属性与第二通信请求集合中各个第二通信请求所对应的第二用户属性的相似度,将高于预设值的相似度所对应的第二通信请求确定为与第一通信请求匹配的第二通信请求;当未查找到高于预设值的相似度时,在第二通信请求集合中随机确定与第一通信请求匹配的第二通信请求。
具体地,本实施例中,第一通信请求用于使服务器在接收到第一通信请求后,确定与该第一通信请求同时发起或者同时接收到的第二通信请求集合,并获取第一通信请求中携带的第一用户标识以及第二通信请求集合中的第二通信请求中携带的第二用户标识,进而提取第一用户标识所对应的第一用户属性以及第二用户标识所对应的第二用户属性。使得服务器分别计算第一用户属性与第二用户属性之间的相似度。使得服务器在查找到与第一用户属性的相似度高于预设阈值的第二用户属性时,将计算出的相似度高于预设阈值的第二用户属性所对应的第二通信请求与第一通信请求匹配。使得服务器在未查找到与第一用户属性的相似度高于预设阈值的第二用户属性时,在第二通信请求集合中剩余未匹配的第二通信请求中随机确定与第一通信请求匹配的第二通信请求。
本实施例中,通过计算不同的通信请求对应的用户属性之间的相似度,优先将具有类似用户属性的陌生人联系起来建立通信通道,使得建立了通信通道的陌生人之间具有更多类似的用户属性,满足潜在的用户需求,提高通信质量,当不存在用户需求的通信对象时才与随机的一个陌生人用户建立通信通道。
在一个实施例中,第一通信请求携带有第一请求发起时间,用于使服务器将携带有与第一请求发起时间一致的第二请求发起时间的第二通信请求作为与第一通信请求同时发起的第二通信请求。具体地,本实施例中,建立通信通道的装置1300用于在生成第一通信请求时在第一通信请求中携带请求发起时间,这样服务器在接收到第一、第二通信请求后就可以获取每个通信请求中的请求发起时间,比较第二通信请求所携带的请求发起时间与第一通信请求所携带的请求发起时间的差距是否在预设值以内,若是则判定其为与第一通信请求发起时间一致的通信请求,从而将其确定为与第一通信请求同时发起的第二通信请求。
在一个实施例中,第一通信请求用于使服务器记录接收第一通信请求的第一请求接收时间,并将对应记录有与第一请求接收时间一致的第二请求接收时间的第二通信请求作为与第一通信请求同时接收到的第二通信请求。具体地,本实施中,服务器以接收到第一、第二通信请求的请求接收时间为依据来判断第二通信请求是否为与第一通信请求同时接收到的第二通信请求。通过记录接收到每个通信请求时的请求接收时间,可比较第二通信请求所对应的请求接收时间与第一通信请求所对应的请求接收时间之间的差距是否在预设值以内,若是则判定其为与第一通信请求的请求接收时间一致的通信请求,从而将其确定为与第一通信请求同时接收到的通信请求。
在一个实施例中,第一通信请求用于使服务器根据接收时间将接收到的第一通信请求和第二通信请求按照预设值的时间区段缓存,将与第一通信请求属于同一时间区段的第二通信请求确定为与第一通信请求同时接收到的第二通信请求。具体地,本实施例中,一个预设值的时间区段为从某一时间点开始经历预设值的时间长度到另一时间点这一区间的时间段。根据接收时间将接收到的第一通信请求和第二通信请求按照预设值的时间区段缓存,是指参照接收到的第一、第二通信请求的接收时间,将接收时间落在一个预设值的时间区段内的通信请求作为一类为缓存。这样作为一类缓存的通信请求也就是属于同一时间区段的通信请求,可以直接作为同时接收到的通信请求。
在一个实施例中,第一通信请求用于使服务器将接收到的第一通信请求加入通信请求按接收顺序所排列成的队列中,将队列中除第一通信请求的通信请求作为与第一通信请求同时接收到的第二通信请求集合;其中,队列中的通信请求记录有请求接收时间,且队列中请求接收时间与当前时间的差距超过预设值的通信请求被实时删除。具体地,本实施例中,将接收到的第一、第二通信请求按接收顺序排列为队列,这样队列中相邻的通信请求就可以视为同时接收到的通信请求。由于记录有通信请求的请求接收时间,就可以根据记录的请求接收时间来实时维护队列,将过期的通信请求删除,从而队列中剩余的通信请求就作为当前同时接收到的通信请求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种建立通信通道的方法,所述方法包括:
接收分别来自多个终端的通信请求;
根据接收到的通信请求确定同时发起或者同时接收到的通信请求;
对同时发起或者同时接收到的通信请求进行随机匹配;
根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
2.根据权利要求1所述的方法,其特征在于,所述对同时发起或者同时接收到的通信请求进行随机匹配之前,还包括:
检测到所述同时发起或者同时接收到的通信请求中携带有通信对象需求信息时,获取所述通信对象需求信息;
检测到所述同时发起或者同时接收到的通信请求中携带有用户标识时,提取所述用户标识所对应的用户属性;
分别判断对应不同的通信请求的所述通信对象需求信息和所述用户属性是否匹配;
将判断为匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配;
所述对同时发起或者同时接收到的通信请求进行随机匹配,包括:
将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。
3.根据权利要求1所述的方法,其特征在于,所述对同时发起或者同时接收到的通信请求进行随机匹配之前,还包括:
检测到所述同时发起或者同时接收到的通信请求中携带有用户标识时,提取所述用户标识所对应的用户属性;
计算不同的通信请求所对应的用户属性之间的相似度;
将相似度高于预设阈值的用户属性所对应的通信请求进行匹配;
所述对同时发起或者同时接收到的通信请求进行随机匹配,包括:
将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。
4.一种建立通信通道的方法,所述方法包括:
向服务器发送第一通信请求,使所述服务器在与所述第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与所述第一通信请求匹配的第二通信请求;
接收所述服务器返回的建立通信通道的通知;所述通知根据所述匹配的第二通信请求所携带的终端的标识生成;
根据所述通知自动建立与所述终端的通信通道。
5.根据权利要求4所述的方法,其特征在于,所述第一通信请求携带有第一通信对象需求信息,用于使所述服务器将具有与所述第一通信对象需求信息匹配的用户属性的第二通信请求确定为与所述第一通信请求匹配的第二通信请求;当未查找到具有与所述第一通信对象需求信息匹配的用户属性的第二通信请求时,在所述第二通信请求集合中随机确定与所述第一通信请求匹配的第二通信请求。
6.根据权利要求4所述的方法,其特征在于,所述第一通信请求携带有第一用户标识,用于使所述服务器提取所述第一用户标识所对应的第一用户属性,并计算所述第一用户属性与所述第二通信请求集合中各个第二通信请求所对应的第二用户属性的相似度,将高于预设值的相似度所对应的第二通信请求确定为与所述第一通信请求匹配的第二通信请求;当未查找到高于预设值的相似度时,在所述第二通信请求集合中随机确定与所述第一通信请求匹配的第二通信请求。
7.根据权利要求4所述的方法,其特征在于,所述第一通信请求携带有第一用户标识,用于使所述服务器提取所述第一用户标识所对应的第一用户属性,将所述第二通信请求集合中具有与所述第一用户属性匹配的第二通信对象需求信息的第二通信请求确定为与所述第一通信请求匹配的第二通信请求;当未查找到具有与所述第一用户属性匹配的第二通信对象需求信息的第二通信请求时,在所述第二通信请求集合中随机确定与所述第一通信请求匹配的第二通信请求。
8.一种建立通信通道的装置,其特征在于,所述装置包括:
通信请求接收模块,用于接收分别来自多个终端的通信请求;
通信请求处理模块,用于根据接收到的通信请求确定同时发起或者同时接收到的通信请求;
随机匹配模块,用于对同时发起或者同时接收到的通信请求进行随机匹配;
通信通道建立模块,用于根据匹配的通信请求自动建立发起该匹配的通信请求的终端之间的通信通道。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
通信对象需求信息获取模块,用于检测到所述同时发起或者同时接收到的通信请求中携带有通信对象需求信息时,获取所述通信对象需求信息;
用户属性提取模块,用于检测到所述同时发起或者同时接收到的通信请求中携带有用户标识时,提取所述用户标识所对应的用户属性;
判断模块,用于分别判断对应不同的通信请求的所述通信对象需求信息和所述用户属性是否匹配;
第一匹配执行模块,用于将判断为匹配的通信对象需求信息和用户属性各自所对应的通信请求进行匹配;
所述随机匹配模块还用于将同时发起或者同时接收到的通信请求中剩余未匹配的通信请求进行随机匹配。
10.一种建立通信通道的装置,其特征在于,所述装置包括:
通信请求发送单元,用于向服务器发送第一通信请求,使所述服务器在与所述第一通信请求同时发起或者同时接收到的第二通信请求集合中随机确定与所述第一通信请求匹配的第二通信请求;
通知接收单元,用于接收所述服务器返回的建立通信通道的通知;所述通知根据所述匹配的第二通信请求所携带的终端的标识生成;
通信通道建立单元,用于根据所述通知自动建立与所述终端的通信通道。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410529445.9A CN105577504B (zh) | 2014-10-08 | 2014-10-08 | 建立通信通道的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410529445.9A CN105577504B (zh) | 2014-10-08 | 2014-10-08 | 建立通信通道的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105577504A true CN105577504A (zh) | 2016-05-11 |
CN105577504B CN105577504B (zh) | 2020-06-05 |
Family
ID=55887194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410529445.9A Active CN105577504B (zh) | 2014-10-08 | 2014-10-08 | 建立通信通道的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105577504B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871934A (zh) * | 2016-06-23 | 2016-08-17 | 太原脉倜什移动互联科技有限公司 | 陌生人通讯系统 |
CN106209396A (zh) * | 2016-06-30 | 2016-12-07 | 腾讯科技(深圳)有限公司 | 匹配方法及相关装置 |
CN106302445A (zh) * | 2016-08-15 | 2017-01-04 | 北京百度网讯科技有限公司 | 用于处理请求的方法和装置 |
CN107579968A (zh) * | 2017-08-30 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 视频流地址检测方法、装置及服务器 |
CN107864194A (zh) * | 2017-10-27 | 2018-03-30 | 姜俊 | 一种客户端互联系统及方法 |
CN110300051A (zh) * | 2019-06-03 | 2019-10-01 | 上海掌门科技有限公司 | 即时通信方法、设备及计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102281207A (zh) * | 2010-06-11 | 2011-12-14 | 百度在线网络技术(北京)有限公司 | 社区网络中确定用户匹配度并撮合用户聊天的方法和设备 |
CN102629945A (zh) * | 2012-04-16 | 2012-08-08 | 腾讯科技(深圳)有限公司 | 用户信息获取方法、服务器和终端 |
CN102904936A (zh) * | 2012-09-25 | 2013-01-30 | 北京小米科技有限责任公司 | 一种建立会话的方法、服务器、装置、系统及设备 |
CN103916306A (zh) * | 2013-01-04 | 2014-07-09 | 腾讯科技(深圳)有限公司 | 实现即时通信的方法和装置 |
-
2014
- 2014-10-08 CN CN201410529445.9A patent/CN105577504B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102281207A (zh) * | 2010-06-11 | 2011-12-14 | 百度在线网络技术(北京)有限公司 | 社区网络中确定用户匹配度并撮合用户聊天的方法和设备 |
CN102629945A (zh) * | 2012-04-16 | 2012-08-08 | 腾讯科技(深圳)有限公司 | 用户信息获取方法、服务器和终端 |
CN102904936A (zh) * | 2012-09-25 | 2013-01-30 | 北京小米科技有限责任公司 | 一种建立会话的方法、服务器、装置、系统及设备 |
CN103916306A (zh) * | 2013-01-04 | 2014-07-09 | 腾讯科技(深圳)有限公司 | 实现即时通信的方法和装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105871934A (zh) * | 2016-06-23 | 2016-08-17 | 太原脉倜什移动互联科技有限公司 | 陌生人通讯系统 |
CN105871934B (zh) * | 2016-06-23 | 2019-09-17 | 太原脉倜什移动互联科技有限公司 | 陌生人通讯系统 |
CN106209396A (zh) * | 2016-06-30 | 2016-12-07 | 腾讯科技(深圳)有限公司 | 匹配方法及相关装置 |
CN106302445A (zh) * | 2016-08-15 | 2017-01-04 | 北京百度网讯科技有限公司 | 用于处理请求的方法和装置 |
CN106302445B (zh) * | 2016-08-15 | 2019-07-23 | 北京百度网讯科技有限公司 | 用于处理请求的方法和装置 |
CN107579968A (zh) * | 2017-08-30 | 2018-01-12 | 武汉斗鱼网络科技有限公司 | 视频流地址检测方法、装置及服务器 |
CN107579968B (zh) * | 2017-08-30 | 2018-07-06 | 武汉斗鱼网络科技有限公司 | 视频流地址检测方法、装置及服务器 |
CN107864194A (zh) * | 2017-10-27 | 2018-03-30 | 姜俊 | 一种客户端互联系统及方法 |
CN110300051A (zh) * | 2019-06-03 | 2019-10-01 | 上海掌门科技有限公司 | 即时通信方法、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN105577504B (zh) | 2020-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105577504A (zh) | 建立通信通道的方法和装置 | |
US9530251B2 (en) | Intelligent method of determining trigger items in augmented reality environments | |
US10834218B2 (en) | Event information system classifying messages using machine learning classification model and pushing selected message to user | |
US9691184B2 (en) | Methods and systems for generating and joining shared experience | |
US9799373B2 (en) | Computerized system and method for automatically extracting GIFs from videos | |
CN102780653B (zh) | 即时通信中快捷通信的方法、客户端及系统 | |
KR101771071B1 (ko) | 통신 방법, 클라이언트, 및 단말 | |
US20150281142A1 (en) | Hot Topic Pushing Method and Apparatus | |
US9064326B1 (en) | Local cache of augmented reality content in a mobile computing device | |
CN102710549B (zh) | 通过摄像建立通信连接关系的方法、终端及系统 | |
WO2017197826A1 (zh) | 图像特征关系的匹配方法、装置和系统 | |
CN104780093A (zh) | 即时通讯过程中的表情信息处理方法及装置 | |
CN106470110B (zh) | 向用户列表中的多个用户群发消息的方法及装置 | |
JP6986187B2 (ja) | 人物識別方法、装置、電子デバイス、記憶媒体、及びプログラム | |
WO2017157174A1 (zh) | 一种信息处理方法、设备和终端设备 | |
CN102497333A (zh) | 用以输出联系人对象天气信息的方法、客户端及系统 | |
KR102017746B1 (ko) | 유사도 산출 방법 및 그 장치 | |
CN104935496A (zh) | 即时通信方法、系统、装置和即时通信终端 | |
CN111557014A (zh) | 提供多个个人资料的方法及系统 | |
CN102707897A (zh) | 即时通信中路径触发联系人对象的方法、客户端及系统 | |
CN102707959A (zh) | 即时通信界面中加载窗口的实现方法、客户端及系统 | |
CN104965633A (zh) | 一种服务跳转的方法和装置 | |
CN112243144B (zh) | 输入法弹幕显示方法、装置、设备及存储介质 | |
CN110089076A (zh) | 实现信息互动的方法和装置 | |
CN105574107A (zh) | 基于用户偏好的内容定制推送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |