通信调度方法、发起方法、提供方法、设备及系统的制作方法

文档序号:7997930阅读:308来源:国知局
通信调度方法、发起方法、提供方法、设备及系统的制作方法
【专利摘要】本发明公开了一种通信调度方法、发起方法、提供方法、设备及系统,属于互联网通信领域。所述方法包括:接收消费者代理端的服务请求;根据所述服务请求查询已经注册且空闲的服务者代理端;将所述服务请求转发给查询到的服务者代理端;接收所述查询到的服务者代理端发送的通信会话号;将所述通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入相应的会话,从而使得所述消费者代理端建立与所述查询到的服务者代理端之间的通信。本发明解决了当前用户事先未获知其它用户的信息,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。
【专利说明】通信调度方法、发起方法、提供方法、设备及系统

【技术领域】
[0001]本发明涉及互联网通信领域,特别涉及一种通信调度方法、发起方法、提供方法、设备及系统。

【背景技术】
[0002]在线语音平台是一种通过网络来为通信双方提供语音通信服务的互联网应用。随着在线娱乐、网络教育和语音直播之类应用的蓬勃发展,在线语音平台也得到了广泛的使用。
[0003]现有的在线语音平台在向用户提供语音服务时,通常采用以下两种方式建立语音通信:第一种方式,用户事先获知另一用户的用户标识信息,比如,该用户标识信息可以是用户名,然后该用户根据用户标识信息直接呼叫另一用户,从而使得该用户与另一用户之间建立语音通信;第二种方式,用户事先获知一个语音频道的频道号码,然后该用户根据该频道号码加入对应的语音频道,从而使得该用户与该语音频道内的其它用户建立语音通?目。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:用户与其它用户建立语音通信的过程中,必须事先获知其它用户或者其它用户所在频道的频道号码,否则无法与其它用户建立语音通信。换个角度来讲,假如其它用户是语音服务提供者,比如在线语音学习频道,如果当前用户不知道该在线语音学习频道的频道号码时,就无法加入该在线语音学习频道进行学习。


【发明内容】

[0005]为了解决当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题,本发明实施例提供了一种通信调度方法、发起方法、提供方法、设备及系统。所述技术方案如下:
[0006]根据本发明的第一方面,提供了一种通信调度方法,所述方法包括:
[0007]接收消费者代理端的服务请求;
[0008]根据所述服务请求查询已经注册且空闲的服务者代理端;
[0009]将所述服务请求转发给查询到的服务者代理端;
[0010]接收所述查询到的服务者代理端发送的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述服务请求之后与通信服务器建立会话所得到的;
[0011]将所述通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入相应的会话,从而使得所述消费者代理端建立与所述查询到的服务者代理端之间的通信。
[0012]根据本发明的第二方面,提供了一种通信发起方法,所述方法包括:
[0013]向调度服务器发送服务请求,以便所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端;并将所述服务请求转发给查询到的服务者代理端;
[0014]接收所述调度服务器转发的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述服务请求之后与通信服务器建立会话所得到、并发送给所述调度服务器的;
[0015]根据所述通信会话号加入通信服务器中相应的会话中,从而建立与所述查询到的服务者代理端之间的通信。
[0016]根据本发明的第三方面,提供了一种通信提供方法,所述方法包括:
[0017]接收调度服务器转发的服务请求,所述服务请求为消费者代理端发送给所述调度服务器,所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端后,向查询到的服务者代理端发送的;
[0018]在接收到所述服务请求之后与通信服务器建立会话,并获得通信会话号;
[0019]将所述通信会话号发送给所述调度服务器,以便所述调度服务器将所述通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入通信服务器中相应的会话中。
[0020]根据本发明的第四方面,提供了一种调度服务器,所述服务器,包括:
[0021 ] 请求接收模块,用于接收消费者代理端的服务请求;
[0022]服务查询模块,用于根据所述请求接收模块接收到的服务请求查询已经注册且空闲的服务者代理端;
[0023]请求转发模块,用于将所述请求接收模块接收到的服务请求转发给所述服务查询模块查询到的服务者代理端;
[0024]会话号接收模块,用于接收所述查询到的服务者代理端发送的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述服务请求之后与通信服务器建立会话所得到的;
[0025]会话号转发模块,用于将所述会话号接收模块接收到的通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入相应的会话,从而使得所述消费者代理端建立与所述查询到的服务者代理端之间的通信。
[0026]根据本发明的第五方面,提供了一种消费者代理端,其包括:
[0027]请求发送模块,用于向调度服务器发送服务请求,以便所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端;并将所述服务请求转发给查询到的服务者代理端;
[0028]反馈接收模块,用于接收所述调度服务器转发的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述服务请求之后与通信服务器建立会话所得到、并发送给所述调度服务器的;
[0029]会话加入模块,用于根据所述反馈接收模块接收到的通信会话号加入通信服务器中相应的会话中,从而建立与所述查询到的服务者代理端之间的通信。
[0030]根据本发明的第六方面,提供了一种服务者代理端,其包括:
[0031]转发接收模块,用于接收调度服务器转发的服务请求,所述服务请求为消费者代理端发送给所述调度服务器,所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端后,向查询到的服务者代理端发送的;
[0032]会话建立模块,用于在所述转发接收模块接收到所述服务请求之后与通信服务器建立会话,并获得通信会话号;
[0033]会话号发送模块,用于将所述会话建立模块获得的通信会话号发送给所述调度服务器,以便所述调度服务器将所述通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入通信服务器中相应的会话中。
[0034]根据本发明的第七方面,提供了一种通信调度系统,所述系统包括消费者代理端、服务者代理端、调度服务器和通信服务器;其中,
[0035]所述消费者代理端为如上第五方面所述的消费者代理端;
[0036]所述服务者代理端为如上第六方面所述的服务者代理端;
[0037]所述调度服务器为如上第四方面所述的调度服务器。
[0038]本发明实施例提供的技术方案带来的有益效果是:
[0039]通过根据消费者代理端的服务请求来查询已经注册且空闲的服务者代理端,然后将服务请求转发给查询到的服务者代理端,以便服务者代理端与消费者代理端之间建立通信;解决了当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。

【专利附图】

【附图说明】
[0040]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041]图1是本发明实施例所涉及的实施环境的结构示意图;
[0042]图2是本发明实施例一提供的通信调度方法的方法流程图;
[0043]图3A是本发明实施例二提供的通信调度方法的方法流程图;
[0044]图3B是本发明实施例二提供的服务者代理端的用户界面示意图;
[0045]图3C是本发明实施例二提供的消费者代理端的用户界面示意图;
[0046]图3D是本发明实施例二提供的根据标识信息查询服务者代理端的方法流程图;
[0047]图4A是本发明实施例三提供的通信调度方法的方法流程图;
[0048]图4B是本发明实施例三提供的服务者代理端的用户界面示意图;
[0049]图4C是本发明实施例三提供的消费者代理端的用户界面示意图;
[0050]图4D是本发明实施例三提供的根据标识信息查询服务者代理端的方法流程图;
[0051]图5是本发明实施例四提供的通信调度系统的结构方框图;
[0052]图6是本发明实施例五提供的通信调度系统的结构方框图;
[0053]图7是本发明实施例五提供的服务查询模块的结构方框图;
[0054]图8是本发明实施例六提供的通信调度系统的结构方框图;
[0055]图9是本发明实施例六提供的服务查询模块的结构方框图。

【具体实施方式】
[0056]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0057]请参考图1,其示出了本发明实施例所涉及的实施环境的结构示意图。该实施环境包括至少一个消费者代理端120、至少一个服务者代理端140、调度服务器160和通信服务器 180。
[0058]消费者代理端120可以是运行有预定程序的电子设备。该电子设备可以是普通用户所使用的智能手机、平板电脑、电子书阅读器、掌上电脑、膝上型笔记本和台式电脑等等中的任意一种。
[0059]服务者代理端140可以是运行有预定程序的电子设备。该电子设备可以是提供服务的用户所使用的智能手机、平板电脑、电子书阅读器、掌上电脑、膝上型笔记本和台式电脑等等中的任意一种。以一个具体的例子为例,提供服务的用户可以是医院各个科室的医师,提供的服务是在线语音诊断;另一个具体的例子中,提供服务的用户可以是学校各个专业的老师,提供的服务是在线教学。
[0060]调度服务器160可以是一台或者多台运行有预定程序的服务器。调度服务器160既可以通过无线网络或者有线网络来与消费者代理端120相连,调度服务器160还可以通过无线网络或者有线网络来与服务者代理端140相连。
[0061]通信服务器180可以是一台或者多台运行有预定程序的服务器。通信服务器180用于提供语音通信服务和视频通信服务中的任意一种或者两种的结合。通信服务器180即可以通过无线网络或者有线网络来与消费者代理端120相连,通信服务器180也可以通过无线网络或者有线网络来与服务者代理端140相连。
[0062]实施例一
[0063]请参考图2,其示出了本发明实施例一提供的通信调度方法的方法流程图。本实施例主要以该通信调度方法用于如图1所示的实施环境中来举例说明,该通信调度方法包括:
[0064]步骤202,消费者代理端向调度服务器发送服务请求;
[0065]当消费者代理端需要与服务者代理端通信时,不论消费者代理端是否知晓服务者代理端的任何信息,都可以向调度服务器发送服务请求。
[0066]步骤204,调度服务器接收消费者代理端的服务请求,根据服务请求查询已经注册且空闲的服务者代理端;
[0067]调度服务器中保存有服务者代理端的状态信息,该状态信息可以包括:未注册、已注册且繁忙和已注册且空闲,其中,处于已注册且空闲的服务者代理端是当前可以提供服务的服务者代理端。在消费者代理端向调度服务器发送服务请求之后,调度服务器接收消费者代理端的服务请求。并在接收到服务请求之后,根据服务请求查询已经注册且空闲的服务者代理端。
[0068]步骤206,调度服务器将服务请求转发给查询到的服务者代理端;
[0069]调度服务器在查询到已经注册且空闲的服务者代理端之后,调度服务器可以将服务请求转发给查询到的服务者代理端。
[0070]步骤208,服务者代理端接收调度服务器转发的服务请求;在接收到服务请求之后与通信服务器建立会话,并获得通信会话号;
[0071]服务者代理端会接收到调度服务器转发的服务请求。在服务者代理端接收到服务请求之后,服务者代理端与通信服务器建立会话。在建立会话的过程中,服务者代理端会获得与本次建立的会话相对应的通信会话号。
[0072]步骤210,服务者代理端将通信会话号发送给调度服务器;
[0073]服务者代理端将获得的通信会话号发送给调度服务器,以便调度服务器将该通信会话号转发给消费者代理端。
[0074]步骤212,调度服务器接收查询到的服务者代理端发送的通信会话号;将通信会话号转发给消费者代理端;
[0075]步骤214,消费者代理端接收调度服务器转发的通信会话号,根据通信会话号加入通信服务器中相应的会话中,从而建立与查询到的服务者代理端之间的通信。
[0076]综上所述,本实施例提供的通信调度方法,通过根据消费者代理端的服务请求来查询已经注册且空闲的服务者代理端,然后将服务请求转发给查询到的服务者代理端,以便服务者代理端与消费者代理端之间建立通信;解决了当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。
[0077]需要说明的是,上述步骤202和步骤214可以实现成为消费者代理端一侧的通信发起方法,上述步骤204、步骤206和步骤212可以实现成为调度服务器一侧的通信调度方法,上述步骤208和步骤210可以实现成为服务者代理端一侧的通信提供方法。
[0078]实施例二
[0079]请参考图3A,其示出了本发明实施例二提供的通信调度方法的方法流程图。本实施例主要以该通信调度方法用于如图1所示的实施环境中来举例说明。该通信调度方法包括:
[0080]步骤302,服务者代理端向调度服务器发送注册请求;
[0081]服务者代理端在可以提供服务时,向调度服务器发送注册请求,该注册请求可以包括服务者代理端的标识信息。以服务者代理端是医院各个科室的医师所使用的电子设备,提供的服务是在线语音诊断为例,当内科的医师张某上班后,可以使用服务者代理端向调度服务器发送注册请求,该注册请求中包括有标识信息“张某”。此时,服务者代理端可以提供如图3B所示的用户界面,医师张某只需要点击“值班”按钮31就可以向调度服务器发送注册请求。
[0082]步骤304,调度服务器接收至少一个服务者代理端的注册请求;根据注册请求将服务者代理端的注册状态由未注册状态切换为已经注册状态;
[0083]由于服务者代理端可以为两个或者两个以上,调度服务器会接收至少一个服务者代理端的注册请求,该注册请求包括服务者代理端的标识信息。
[0084]调度服务器在接收到一个服务者代理端发送的注册请求之后,根据接收到的注册请求将该服务者代理端的注册状态由未注册状态切换为已经注册状态,并在该服务者代理端的注册状态切换为已经注册状态之后,维护该服务者代理端的服务状态,服务状态包括忙碌状态或者空闲状态。比如,调度服务器在接收到医师张某所使用的服务者代理端所发送的注册请求之后,将张某所使用的服务者代理端的注册状态由未注册状态切换为已经注册状态,并在该服务者代理端的注册状态切换为已经注册状态之后,维护该服务者代理端的服务状态,也即当张某正在为某一个消费者代理端提供在线语音诊断服务时,将服务状态置为忙碌状态;当张某没有为任何一个消费者代理端提供在线语音诊断服务时,将服务状态置为空闲状态。
[0085]步骤306,消费者代理端向调度服务器发送服务请求;
[0086]当消费者代理端需要与服务者代理端通信时,不论消费者代理端是否知晓服务者代理端的任何信息,都可以向调度服务器发送服务请求。具体来讲:
[0087]若消费者代理端不知晓服务者代理端的任何信息,则消费者代理端可以直接向调度服务器发送服务请求,该服务请求中通常包含有消费者代理端的标识,比如消费者代理端的用户名或者IP地址等等。在一个具体的例子中,用户王某所使用的消费者代理端想寻求在线语音诊断服务时,向调度服务器发送服务请求,该服务请求中可以包含有标识信息“王某”。此时,王某所使用的消费者代理端可以显示如图3C所示的用户界面,王某只需要点击“随机呼叫”按钮32即可向调度服务器发送服务请求。
[0088]若消费者代理端知晓某一指定的服务者代理端的标识信息,则消费者代理端可以向调度服务器发送包含有服务者代理端的标识信息的服务请求。也即该服务请求中不仅可以包含有消费者代理端的标识,还可以包含服务者代理端的标识信息。在一个具体的例子中,用户王某知晓医师张某所使用的服务者代理端的标识信息是“张某”,则用户王某所使用的消费者代理端想寻求在线语音诊断服务时,可以向调度服务器发送包含有标识信息“张某”的服务请求。此时,王某所使用的消费者代理端可以显示如图3C所示的用户界面,王某只需要在指定用户输入框30中输入“张某”,然后点击“呼叫用户”按钮34即可向调度服务器发送包含有标识信息“张某”的服务请求。
[0089]步骤308,调度服务器接收消费者代理端的服务请求,根据服务请求查询已经注册且空闲的服务者代理端;
[0090]调度服务器接收消费者代理端的服务请求。在接收到服务请求之后,调度服务器根据服务请求查询已经注册且空闲的服务者代理端。若服务请求中未包含有服务者代理端的任何信息,则调度服务器可以检测所有服务者代理端中是否存在已经注册且空闲的服务者代理端;若检测结果为存在已经注册且空闲的服务者代理端,则将已经注册且空闲的服务者代理端中的一个作为查询到的服务者代理端。比如,调度服务器在接收到服务请求后,先检测已经注册的服务者代理端,然后在已经注册的服务者代理端中继续检测空闲的服务者代理端,从而找到已经注册且空闲的服务者代理端。
[0091]若已经注册且空闲的服务者代理端为两个或者两个以上,则调度服务器将已经注册且空闲的服务者代理端中符合预定条件的一个作为查询到的服务者代理端,该预定条件包括注册时间最早、优先级最高、服务时长最长、服务质量最好、距离消费者代理端最近和与消费者代理端之间的通信链路最优中的一条或者几条的组合。比如,调度服务器在查询到三个已经注册且空闲的服务者代理端后,将注册时间最早的一个服务者代理端作为查询到的服务者代理端。
[0092]当然,若服务请求中可能包含有服务者代理端的标识信息时,本步骤具体可以包括如图3D所示的七个子步骤:
[0093]308a,检测服务请求中是否包含服务者代理端的标识信息;
[0094]308b,若检测结果为服务请求中包含有服务者代理端的标识信息,则继续检测与标识信息对应的服务者代理端是否已经注册且空闲;
[0095]比如,调度服务器的检测结果为服务请求中包含有标识信息“张某”,则调度服务器检测与标识信息“张某”对应的服务者代理端是否已经注册且空闲。
[0096]308c,若检测结果为与标识信息对应的服务者代理端已经注册且空闲,则将与标识信息对应的服务者代理端作为查询到的服务者代理端;
[0097]比如,若调度服务器的检测结果为与标识信息“张某”对应的服务者代理端已经注册且空闲,则调度服务器将与标识信息“张某”对应的服务者代理端作为查询到的服务者代理端。
[0098]308d,若检测结果为与标识信息对应的服务者代理端还未注册或者处于已注册且繁忙,则调度服务器向消费者代理端反馈请求失败消息;
[0099]308e,若检测结果为服务请求中未包含有服务者代理端的标识信息,则检测所有服务者代理端中是否存在已经注册且空闲的服务者代理端;
[0100]308f,若检测结果为所有服务者代理端中存在已经注册且空闲的服务者代理端,则调度服务器将已经注册且空闲的服务者代理端中的一个作为查询到的服务者代理端;
[0101]308g,若检测结果为所有服务者代理端中不存在已经注册且空闲的服务者代理端,则调度服务器将向消费者代理端反馈请求失败消息。
[0102]步骤310,调度服务器将服务请求转发给查询到的服务者代理端;
[0103]调度服务器在查询到服务者代理端之后,调度服务器可以将服务请求转发给查询到的服务者代理端。比如,调度服务器在查询到医师张某的服务者代理端之后,将用户王某的服务请求转发给医师张某的服务者代理端。
[0104]步骤312,服务者代理端接收调度服务器转发的服务请求;在接收到服务请求之后与通信服务器建立会话,并获得通信会话号;
[0105]服务者代理端会接收到调度服务器转发的服务请求。在服务者代理端接收到服务请求之后,服务者代理端与通信服务器建立会话。在建立会话的过程中,服务者代理端会获得与本次建立的会话相对应的通信会话号。比如,医师张某的服务者代理端接收到服务请求之后,可以与通信服务器建立会话。在建立会话的过程中,医师张某的服务者代理端会获得与本次建立的会话相对应的通信会话号。
[0106]优选地,服务者代理端在接收到服务请求之后,可以弹出对话框来提示提供服务的用户是否接收该服务请求。比如,服务者代理端可以在图3B所示的用户界面上提示接收到来自用户王某所使用的消费者代理端发送的服务请求,然后在医师张某点击“接受”按钮33之后与通信服务器建立会话;在医师张某点击“拒绝”按钮35之后向调度服务器发送拒绝消息,以便调度服务器向消费者代理端反馈请求失败消息。
[0107]步骤314,服务者代理端将通信会话号发送给调度服务器;
[0108]在服务者代理端获得与本次建立的会话相对应的通信会话号之后,服务者代理端将通信会话号发送给调度服务器。比如,医师张某的服务者代理端将获得的通信会话号发送给调度服务器,以便调度服务器将该通信会话号转发给用户王某的消费者代理端。
[0109]步骤316,调度服务器接收查询到的服务者代理端发送的通信会话号;将通信会话号转发给消费者代理端;
[0110]调度服务器可以在步骤306中的服务请求中获得消费者代理端的标识信息,然后在本步骤中,将通信会话号通过消费者代理端的标识信息转发给消费者代理端。
[0111]步骤318,消费者代理端接收调度服务器转发的通信会话号,根据通信会话号加入通信服务器中相应的会话中,从而建立与查询到的服务者代理端之间的通信。
[0112]由于通信服务器可能提供语音通信服务和视频通信服务中的任意一种或者两种的组合,所以消费者代理端通过通信会话号加入通信服务器中相应的会话后,消费者代理端与服务者代理端之间建立的也是语音通信服务和视频通信服务中的任意一种或者两种的组合。比如在本实施例中,用户王某的消费者代理端和医师张某的服务者代理端可以建立在线语音通信。
[0113]步骤320,消费者代理端主动退出通信服务器中相应的会话,并向调度服务器发送退出会话请求;
[0114]当消费者代理端不需要服务者代理端提供的服务时,消费者代理端可以主动退出通信服务器中相应的会话,并向调度服务器发送退出会话请求,以便调度服务器在接收到退出会话请求之后,通知查询到的服务者代理端退出会话。
[0115]步骤322,调度服务器接收消费者代理端发送的退出会话请求;在接收到退出会话请求之后,通知查询到的服务者代理端退出会话;
[0116]步骤324,服务者代理端接收调度服务器发送的退出会话通知,根据退出会话通知退出相应的会话。
[0117]服务者代理端接收调度服务器发送的退出会话通知,该退出会话通知是消费者代理端向调度服务器发送退出会话请求之后触发的。服务者代理端根据退出会话通知退出相应的会话。
[0118]显然,上述步骤320至步骤324的过程也可以由服务者代理端主动发起,消费者代理端在接收到退出会话请求后退出会话。
[0119]步骤326,服务者代理端向调度服务器发送反注册请求;
[0120]当某一个服务者代理端不在提供服务时,服务者代理端向调度服务器发送反注册的请求。比如,医师张某下班后,张某可以点击图3B所示的用户界面中的“下班”按钮37,使得张某所使用的服务者代理端向调度服务器发送反注册请求。
[0121]步骤328,调度服务器接收服务者代理端的反注册请求;将服务者代理端的注册状态由已经注册状态切换为未注册状态。
[0122]调度服务器接收服务者代理端的反注册请求;将服务者代理端的注册状态由已经注册状态切换为未注册状态。同时,调度服务器不再维护该服务者代理端的服务状态。
[0123]综上所述,本实施例提供的通信调度方法,通过根据消费者代理端的服务请求来查询已经注册且空闲的服务者代理端,然后将服务请求转发给查询到的服务者代理端,以便服务者代理端与消费者代理端之间建立通信;解决了当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。还通过根据服务请求中不包含服务者代理端的标识信息时随机提供一个服务者代理端给消费者代理端,或者,根据服务请求中包含服务者代理端的标识信息时精确提供一个指定的服务者代理端给消费者代理端,达到了不论消费者代理端是否知晓服务者代理端的信息都可以与服务者代理端建立语音通信的效果。
[0124]需要补充说明的是,图3B和图3C所示的用户界面可以实现成为共用用户界面以及API (Applicat1n Programming Interface,应用程序接口)调用,使得任意一个网络应用都可以很方便地集成该共用用户界面,也即该网络应用可以方便地集成有语音通信功能或者视频通信功能。比如,一家医院、一家学校或者一个个人都可以通过集成该共用用户界面及API来实现集成语音通信功能或者视频通信功能。
[0125]还需要说明的是,上述步骤306、步骤318和步骤320可以实现成为消费者代理端一侧的通信发起方法,上述步骤304、步骤308、步骤310、步骤316、步骤322和步骤328可以实现成为调度服务器一侧的通信调度方法,上述步骤302、步骤312、步骤314、步骤324和步骤326可以实现成为服务者代理端一侧的通信提供方法。
[0126]实施例三
[0127]请参考图4A,其示出了本发明实施例三提供的服务调度方法的方法流程图。本实施例仍然以该通信调度方法用于如图1所示的实施环境中来举例说明。与上一实施例不同的是,本实施例中,消费者代理端可以根据类别信息来与服务者代理端建立通信,该通信调度方法包括:
[0128]步骤402,服务者代理端向调度服务器发送注册请求;
[0129]服务者代理端在可以提供服务时,向调度服务器发送注册请求,该注册请求可以包括服务者代理端的标识信息和类别信息。以服务者代理端是医院各个科室的医师所使用的电子设备,提供的服务是在线语音诊断为例,当内科的医师张某上班后,可以使用服务者代理端向调度服务器发送注册请求,该注册请求中既可以包括有标识信息“张某”,也可以包括有类别信息“内科”。此时,服务者代理端可以提供如图4B所示的用户界面,医师张某只需要点击“值班”按钮41就可以向调度服务器发送注册请求。标识信息“张某”和类别信息“内科”可以由医师张某预先在服务者代理端中进行设置。
[0130]步骤404,调度服务器接收至少一个服务者代理端的注册请求;根据注册请求将服务者代理端的注册状态由未注册状态切换为已经注册状态;
[0131]由于服务者代理端可以为两个或者两个以上,调度服务器会接收至少一个服务者代理端的注册请求,该注册请求可以包括服务者代理端的标识信息和类别信息。
[0132]调度服务器在接收到一个服务者代理端发送的注册请求之后,根据接收到的注册请求将该服务者代理端的注册状态由未注册状态切换为已经注册状态,并在该服务者代理端的注册状态切换为已经注册状态之后,维护该服务者代理端的服务状态,服务状态包括忙碌状态或者空闲状态。比如,调度服务器在接收到医师张某所使用的服务者代理端所发送的注册请求之后,将张某所使用的服务者代理端的注册状态由未注册状态切换为已经注册状态,并在该服务者代理端的注册状态切换为已经注册状态之后,维护该服务者代理端的服务状态,也即当张某正在为某一个消费者代理端提供在线语音诊断服务时,将服务状态置为忙碌状态;当张某没有为任何一个消费者代理端提供在线语音诊断服务时,将服务状态置为空闲状态。
[0133]步骤406,消费者代理端向调度服务器发送服务请求;
[0134]当消费者代理端需要与服务者代理端通信时,不论消费者代理端是否知晓服务者代理端的任何信息,都可以向调度服务器发送服务请求。若消费者代理端不知晓服务者代理端的任何信息,消费者代理端发送服务请求的过程可以参考步骤306所示,本实施例中不再赘述。特别地,在本实施例中:
[0135]若消费者代理端不知晓服务者代理端的标识信息,但是知晓服务者代理端的类别信息,则消费者代理端可以向调度服务器发送包含有服务者代理端的类别信息的服务请求。也即该服务请求中不仅可以包含有消费者代理端的标识,还可以包含服务者代理端的类别信息。在一个具体的例子中,用户王某想寻求内科方面的在线语音诊断服务,则用户王某所使用的消费者代理端可以向调度服务器发送包含有类别信息“内科”的服务请求。此时,王某所使用的消费者代理端可以显示如图4C所示的用户界面,王某只需要在指定用户输入框40中输入“内科”,然后点击“类别呼叫”按钮44即可向调度服务器发送包含有类别信息“内科”的服务请求。
[0136]步骤408,调度服务器接收消费者代理端的服务请求,根据服务请求查询已经注册且空闲的服务者代理端;
[0137]调度服务器接收消费者代理端的服务请求。在接收到服务请求之后,调度服务器根据服务请求查询已经注册且空闲的服务者代理端。特别地,在本实施例中,服务请求中可能包含有服务者代理端的类别信息,本步骤具体可以包括如图4D所示的七个子步骤:
[0138]408a,检测服务请求中是否包含服务者代理端的类别信息;
[0139]408b,若检测结果为服务请求中包含有服务者代理端的类别信息,则继续检测是否存在与类别信息匹配、已经注册且空闲的服务者代理端;
[0140]比如,调度服务器的检测结果为服务请求中包含有类别信息“内科”,则调度服务器检测是否存在与类别信息匹配、已经注册且空闲的服务者代理端。
[0141]408c,若检测结果为存在与类别信息匹配、已经注册且空闲的服务者代理端,则将与类别信息匹配、已经注册且空闲的服务者代理端作为查询到的服务者代理端;
[0142]比如,若调度服务器的检测结果为存在一个与类别信息“内科”匹配、已经注册且空闲的服务者代理端,该服务者代理端的标识信息为“张某”,则调度服务器将与标识信息“张某”对应的服务者代理端作为查询到的服务者代理端。
[0143]当然,调度服务器的检测结果可能是存在两个或者两个以上与类别信息匹配、已经注册且空闲的服务者代理端,此时,调度服务器将与类别信息匹配、已经注册且空闲的服务者代理端中符合预定条件的一个作为查询到的服务者代理端;该预定条件包括注册时间最早、优先级最高、服务时长最长、服务质量最好、距离消费者代理端最近和与消费者代理端之间的通信链路最优中的一条或者几条的组合。
[0144]408d,若检测结果为不存在与类别信息匹配、已经注册且空闲的服务者代理端,则调度服务器向消费者代理端反馈请求失败消息;
[0145]408e,若检测结果为服务请求中未包含有服务者代理端的类别信息,则检测所有服务者代理端中是否存在已经注册且空闲的服务者代理端;
[0146]408f,若检测结果为所有服务者代理端中存在已经注册且空闲的服务者代理端,则调度服务器将已经注册且空闲的服务者代理端中的一个作为查询到的服务者代理端;
[0147]408g,若检测结果为所有服务者代理端中不存在已经注册且空闲的服务者代理端,则调度服务器将向消费者代理端反馈请求失败消息。
[0148]步骤410,调度服务器将服务请求转发给查询到的服务者代理端;
[0149]调度服务器在查询到服务者代理端之后,调度服务器可以将服务请求转发给查询到的服务者代理端。比如,调度服务器在查询到医师张某的服务者代理端之后,将用户王某的服务请求转发给医师张某的服务者代理端。
[0150]步骤412,服务者代理端接收调度服务器转发的服务请求;在接收到服务请求之后与通信服务器建立会话,并获得通信会话号;
[0151]服务者代理端会接收到调度服务器转发的服务请求。在服务者代理端接收到服务请求之后,服务者代理端与通信服务器建立会话。在建立会话的过程中,服务者代理端会获得与本次建立的会话相对应的通信会话号。比如,医师张某的服务者代理端接收到服务请求之后,可以与通信服务器建立会话。在建立会话的过程中,医师张某的服务者代理端会获得与本次建立的会话相对应的通信会话号。
[0152]优选地,服务者代理端在接收到服务请求之后,可以弹出对话框来提示提供服务的用户是否接收该服务请求。比如,服务者代理端可以在图4B所示的用户界面上提示接收到来自用户王某所使用的消费者代理端发送的服务请求,然后在医师张某点击“接受”按钮44之后与通信服务器建立会话;在医师张某点击“拒绝”按钮44之后向调度服务器发送拒绝消息,以便调度服务器向消费者代理端反馈请求失败消息。
[0153]步骤414,服务者代理端将通信会话号发送给调度服务器;
[0154]在服务者代理端获得与本次建立的会话相对应的通信会话号之后,服务者代理端将通信会话号发送给调度服务器。比如,医师张某的服务者代理端将获得的通信会话号发送给调度服务器,以便调度服务器将该通信会话号转发给用户王某的消费者代理端。
[0155]步骤416,调度服务器接收查询到的服务者代理端发送的通信会话号;将通信会话号转发给消费者代理端;
[0156]步骤418,消费者代理端接收调度服务器转发的通信会话号,根据通信会话号加入通信服务器中相应的会话中,从而建立与查询到的服务者代理端之间的通信。
[0157]由于通信服务器可能提供语音通信服务和视频通信服务中的任意一种或者两种的组合,所以消费者代理端通过通信会话号加入通信服务器中相应的会话后,消费者代理端与服务者代理端之间建立的也是语音通信服务和视频通信服务中的任意一种或者两种的组合。比如在本实施例中,用户王某的消费者代理端和医师张某的服务者代理端可以建立在线语音通信。
[0158]步骤420,服务者代理端主动退出通信服务器中相应的会话,并向调度服务器发送退出会话请求;
[0159]当服务者代理端不需要向消费者代理端提供服务时,服务者代理端可以主动退出通信服务器中相应的会话,并向调度服务器发送退出会话请求,以便调度服务器在接收到退出会话请求之后,通知消费者代理端退出会话。
[0160]步骤422,调度服务器接收查询到的服务者代理端发送的退出会话请求;在接收到退出会话请求之后,通知消费者代理端退出会话;
[0161]步骤424,消费者代理端接收调度服务器发送的退出会话通知,根据退出会话通知退出相应的会话。
[0162]消费者代理端接收调度服务器发送的退出会话通知,该退出会话通知是查询到的服务者代理端向调度服务器发送退出会话请求之后触发的。消费者代理端根据退出会话通知退出相应的会话。
[0163]显然,上述步骤420至步骤424的过程也可以由消费者代理端主动发起,服务者代理端在接收到退出会话请求后退出会话。
[0164]步骤426,服务者代理端向调度服务器发送反注册请求;
[0165]当某一个服务者代理端不在提供服务时,服务者代理端向调度服务器发送反注册的请求。比如,医师张某下班后,张某可以点击图3B所示的用户界面中的“下班”按钮37,使得张某所使用的服务者代理端向调度服务器发送反注册请求。
[0166]步骤428,调度服务器接收服务者代理端的反注册请求;将服务者代理端的注册状态由已经注册状态切换为未注册状态。
[0167]调度服务器接收服务者代理端的反注册请求;将服务者代理端的注册状态由已经注册状态切换为未注册状态。同时,调度服务器不再维护该服务者代理端的服务状态。
[0168]综上所述,本实施例提供的通信调度方法,通过根据消费者代理端的服务请求来查询已经注册且空闲的服务者代理端,然后将服务请求转发给查询到的服务者代理端,以便服务者代理端与消费者代理端之间建立通信;解决了当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。还通过根据服务请求中不包含服务者代理端的标识信息时随机提供一个服务者代理端给消费者代理端,或者,根据服务请求中包含服务者代理端的类别信息时选择提供一个指定的服务者代理端给消费者代理端,达到了不论消费者代理端是否知晓服务者代理端的信息都可以与服务者代理端建立语音通信的效果。
[0169]需要说明的是,本实施例仅以服务者代理端是医院各个科室的医师所使用的电子设备,提供的服务是在线语音诊断为例来举例说明。当服务者代理端提供的服务不同时,类别信息的具体内容也不同,比如,当服务者代理端提供的服务是在线语言学习时,类别信息可以是普通话、英语、法语和俄语之类的。当服务者代理端是聊天服务时,类别信息可以是18-24岁女性、18岁-24岁男性、25-35岁女性、25岁-35岁男性等等。
[0170]还需要说明的是,实施例三和实施例二也可以融合实现成为一个实施例,即用户可以发送不包含服务者代理端、包含服务者代理端的标识信息和包含服务者代理端的类别信息的三种服务请求的任一种给调度服务器,然后由调度服务器来查询服务者代理端,从而使得消费者代理端与查询到的服务者代理端建立语音通信或者视频通信。
[0171]以下为本发明中的装置实施例,其中未详尽描述的内容,可以结合参考上述对应的方法实施例。
[0172]实施例四
[0173]请参考图5,其示出了本发明实施例四提供的通信调度系统的结构方框图。该通信调度系统包括消费者代理端520、调度服务器540、服务者代理端560和通信服务器580。其中:
[0174]消费者代理端520,包括请求发送模块521、反馈接收模块522和会话加入模块523。
[0175]请求发送模块521,用于向调度服务器540发送服务请求,以便所述调度服务器540根据所述服务请求查询已经注册且空闲的服务者代理端560 ;并将所述服务请求转发给查询到的服务者代理端560 ;
[0176]反馈接收模块522,用于接收所述调度服务器540转发的通信会话号,所述通信会话号为所述查询到的服务者代理端560在接收到所述服务请求之后与通信服务器580建立会话所得到、并发送给所述调度服务器540的;
[0177]会话加入模块523,用于根据所述反馈接收模块524接收到的通信会话号加入通信服务器580中相应的会话中,从而建立与所述查询到的服务者代理端560之间的通信。
[0178]调度服务器540,包括请求接收模块541、服务查询模块542、请求转发模块543、会话号接收模块544和会话号转发模块545。
[0179]请求接收模块541,用于接收消费者代理端520的服务请求;
[0180]服务查询模块542,用于根据所述请求接收模块541接收到的服务请求查询已经注册且空闲的服务者代理端560 ;
[0181]请求转发模块543,用于将所述请求接收模块541接收到的服务请求转发给所述服务查询模块542查询到的服务者代理端560 ;
[0182]会话号接收模块544,用于接收所述查询到的服务者代理端560发送的通信会话号,所述通信会话号为所述查询到的服务者代理端560在接收到所述服务请求之后与通信服务器580建立会话所得到的;
[0183]会话号转发模块545,用于将所述会话号接收模块544接收到的通信会话号转发给所述消费者代理端520,以便所述消费者代理端520根据所述通信会话号加入相应的会话,从而使得所述消费者代理端520建立与所述查询到的服务者代理端560之间的通信。
[0184]服务者代理端560,包括转发接收模块561、会话建立模块562和会话号发送模块563。
[0185]转发接收模块561,用于接收调度服务器540转发的服务请求,所述服务请求为消费者代理端520发送给所述调度服务器540,所述调度服务器540根据所述服务请求查询已经注册且空闲的服务者代理端560后,向查询到的服务者代理端560发送的;
[0186]会话建立模块562,用于在所述转发接收模块561接收到所述服务请求之后与通信服务器580建立会话,并获得通信会话号;
[0187]会话号发送模块563,用于将所述通信会话号发送给所述调度服务器540,以便所述调度服务器540将所述通信会话号转发给所述消费者代理端520,以便所述消费者代理端520根据所述通信会话号加入通信服务器580中相应的会话中。
[0188]综上所述,本实施例提供的通信调度系统,通过根据消费者代理端的服务请求来查询已经注册且空闲的服务者代理端,然后将服务请求转发给查询到的服务者代理端,以便服务者代理端与消费者代理端之间建立通信;解决了当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。
[0189]实施例五
[0190]请参考图6,其示出了本发明实施例五提供的通信调度系统的结构方框图。该通信调度系统包括:消费者代理端520、调度服务器540、服务者代理端560和通信服务器580。其中:
[0191]消费者代理端520,包括请求发送模块521、反馈接收模块522、会话加入模块523和第一退出会话模块524。
[0192]请求发送模块521,用于向调度服务器540发送服务请求,以便所述调度服务器540根据所述服务请求查询已经注册且空闲的服务者代理端560 ;并将所述服务请求转发给查询到的服务者代理端560。请求发送模块521可以用于向所述调度服务器540发送不包含服务者代理端的任何信息的服务请求。请求发送模块521也可以用于向所述调度服务器540发送包含有服务者代理端560的标识信息的服务请求。
[0193]反馈接收模块522,用于接收所述调度服务器540转发的通信会话号,所述通信会话号为所述查询到的服务者代理端560在接收到所述服务请求之后与通信服务器580建立会话所得到、并发送给所述调度服务器540的;
[0194]会话加入模块523,用于根据所述反馈接收模块524接收到的通信会话号加入通信服务器580中相应的会话中,从而建立与所述查询到的服务者代理端560之间的通信。
[0195]第一退出会话模块524,用于向所述调度服务器540发送退出会话请求,以便所述调度服务器540在接收到所述退出会话请求之后,通知所述查询到的服务者代理端560退出会话O
[0196]调度服务器540,包括注册接收模块5401、状态切换模块5402、请求接收模块541、服务查询模块542、请求转发模块543、会话号接收模块544、会话号转发模块545、第一退出接收模块546和第一退出通知模块547。
[0197]注册接收模块5401,用于接收至少一个服务者代理端560的注册请求;
[0198]状态切换模块5402,用于根据所述注册接收模块5401接收到的注册请求将所述服务者代理端560的注册状态由未注册状态切换为已经注册状态,并在所述服务者代理端560的注册状态切换为已经注册状态之后,维护所述服务者代理端560的服务状态,所述服务状态包括忙碌状态或者空闲状态。
[0199]请求接收模块541,用于接收消费者代理端520的服务请求;
[0200]服务查询模块542,用于根据所述请求接收模块541接收到的服务请求查询已经注册且空闲的服务者代理端560。服务查询模块542可以包括:空闲检测单元542a和查询输出单元542b。
[0201]所述空闲检测单元542a,用于检测所有服务者代理端560中是否存在已经注册且空闲的服务者代理端560;
[0202]所述查询输出单元542b,用于若所述空闲检测单元542a的检测结果为存在已经注册且空闲的服务者代理端560,则将已经注册且空闲的服务者代理端560中的一个作为所述查询到的服务者代理端560。也即,所述查询输出单元542b,具体用于若所述空闲检测单元542a的检测结果为已经注册且空闲的服务者代理端560为两个或者两个以上,则将所述已经注册且空闲的服务者代理端560中符合预定条件的一个作为所述查询到的服务者代理端560 ;所述预定条件包括注册时间最早、优先级最高、服务时长最长、服务质量最好、距离所述消费者代理端520最近和与所述消费者代理端520之间的通信链路最优中的一条或者几条的组合。
[0203]在本实施例,所述服务查询模块542还优选包括:标识检测单元542c和标识查询单元542d。
[0204]所述标识检测单元542c,用于检测所述服务请求中是否包含服务者代理端的标识信息;
[0205]所述标识查询单元542d,用于若所述标识检测单元542c的检测结果为所述服务请求中包含有服务者代理端560的标识信息,则继续检测与所述标识信息对应的服务者代理端560是否已经注册且空闲;
[0206]所述空闲检测单元542a,具体用于若所述标识检测单元542c的检测结果为所述服务请求中不包含有服务者代理端560的标识信息,则检测所有服务者代理端560中是否存在已经注册且空闲的服务者代理端560 ;
[0207]所述查询输出单元542b,还用于若所述标识查询单元542d的检测结果为与所述标识信息对应的服务者代理端已经注册且空闲,则将所述与所述标识信息对应的服务者代理端作为所述查询到的服务者代理端560。
[0208]请求转发模块543,用于将所述请求接收模块541接收到的服务请求转发给所述服务查询模块542查询到的服务者代理端560 ;
[0209]会话号接收模块544,用于接收所述查询到的服务者代理端560发送的通信会话号,所述通信会话号为所述查询到的服务者代理端560在接收到所述服务请求之后与通信服务器580建立会话所得到的;
[0210]会话号转发模块545,用于将所述会话号接收模块544接收到的通信会话号转发给所述消费者代理端520,以便所述消费者代理端520根据所述通信会话号加入相应的会话,从而使得所述消费者代理端520建立与所述查询到的服务者代理端560之间的通信。
[0211]第一退出接收模块546,用于接收所述消费者代理端520发送的退出会话请求;
[0212]第一退出通知模块547,用于在所述第一退出接收模块546接收到所述退出会话请求之后,通知所述查询到的服务者代理端560退出会话。
[0213]服务者代理端560,包括服务注册模块5601、转发接收模块561、会话建立模块562、会话号发送模块563、第二通知接收模块565和第四退出会话模块566。
[0214]服务注册模块5601,用于向所述调度服务器540发送注册请求,所述注册请求包括标识信息和类别信息中的前一种或者全部两种信息。
[0215]转发接收模块561,用于接收调度服务器540转发的服务请求,所述服务请求为消费者代理端520发送给所述调度服务器540,所述调度服务器540根据所述服务请求查询已经注册且空闲的服务者代理端560后,向查询到的服务者代理端560发送的;
[0216]会话建立模块562,用于在所述转发接收模块561接收到所述服务请求之后与通信服务器580建立会话,并获得通信会话号;
[0217]会话号发送模块563,用于将所述通信会话号发送给所述调度服务器540,以便所述调度服务器540将所述通信会话号转发给所述消费者代理端520,以便所述消费者代理端520根据所述通信会话号加入通信服务器580中相应的会话中。
[0218]第二通知接收模块565,用于接收所述调度服务器540发送的退出会话通知,所述退出会话通知是所述消费者代理端520向所述调度服务器540发送退出会话请求之后触发的;
[0219]第四退出会话模块566,用于根据所述第二通知接收模块565接收到的退出会话通知退出相应的会话。
[0220]综上所述,本实施例提供的通信调度系统,通过根据消费者代理端的服务请求来查询已经注册且空闲的服务者代理端,然后将服务请求转发给查询到的服务者代理端,以便服务者代理端与消费者代理端之间建立通信;解决了当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。还通过根据服务请求中不包含服务者代理端的标识信息时随机提供一个服务者代理端给消费者代理端,或者,根据服务请求中包含服务者代理端的标识信息时精确提供一个指定的服务者代理端给消费者代理端,达到了不论消费者代理端是否知晓服务者代理端的信息都可以与服务者代理端建立语音通信的效果。
[0221]实施例六
[0222]请参考图8,其示出了本发明实施例五提供的通信调度系统的结构方框图。该通信调度系统包括:消费者代理端520、调度服务器540、服务者代理端560和通信服务器580。其中:
[0223]消费者代理端520,包括请求发送模块521、反馈接收模块522、会话加入模块523、第一通知接收模块525和第二退出会话模块526。
[0224]请求发送模块521,用于向调度服务器540发送服务请求,以便所述调度服务器540根据所述服务请求查询已经注册且空闲的服务者代理端560 ;并将所述服务请求转发给查询到的服务者代理端560。请求发送模块521可以用于向所述调度服务器540发送不包含服务者代理端的任何信息的服务请求。请求发送模块521也可以用于向所述调度服务器540发送包含有服务者代理端560的类别信息的服务请求。
[0225]反馈接收模块522,用于接收所述调度服务器540转发的通信会话号,所述通信会话号为所述查询到的服务者代理端560在接收到所述服务请求之后与通信服务器580建立会话所得到、并发送给所述调度服务器540的;
[0226]会话加入模块523,用于根据所述反馈接收模块524接收到的通信会话号加入通信服务器580中相应的会话中,从而建立与所述查询到的服务者代理端560之间的通信。
[0227]第一通知接收模块525,用于接收所述调度服务器540发送的退出会话通知,所述退出会话通知是所述查询到的服务者代理端560向所述调度服务器540发送退出会话请求之后触发的;
[0228]第二退出会话模块526,用于根据所述第一通知接收模块525接收到的退出会话通知退出相应的会话。
[0229]调度服务器540,包括注册接收模块5401、状态切换模块5402、请求接收模块541、服务查询模块542、请求转发模块543、会话号接收模块544、会话号转发模块545、第二退出接收模块548和第二退出通知模块549。
[0230]注册接收模块5401,用于接收至少一个服务者代理端560的注册请求;
[0231]状态切换模块5402,用于根据所述注册接收模块5401接收到的注册请求将所述服务者代理端560的注册状态由未注册状态切换为已经注册状态,并在所述服务者代理端560的注册状态切换为已经注册状态之后,维护所述服务者代理端560的服务状态,所述服务状态包括忙碌状态或者空闲状态。
[0232]请求接收模块541,用于接收消费者代理端520的服务请求;
[0233]服务查询模块542,用于根据所述请求接收模块541接收到的服务请求查询已经注册且空闲的服务者代理端560。服务查询模块542可以包括:空闲检测单元542a和查询输出单元542b。
[0234]所述空闲检测单元542b,用于检测所有服务者代理端560中是否存在已经注册且空闲的服务者代理端560;
[0235]所述查询输出单元542b,用于若所述空闲检测单元542a的检测结果为存在已经注册且空闲的服务者代理端560,则将已经注册且空闲的服务者代理端560中的一个作为所述查询到的服务者代理端560。也即,所述查询输出单元542b,具体用于若所述空闲检测单元542a的检测结果为已经注册且空闲的服务者代理端560为两个或者两个以上,则将所述已经注册且空闲的服务者代理端560中符合预定条件的一个作为所述查询到的服务者代理端560 ;所述预定条件包括注册时间最早、优先级最高、服务时长最长、服务质量最好、距离所述消费者代理端520最近和与所述消费者代理端520之间的通信链路最优中的一条或者几条的组合。
[0236]在本实施例,所述服务查询模块542还优选包括:类别检测单元542e和类别查询单元542f ;
[0237]所述类别检测单元542e,用于检测所述服务请求中是否包含服务者代理端560的类别信息;
[0238]所述类别查询单元542f,用于若所述类别检测单元542e的检测结果为所述服务请求中包含有服务者代理端560的类别信息,则继续检测是否存在与所述类别信息匹配、已经注册且空闲的服务者代理端560 ;
[0239]所述空闲检测单元542a,具体用于若所述类别检测单元542e的检测结果为所述服务请求中不包含有服务者代理端560的类别信息,则检测所有服务者代理端560中是否存在已经注册且空闲的服务者代理端560 ;
[0240]所述查询输出单元542b,还用于若所述类别查询单元542f的检测结果为存在与所述类别信息匹配、已经注册且空闲的服务者代理端560,则将所述与所述类别信息匹配、已经注册且空闲的服务者代理端560作为所述查询到的服务者代理端560。
[0241]请求转发模块543,用于将所述请求接收模块541接收到的服务请求转发给所述服务查询模块542查询到的服务者代理端560 ;
[0242]会话号接收模块544,用于接收所述查询到的服务者代理端560发送的通信会话号,所述通信会话号为所述查询到的服务者代理端560在接收到所述服务请求之后与通信服务器580建立会话所得到的;
[0243]会话号转发模块545,用于将所述会话号接收模块544接收到的通信会话号转发给所述消费者代理端520,以便所述消费者代理端520根据所述通信会话号加入相应的会话,从而使得所述消费者代理端520建立与所述查询到的服务者代理端560之间的通信。
[0244]第二退出接收模块548,用于接收所述查询到的服务者代理端560发送的退出会话请求;
[0245]第二退出通知模块549,用于在所述第二退出接收模块548接收到所述退出会话请求之后,通知所述消费者代理端520退出会话。
[0246]服务者代理端560,包括服务注册模块5601、转发接收模块561、会话建立模块562、会话号发送模块563和第三退出会话模块564。
[0247]服务注册模块5601,用于向所述调度服务器540发送注册请求,所述注册请求包括标识信息和类别信息中的前一种或者全部两种信息。
[0248]转发接收模块561,用于接收调度服务器540转发的服务请求,所述服务请求为消费者代理端520发送给所述调度服务器540,所述调度服务器540根据所述服务请求查询已经注册且空闲的服务者代理端560后,向查询到的服务者代理端560发送的;
[0249]会话建立模块562,用于在所述转发接收模块561接收到所述服务请求之后与通信服务器580建立会话,并获得通信会话号;
[0250]会话号发送模块563,用于将所述通信会话号发送给所述调度服务器540,以便所述调度服务器540将所述通信会话号转发给所述消费者代理端520,以便所述消费者代理端520根据所述通信会话号加入通信服务器580中相应的会话中。
[0251]第三退出会话模块564,用于向所述调度服务器560发送退出会话请求,以便所述调度服务器560在接收到所述退出会话请求之后,通知所述消费者代理端520退出会话。
[0252]综上所述,本实施例提供的通信调度系统,通过根据消费者代理端的服务请求来查询已经注册且空闲的服务者代理端,然后将服务请求转发给查询到的服务者代理端,以便服务者代理端与消费者代理端之间建立通信;解决了当前用户事先未获知其它用户或者其它用户所在频道的频道号码,就无法与其它用户建立通信的问题;达到了消费者代理端在不用获知服务者代理端的信息时,也能够与服务者代理端建立通信的效果。还通过根据服务请求中不包含服务者代理端的标识信息时随机提供一个服务者代理端给消费者代理端,或者,根据服务请求中包含服务者代理端的类别信息时选择提供一个指定的服务者代理端给消费者代理端,达到了不论消费者代理端是否知晓服务者代理端的信息都可以与服务者代理端建立语音通信的效果。
[0253]需要说明的是,本实施例仅以服务者代理端是医院各个科室的医师所使用的电子设备,提供的服务是在线语音诊断为例来举例说明。当服务者代理端提供的服务不同时,类别信息的具体内容也不同,比如,当服务者代理端提供的服务是在线语言学习时,类别信息可以是普通话、英语、法语和俄语之类的。当服务者代理端是聊天服务时,类别信息可以是18-24岁女性、18岁-24岁男性、25-35岁女性、25岁-35岁男性等等。
[0254]还需要说明的是,实施例六和实施例五也可以融合实现成为一个实施例,即用户可以发送不包含服务者代理端、包含服务者代理端的标识信息和包含服务者代理端的类别信息的三种服务请求的任一种给调度服务器,然后由调度服务器来查询服务者代理端,从而使得消费者代理端与查询到的服务者代理端建立语音通信或者视频通信。
[0255]另外,实施例五中主要以消费者代理端来主动退出会话进行举例说明,易于思及的是,实施例五中也可由服务者代理端来主动退出会话;实施例六中主要以服务者代理端来主动退出会话进行举例说明,易于思及的是,实施例六中也可由消费者代理端来主动退出会话O
[0256]需要说明的是:上述实施例提供的通信调度系统在调度通信服务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的通信调度系统与通信调度方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0257]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0258]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0259] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种通信调度方法,其特征在于,所述方法包括: 接收消费者代理端的服务请求; 根据所述服务请求查询已经注册且空闲的服务者代理端; 将所述服务请求转发给查询到的服务者代理端; 接收所述查询到的服务者代理端发送的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述服务请求之后与通信服务器建立会话所得到的; 将所述通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入相应的会话,从而使得所述消费者代理端建立与所述查询到的服务者代理端之间的通信。
2.根据权利要求1所述的通信调度方法,其特征在于,所述根据所述服务请求查询已经注册且空闲的服务者代理端,包括: 检测所有服务者代理端中是否存在已经注册且空闲的服务者代理端; 若检测结果为存在已经注册且空闲的服务者代理端,则将已经注册且空闲的服务者代理端中的一个作为所述查询到的服务者代理端。
3.根据权利要求2所述的通信调度方法,其特征在于,所述将已经注册且空闲的服务者代理端中的一个作 为所述查询到的服务者代理端,包括: 若已经注册且空闲的服务者代理端为两个或者两个以上,则将所述已经注册且空闲的服务者代理端中符合预定条件的一个作为所述查询到的服务者代理端; 所述预定条件包括注册时间最早、优先级最高、服务时长最长、服务质量最好、距离所述消费者代理端最近和与所述消费者代理端之间的通信链路最优中的一条或者几条的组口 ο
4.根据权利要求2所述的通信调度方法,其特征在于,所述检测所有服务者代理端中是否存在已经注册且空闲的服务者代理端之前,还包括: 检测所述服务请求中是否包含服务者代理端的标识信息; 若检测结果为所述服务请求中包含有服务者代理端的标识信息,则继续检测与所述标识信息对应的服务者代理端是否已经注册且空闲; 若检测结果为与所述标识信息对应的服务者代理端已经注册且空闲,则将所述与所述标识信息对应的服务者代理端作为所述查询到的服务者代理端。
5.根据权利要求2所述的通信调度方法,其特征在于,所述检测所有服务者代理端中是否存在已经注册且空闲的服务者代理端之前,还包括: 检测所述服务请求中是否包含服务者代理端的类别信息; 若检测结果为所述服务请求中包含有服务者代理端的类别信息,则继续检测是否存在与所述类别信息匹配、已经注册且空闲的服务者代理端; 若检测结果为存在与所述类别信息匹配、已经注册且空闲的服务者代理端,则将所述与所述类别信息匹配、已经注册且空闲的服务者代理端作为所述查询到的服务者代理端。
6.根据权利要求1至5任一所述的通信调度方法,其特征在于,所述接收消费者代理端的服务请求之前,还包括: 接收至少一个服务者代理端的注册请求; 根据所述注册请求将所述服务者代理端的注册状态由未注册状态切换为已经注册状态,并在所述服务者代理端的注册状态切换为已经注册状态之后,维护所述服务者代理端的服务状态,所述服务状态包括忙碌状态或者空闲状态。
7.根据权利要求1至5任一所述的通信调度方法,其特征在于,所述将所述通信会话号转发给所述消费者代理端之后,还包括: 接收所述消费者代理端发送的退出会话请求; 在接收到所述退出会话请求之后,通知所述查询到的服务者代理端退出会话; 或者, 接收所述查询到的服务者代理端发送的退出会话请求; 在接收到所述退出会话请求之后,通知所述消费者代理端退出会话。
8.一种通信发起方法,其特征在于,所述方法包括: 向调度服务器发送服务请求,以便所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端;并将所述服务请求转发给查询到的服务者代理端; 接收所述调度服务器转发的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述 服务请求之后与通信服务器建立会话所得到、并发送给所述调度服务器的; 根据所述通信会话号加入通信服务器中相应的会话中,从而建立与所述查询到的服务者代理端之间的通信。
9.根据权利要求8所述的通信发起方法,其特征在于,所述向调度服务器发送服务请求,包括: 向所述调度服务器发送包含有服务者代理端的标识信息的服务请求; 或者, 向所述调度服务器发送包含有服务者代理端的类别信息的服务请求。
10.根据权利要求8所述的通信发起方法,其特征在于,所述根据所述通信会话号加入通信服务器中相应的会话中之后,还包括: 主动退出所述通信服务器中相应的会话,并向所述调度服务器发送退出会话请求,以便所述调度服务器在接收到所述退出会话请求之后,通知所述查询到的服务者代理端退出会话。
11.根据权利要求8所述的通信发起方法,其特征在于,所述根据所述通信会话号加入通信服务器中相应的会话中之后,还包括: 接收所述调度服务器发送的退出会话通知,所述退出会话通知是所述查询到的服务者代理端向所述调度服务器发送退出会话请求之后触发的; 根据所述退出会话通知退出相应的会话。
12.一种通信提供方法,其特征在于,所述方法包括: 接收调度服务器转发的服务请求,所述服务请求为消费者代理端发送给所述调度服务器,所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端后,向查询到的服务者代理端发送的; 在接收到所述服务请求之后与通信服务器建立会话,并获得通信会话号; 将所述通信会话号发送给所述调度服务器,以便所述调度服务器将所述通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入通信服务器中相应的会话中。
13.根据权利要求12所述的通信提供方法,其特征在于,所述接收调度服务器转发的服务请求之前,还包括: 向所述调度服务器发送注册请求,所述注册请求包括标识信息和类别信息中的前一种或者全部两种信息。
14.根据权利要求12所述的通信提供方法,其特征在于,所述将所述通信会话号发送给所述调度服务器之后,还包括: 主动退出所述通信服务器中相应的会话,并向所述调度服务器发送退出会话请求,以便所述调度服务器在接收到所述退出会话请求之后,通知所述消费者代理端退出会话。
15.根据权利要求12所述的通信提供方法,其特征在于,所述将所述通信会话号发送给所述调度服务器之后,还包括: 接收所述调度服务器发送的退出会话通知,所述退出会话通知是所述消费者代理端向所述调度服务器发送退出会话请求之后触发的; 根据所述退出会话通知退出相应的会话。
16.一种调度服务器,其特征在于,所述服务器,包括: 请求接收模块,用于接收消费者代理端的服务请求; 服务查询模块,用于根据所述请求接收模块接收到的服务请求查询已经注册且空闲的服务者代理端; 请求转发模块,用于将所述请求接收模块接收到的服务请求转发给所述服务查询模块查询到的服务者代理端; 会话号接收模块,用于接收所述查询到的服务者代理端发送的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述服务请求之后与通信服务器建立会话所得到的; 会话号转发模块,用于将所述会话号接收模块接收到的通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入相应的会话,从而使得所述消费者代理端建立与所述查询到的服务者代理端之间的通信。
17.根据权利要求16所述的调度服务器,其特征在于,所述服务查询模块,包括:空闲检测单元和查询输出单元; 所述空闲检测单元,用于检测所有服务者代理端中是否存在已经注册且空闲的服务者代理端; 所述查询输出单元,用于若所述空闲检测单元的检测结果为存在已经注册且空闲的服务者代理端,则将已经注册且空闲的服务者代理端中的一个作为所述查询到的服务者代理端。
18.根据权利要求16所述的调度服务器,其特征在于,所述查询输出单元,具体用于若所述空闲检测单元的检测结果为已经注册且空闲的服务者代理端为两个或者两个以上,则将所述已经注册且空闲的服务者代理端中符合预定条件的一个作为所述查询到的服务者代理端; 所述预定条件包括注册时间最早、优先级最高、服务时长最长、服务质量最好、距离所述消费者代理端最近和与所述消费者代理端之间的通信链路最优中的一条或者几条的组人口 O
19.根据权利要求16所述的调度服务器,其特征在于,所述服务查询模块,还包括:标识检测单元和标识查询单元; 所述标识检测单元,用于检测所述服务请求中是否包含服务者代理端的标识信息; 所述标识查询单元,用于若所述标识检测单元的检测结果为所述服务请求中包含有服务者代理端的标识信息,则继续检测与所述标识信息对应的服务者代理端是否已经注册且空闲; 所述查询输出单元,还用于若所述标识查询单元的检测结果为与所述标识信息对应的服务者代理端已经注册且空闲,则将所述与所述标识信息对应的服务者代理端作为所述查询到的服务者代理端。
20.根据权利要求16所述的调度服务器,其特征在于,所述服务查询模块,还包括:类别检测单元和类别查询单元; 所述类别检测单元,用于检测所述服务请求中是否包含服务者代理端的类别信息; 所述类别查询单元,用于若所述类别检测单元的检测结果为所述服务请求中包含有服务者代理端的类别信息,则继续检测是否存在与所述类别信息匹配、已经注册且空闲的服务者代理端; 所述查询输出单元,还用于若所述类别查询单元的检测结果为存在与所述类别信息匹配、已经注册且空闲的服务者代理端,则将所述与所述类别信息匹配、已经注册且空闲的服务者代理端作为所述查询到的服务者代理端。
21.根据权利要求16至20任一所述的调度服务器,其特征在于,所述调度服务器,还包括:注册接收模块和状态切换模块; 所述注册接收模块,用于接收至少一个服务者代理端的注册请求; 所述状态切换模块,用于根据所述注册接收模块接收到的注册请求将所述服务者代理端的注册状态由未注册状态切换为已经注册状态,并在所述服务者代理端的注册状态切换为已经注册状态之后,维护所述服务者代理端的服务状态,所述服务状态包括忙碌状态或者空闲状态。
22.根据权利要求16至20任一所述的调度服务器,其特征在于,所述调度服务器,还包括:第一退出接收模块、第一退出通知模块、第二退出接收模块和第二退出通知模块; 所述第一退出接收模块,用于接收所述消费者代理端发送的退出会话请求; 所述第一退出通知模块,用于在所述第一退出接收模块接收到所述退出会话请求之后,通知所述查询到的服务者代理端退出会话; 或者, 所述第二退出接收模块,用于接收所述查询到的服务者代理端发送的退出会话请求; 所述第二退出通知模块,用于在所述第二退出接收模块接收到所述退出会话请求之后,通知所述消费者代理端退出会话。
23.一种消费者代理端,其特征在于,其包括: 请求发送模块,用于向调度服务器发送服务请求,以便所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端;并将所述服务请求转发给查询到的服务者代理端;反馈接收模块,用于接收所述调度服务器转发的通信会话号,所述通信会话号为所述查询到的服务者代理端在接收到所述服务请求之后与通信服务器建立会话所得到、并发送给所述调度服务器的; 会话加入模块,用于根据所述反馈接收模块接收到的通信会话号加入通信服务器中相应的会话中,从而建立与所述查询到的服务者代理端之间的通信。
24.根据权利要求23所述的消费者代理端,其特征在于,所述请求发送模块,具体用于向所述调度服务器发送包含有服务者代理端的标识信息的服务请求;或者,向所述调度服务器发送包含有服务者代理端的类别信息的服务请求。
25.根据权利要求23所述的消费者代理端,其特征在于,所述消费者代理端,还包括:第一退出会话模块; 所述第一退出会话模块,用于主动退出所述通信服务器中相应的会话,并向所述调度服务器发送退出会话请求,以便所述调度服务器在接收到所述退出会话请求之后,通知所述查询到的服务者代理端退出会话。
26.根据权利要求23所述的消费者代理端,其特征在于,所述消费者代理端,还包括:第一通知接收模块和第二退出会话模块; 所述第一通知接收模块,用于接收所述调度服务器发送的退出会话通知,所述退出会话通知是所述查询到的服务者代理端向所述调度服务器发送退出会话请求之后触发的; 所述第二退出会话模块,用于根据所述第一通知接收模块接收到的退出会话通知退出相应的会话。
27.一种服务者代理端,其特征在于,其包括: 转发接收模块,用于接收调度服务器转发的服务请求,所述服务请求为消费者代理端发送给所述调度服务器,所述调度服务器根据所述服务请求查询已经注册且空闲的服务者代理端后,向查询到的服务者代理端发送的; 会话建立模块,用于在所述转发接收模块接收到所述服务请求之后与通信服务器建立会话,并获得通信会话号; 会话号发送模块,用于将所述通信会话号发送给所述调度服务器,以便所述调度服务器将所述通信会话号转发给所述消费者代理端,以便所述消费者代理端根据所述通信会话号加入通信服务器中相应的会话中。
28.根据权利要求27所述的服务者代理端,其特征在于,所述服务者代理端,还包括:服务注册模块; 所述服务注册模块,用于向所述调度服务器发送注册请求,所述注册请求包括标识信息和类别信息中的前一种或者全部两种信息。
29.根据权利要求27所述的服务者代理端,其特征在于,所述服务者代理端,还包括:第三退出会话模块; 所述第三退出会话模块,用于主动退出所述通信服务器中相应的会话,并向所述调度服务器发送退出会话请求,以便所述调度服务器在接收到所述退出会话请求之后,通知所述消费者代理端退出会话。
30.根据权利要求27所述的服务者代理端,其特征在于,所述服务者代理端,还包括:第二通知接收模块和第四退出会话模块;所述第二通知接收模块,用于接收所述调度服务器发送的退出会话通知,所述退出会话通知是所述消费者代理端向所述调度服务器发送退出会话请求之后触发的; 所述第四退出会话模块,用于根据所述第二通知接收模块接收到的退出会话通知退出相应的会话。
31.一种通信调度系统,其特征在于,所述系统包括消费者代理端、服务者代理端、调度服务器和通信服务器;其中, 所述消费者代理端为如权利要求23至权利要求26任一所述的消费者代理端; 所述服务者代理端为如权利要求27至权利要求30任一所述的服务者代理端; 所述调度服 务器为如权利要求16至权利要求22任一所述的调度服务器。
【文档编号】H04L29/06GK104079546SQ201310110135
【公开日】2014年10月1日 申请日期:2013年3月29日 优先权日:2013年3月29日
【发明者】江斌, 耿亮, 曹立勇, 罗佳, 李训耕, 宋晨枫 申请人:广州华多网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1