线上问诊自动分配方法、装置、计算机设备和存储介质与流程

文档序号:16004350发布日期:2018-11-20 19:51阅读:284来源:国知局

本申请涉及计算机技术领域,特别是涉及一种线上问诊自动分配方法、装置、计算机设备和存储介质。



背景技术:

随着生活水平的提高,各方对医疗的关注度也越来越高。当一些寻常的疾病症状出现时自身却无法做出疾病诊断,由于医院距离较远,或者医院排队挂号耗时且麻烦。因此,大部分人会选择线上问诊的方式。

然而,传统的在线问诊方式,把所有不同类型的咨询用户机械的分配给固定的医生,遵循这样的分配方式一旦部分医生咨询的用户流量增多,用户排队时间就会增长,导致用户得不到及时响应。或者当部分医生用户咨询流量骤减时,又会造成医生资源闲置浪费。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够均衡地为用户分配医生的线上问诊自动分配方法、装置、计算机设备和存储介质。

一种线上问诊自动分配方法,所述方法包括:

接收第一终端上传的问诊请求,所述问诊请求包括待咨询用户的用户信息和主诉内容;

根据所述用户信息获取待咨询用户的排队等级和用户类型;

根据所述用户类型选择与所述主诉内容相匹配的医生;

获取所述医生的排队轮盘,所述排队轮盘包括多个不同等级的队列;

将所述待咨询用户存入与所述排队等级相对应的队列中;

接收第二终端的拉取请求,根据所述拉取请求从所述排队轮盘的队列中拉取待咨询用户;

建立所述第一终端与所述第二终端之间的在线问诊通信连接,将拉取到的待咨询用户分配至与所述第二终端对应的医生。

在其中一个实施例中,所述根据所述拉取请求从所述排队轮盘的队列中拉取待咨询用户包括:

根据所述拉取请求触发启动所述排队轮盘队列的出队机制;

根据所述排队轮盘的出队机制从所述队列中拉取待咨询用户。

在其中一个实施例中,所述根据所述排队轮盘的出队机制从所述队列中拉取待咨询用户包括:

获取所述排队轮盘的指针位置,将所述指针位置对应的队列标记为当前队列;

获取所述当前队列中待咨询用户的排序,根据所述排序从所述当前队列拉取待咨询用户。

在其中一个实施例中,在所述根据所述排序从所述当前队列拉取待咨询用户之后,还包括:

将所述排队轮盘的指针位置移动至下一位置,退出出队机制;

若所述排队轮盘的指针位置从当前队列移动至下一队列,所述当前队列中未被拉取的待咨询用户继续保持等待;

当再次接收第二终端的拉取请求时,根据所述拉取请求触发启动所述排队轮盘队列的出队机制;获取所述排队轮盘的指针位置,将所述指针位置对应的队列标记为当前队列;获取所述当前队列中待咨询用户的排序,根据所述排序从所述当前队列拉取待咨询用户;将所述排队轮盘的指针位置移动至下一位置,退出出队机制;若所述排队轮盘的指针位置从当前队列移动至下一队列,所述当前队列中未被拉取的待咨询用户继续保持等待。

在其中一个实施例中,所述用户类型包括付费用户和免费用户;

所述根据所述用户类型选择与所述主诉内容相匹配的医生包括:

分析所述主诉内容确定待咨询用户的疾病症状,获取医生标识,根据所述医生标识选取适配所述疾病症状的医生;

若所述用户类型为付费用户,则从所述适配所述疾病症状的医生中选择付费医生匹配给待咨询用户;

若所述用户类型为免费用户,则从所述适配所述疾病症状的医生中选择免费医生匹配给待咨询用户。

一种线上问诊自动分配装置,所述装置包括:

接收模块,用于接收第一终端上传的问诊请求,所述问诊请求包括待咨询用户的用户信息和主诉内容;

信息获取模块,用于根据所述用户信息获取待咨询用户的排队等级和用户类型;

医生匹配模块,用于根据所述用户类型选择与所述主诉内容相匹配的医生;

缓存模块,用于获取所述医生的排队轮盘,所述排队轮盘包括多个不同等级的队列;将所述待咨询用户存入与所述排队等级相对应的队列中;

所述接收模块还用于接收第二终端的拉取请求;

分配模块,用于根据所述拉取请求从所述排队轮盘的队列中拉取待咨询用户;建立所述第一终端与所述第二终端之间的在线问诊通信连接,将拉取到的待咨询用户分配至于所述第二终端对应的医生。

在其中一个实施例中,所述分配模块还用于根据所述拉取请求触发启动所述排队轮盘队列的出队机制;根据所述排队轮盘的出队机制从所述队列中拉取待咨询用户。

在其中一个实施例中,所述分配模块还用于获取所述排队轮盘的指针位置,将所述指针位置对应的队列标记为当前队列;获取所述当前队列中待咨询用户的排序,根据所述排序从所述当前队列拉取待咨询用户。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行计算机程序时实现上述任意一项所述的线上问诊自动分配方法。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的线上问诊自动分配方法。

上述线上问诊自动分配方法、装置、计算机设备和存储介质,通过接收待咨询用户通过第一终端上传的问诊请求,可以获取待咨询用户的排队等级和用户类型,并根据用户类型选择与主诉内容相匹配的医生,通过可以根据不同的用户类型以及主诉内容为待咨询用户选择合适医生,从而为待咨询用户合理分配医生。根据待咨询用户的排队等级将其存入医生的排队轮盘相对应的队列中。当医生对待咨询用户进行在线问诊时,可以通过第二终端拉取请求,从而在轮盘式的排队中拉取相对应的待咨询用户。确保不同等级不同类型的用户均能以最快的速度得到响应,从而实现了在线问诊时能够均衡地为用户分配响应医生。

附图说明

图1为一个实施例中线上问诊自动分配方法的应用环境图;

图2为一个实施例中线上问诊自动分配方法的流程示意图;

图3为一个实施例中排队轮盘的结构示意图;

图4为一个实施例中根据排队轮盘的出队机制从队列中拉取待咨询用户步骤的流程示意图;

图5为另一个实施例中根据排队轮盘的出队机制从队列中拉取待咨询用户步骤的流程示意图;

图6为一个实施例中根据用户类型选择与主诉内容相匹配的医生步骤的流程示意图;

图7为一个实施例中线上问诊自动分配装置的结构框图;

图8为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的线上问诊自动分配方法,可以应用于如图1所示的应用环境中。第一终端102和第二终端104均通过网络与服务器106进行通信。其中,第一终端102和第二终端104可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器106可以用独立的服务器或者是多个服务器组成的服务器集群来实现。具体地,服务器106接收第一终端102上传的问诊请求,第一终端102上传的问诊请求中包括待咨询用户的用户信息和主诉内容。服务器106根据用户信息和主诉内容获取待咨询用户的排队等级和用户类型,并选择与待咨询用户的用户类型和主诉内容相匹配的医生匹配给待咨询用户。并且,在服务器106为待咨询用户选择医生之后,获取该医生的排队轮盘,排队轮盘包括多个队列,根据待咨询用户的排队等级将待咨询用户存入排队轮盘的队列中。第二终端104发送拉取请求,服务器106接收到第二终端104发送的拉取请求后,根据拉取请求从医生的排队轮盘的队列中拉取待咨询用户。

在一个实施例中,如图2所示,提供了一种线上问诊自动分配方法,以该方法应用于图1中的服务器106为例进行说明,包括以下步骤:

S202,接收第一终端上传的问诊请求,问诊请求包括待咨询用户的用户信息和主诉内容。

问诊请求是指携带用户信息和主诉内容,用于指示服务器建立第一终端和第二终端在线通信连接的请求。第一终端可以是用户终端,第二终端可以是医生终端。其中,用户信息是指待咨询用户的个人信息,包括用户等级和用户渠道。因为用户进行线上问诊之前需要购买诊疗卡,所以用户等级由用户购买的诊疗卡所决定。并且,由于不同诊疗卡之间的等级不一样,所以用户等级即为用户所购买的诊疗卡的等级。当一个用户拥有多张诊疗卡时,用户等级为所拥有的诊疗卡中等级最高的诊疗卡为准。诊疗卡的等级可依据实际应用情况进行设定。例如,可以依据卡类型决定,卡类型可以划分为普通卡、银卡和金卡,不同的卡类型拥有不同的等级。或者可以直接将诊疗卡划分为一级卡、二级卡和三级卡。当用户通过第一终端购买诊疗卡之后,服务器会记录相应的购买记录,以及用户信息对应的用户等级。

用户渠道是指待咨询用户上传问诊请求时的服务渠道,包括付费渠道和免费渠道。若待咨询用户选择免费咨询则进入免费咨询渠道,若待咨询用户选择付费咨询则进入付费渠道。主诉一般是医学和心理学中的专业用语,是由病人自述自身的症状或者体征等情况的,主诉内容是指待咨询用户对自身病症情况的描述。

具体地,服务器从第一终端接收到包含待咨询用户的用户信息和主诉内容的问诊请求后,可根据用户信息确定用户等级和用户渠道。如果有待咨询用户的用户信息中没有用户等级,服务器首先从数据库中调取该用户相应的购买记录,若购买记录中显示用户已购买过诊疗卡,则根据诊疗卡的等级更新该用户的等级信息。若购买记录中显示用户从未购买过诊疗卡,服务器则向第一终端的待咨询用户发送购买诊疗卡的指令。

S204,根据用户信息获取待咨询用户的排队等级和用户类型。

用户信息包括用户等级和用户渠道等。用户等级可以视为待咨询用户的排队等级,待咨询用户的用户类型由用户渠道决定。具体地,服务器根据用户信息获取到用户等级和用户渠道后,根据用户等级和用户渠道确定待咨询用户的排队等级和用户类型。当待咨询用户上传问诊请求的用户渠道为付费渠道时,待咨询用户即为付费用户;当待咨询用户上传问诊请求的用户渠道为免费渠道时,待咨询用户即为免费用户。

S206,根据用户类型选择与主诉内容相匹配的医生。

具体地,服务器将待咨询用户上传的主诉内容进行分析,获取主诉内容中有关描述待咨询用户病症的关键词,然后将所述关键词与关键词库中存储的疾病关键进行筛选对比,确定用户可能患有的疾病。服务器再次获取所有存储在数据库中的医生信息表,其中,医生信息表中包括医生擅长的疾病。根据医生信息表选择擅长治疗该疾病的医生。并且,服务器根据用户类型确定待咨询用户为付费用户或者免费用户之后,根据待咨询用户的用户类型从擅长治疗该疾病的医生当中选择合适的医生进行匹配。若待咨询用户为付费用户,则从擅长的医生当中选择付费医生;若待咨询用户为免费用户,则从擅长的医生当中选择免费医生。

S208,获取医生的排队轮盘,排队轮盘包括多个不同等级的队列。

排队轮盘是指一种以轮盘形式进行排队的方式,轮盘可以设置多个刻度,刻度数量可以根据实际需求进行设定。排队轮盘包括多个队列,队列由多个刻度组成,即一个队列包括至少一个刻度。因此,只要设置了队列,即能在排队轮盘上找到属于该队列至少一格的刻度数。队列的数量同样可以有多个,排队轮盘中具体的队列数量同样可以根据实际需求进行设定。队列都设有不同的等级,等级的高低由组成该队列的刻度数量决定,组成队列的刻度数量越多,队列的等级也就越高。刻度数量只能决定队列等级的高低和该队列在轮盘转动一圈时能够出队的待咨询用户数量,不能决定队列中可以排队的待咨询用户数量。也就是说,队列所能容纳的排队数量与刻度数量无关,刻度数量只能代表用户等级的高低,因为队列所占的刻度数量越多,轮盘转动一圈该队列的出队概率越高。因此,队列所能容纳的排队数量可以根据实际情况随意设定。例如,轮盘设置的刻度为30个,第一个队列所占用的刻度数量为10个,第二个队列所占用的刻度数量为5个,第一个队列等级高于第二个队列等级,符合第一队列等级的用户都可以在第一队列中排队,第一队列可以容纳的排队数量不仅仅可以是10个,还可以大于或者小于10个均可。同样符合第二队列等级的用户都可以在第二队列中排队,不限于5个,还可以大于或者小于5个。只是当轮盘转动一圈时,能从第一个队列拉取的用户数量为10个,而比第一队列等级低的第二队列可以拉取的用户为5个,剩余未被拉取的用户需要等到下一轮。所以,使用轮盘式的出队方式是在保证等级高的用户可以享有一定的优先权的同时还可以减少低等级用户的等待时间。

在一个实施中,如图3所示,为排队轮盘的结构示意图。包括:队列302、队列304、队列306和指针308。其中,队列302由六个刻度组成,编号分别为1、2、3、4、5和6,指针300用于指向刻度。并且,由于队列所拥有的刻度数量越多则队列等级越高,则如图所示,队列306的等级越高、其次为队列302、队列304等级最低。队列在排队轮盘的排序方式包括多种。例如,可以按照队列等级高到低的顺序顺时针进行排序、队列等级低到高的顺序顺时针排序或者如图3所示的可以将不同等级的队列交替进行排序。传统排队方式是通过设定高等级的待咨询用户优先出队,所以一旦有等级高的用户排队都会优先等级高的用户先出队而导致低等级用户排队时间过长,响应速度慢。而排队轮盘形式的排队方式是以指针一格一格移动位置来决定待咨询用户出队的顺序,保证了待咨询用户无论在哪个队列进行排队都有出队的机会,并且设置等级高的待咨询用户进入等级高的队列,等级越高的队列所占的刻度数量越多,能出队的概率也就越高。能在保证高等级用户的权益的同时还能减少低等级用户的等待时间。

每个医生都配备一个对应的排队轮盘,可以支持由医生独立的配置。即医生可以根据实际情况划分刻度数量和队列数量,还可以针对性自行设置队列等级,等级越高即代表该队列占据的刻度数量越多,意味着在该队列等待问诊的待咨询用户出队的概率越大,等待响应时间越短。

具体地,当根据用户类型和主诉内容选择到与待咨询用户相匹配的医生后,获取该医生所对应的排队轮盘,等候待咨询用户进入排队轮盘的队列中。

S210,将待咨询用户存入与排队等级相对应的队列中。

不同的队列有不同的等级,每个队列中所等候的待咨询用户的排队等级与队列等级是保持一致的。也就是说,每个排队等级都能在排队轮盘中找到等级相对应的队列,若待咨询用户的排队等级为2,则进入的队列为排队轮盘中等级为2的队列。由于不同的排队等级取决于待咨询用户的用户等级,而用户等级又取决于用户购买的诊疗卡,等级越高的诊疗卡用户所花费的费用就越高。将等级高的用户存入队列等级高的队列中,保证了高等级用户的优先权,同时利用轮盘式的排队方式又防止了低等级用户的等待响应时间过长。

具体地,获取到待咨询用户所匹配医生的排队轮盘后,根据用户的排队等级将待咨询用户存入排队轮盘与排队等级相对应的队列中,并通知第一终端待咨询用户已成功存入队列中。

S212,接收第二终端的拉取请求,根据拉取请求从排队轮盘的队列中拉取待咨询用户。

当医生处于空闲状态,或者医生接诊完上一位用户,可以再为下一位用户进行在线问诊时,可以通过第二终端向服务器发送拉取请求。拉取请求中指携带了排队轮盘信息。其中,排队轮盘信息包括与该排队轮盘相对应医生的账号信息,每个医生都有自己的排队轮盘,即服务器根据医生的账号信息可以确定医生所对应的排队轮盘。具体地,服务器从第二终端接收到包含排队轮盘信息的拉取请求,根据拉取请求从相对应的排队轮盘中的队列拉取待咨询用户,并建立第一终端和第二终端的在线通信连接。

S214,建立第一终端与第二终端之间的在线问诊通信连接,将拉取到的待咨询用户分配至与第二终端对应的医生。

第二终端可以是医生终端,当医生通过第二终端向服务器发送拉取请求,服务器成功从排队轮盘的队列中拉取到待咨询用户后,即建立第一终端与第二终端之间的在线问诊通信连接,将该待咨询用户分配给第二终端对应的医生。

上述线上问诊自动分配方法中,通过接收待咨询用户通过第一终端上传的问诊请求,可以获取待咨询用户的排队等级和用户类型,并根据用户类型选择与主诉内容相匹配的医生,通过根据为不同的用户类型以及主诉内容为待咨询用户选择合适的医生,从而为待咨询用户合理分配医生。根据待咨询用户的排队等级将其存入医生的排队轮盘相对应的队列中。当医生对待咨询用户进行在线问诊时,可以通过第二终端上传拉取请求,从而在轮盘式的排队中拉取相应的待咨询用户。确保不同等级不同类型的用户均能以最快的速度得到响应,从而实现了在线问诊时能够均衡地为用户分配相应医生。

在一个实施例中,根据拉取请求从排队轮盘的队列中拉取待咨询用户包括:根据拉取请求触发启动排队轮盘队列的出队机制;根据排队轮盘的出队机制从队列中拉取待咨询用户。

出队机制是指一种从排队轮盘的队列中拉取正在排队的待咨询用户出队的逻辑方式。出队机制的出队逻辑为当出队机制每被触发一次后,若有待咨询用户从排队轮盘的队列中出队,则排队轮盘的指针即向顺时针方向移动一格,并退出出队机制;若没有待咨询用户从排队轮盘的队列中出队,则排队轮盘的指针即向顺时针方向移动一格后自动触发重新启动出队机制,直到有待咨询用户从排队轮盘的队列中出队。

具体地,第二终端向服务器上传用于指示服务器建立第一终端和第二终端在线通信连接的拉取请求后,首先应该需要为第二终端拉取一个可以建立连接的第一终端。因此,服务器接收拉取请求后即会触发启动排队轮盘队列的出队机制,当出队机制被触发启动根据出队逻辑从排队轮盘的队列中拉取待咨询用户,待咨询用户拉取成功后服务器向第一终端发送相应通知,即医生已接诊。服务器建立第一终端和第二终端之间的在线问诊通信连接。上述方法当医生通过第二终端上传拉取请求,从而触发启动排队轮盘的出队机制,通过轮盘式的排队方式中拉取相应的待咨询用户,确保不同等级的用户均能得到最快的响应速度。

在一个实施例中,如图4所示,根据排队轮盘的出队机制从队列中拉取待咨询用户包括以下步骤:

S402,获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列。

指针用于标记轮盘当前的位置,由于排队轮盘是由多个刻度组成,即通过设置指针用于指向排队轮盘的位置,实际上就是指针指向的刻度,也就是说指针位置实际上指向的是排队轮盘中的某一刻度。当前队列是指即将被服务器拉取待咨询用户的队列。

具体地,当出队机制被触发启动后,服务器即会获取排队轮盘的指针位置,将指针位置指向的刻度所对应的队列标记为当前队列。也就是说当前指针位置所指向的刻度属于哪一个队列,则该队列标记为当前队列。

S404,获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户。

待咨询用户在进入队列中排队时会按照先进先出的原则进行排序。其中,先进先出是指处理从队列或者堆栈中发出的程序工作要求的一种方法,它是最早要求的将被最先处理。即本实施例中将待咨询用户按照先进先出的原则在队列中进行排序,先进入排队轮盘中排队的待咨询用户优先被服务器拉取出来。例如排队轮盘中队列的用户排队顺序为:用户1、用户2、用户3,那么当用户4进入该队列中进行排队的时候,应该排在用户3后面,即只有当用户1、用户2和用户3均出队成功才会轮到用户4出队,利用先进先出的原则进行排序保证同一等级的用户可以按照进入排队的时间有序的被拉取出队。

如图5所示,在根据排序从当前队列拉取待咨询用户之后还包括以下步骤:

S506,将排队轮盘的指针位置移动至下一位置,退出出队机制。

当从排队轮盘中的队列中拉取待咨询用户时,服务器是根据指针所指向的刻度确定当前队列,而从当前队列中拉取待咨询用户。为了确保从队列中一次只能拉取一个待咨询用户,在从当前队列拉取待咨询用户成功之后,需要将排队轮盘的指针位置移动至下一位置,并退出出队机制等待下一次的拉取请求。若在根据排序从当前队列拉取待咨询用户失败,则同样需要将排队轮盘的指针位置移动至下一位置,但是移动至下一位置后会重新触发启动出队机制,直到有待咨询用户被拉取出队,以防止当没有待咨询用户出队时,出队机制陷入暂停状态。其中,指针位置的移动规则是按照顺时针方向进行移动。

若在根据排序从当前队列拉取待咨询用户失败后,将排队轮盘的指针位置移动至下一位置,并重新触发启动出队机制,但是直到执行次数已超过轮盘总刻度数量,也就是轮盘已经转动一圈了仍然没有成功拉取待咨询用户,则退出出队机制并通知第二终端当前无待咨询用户排队。需要等待第二终端重新向服务器发送拉取请求重新触发启动出队机制拉取待咨询用户,通过设置可预期的退出条件,以避免出队机制进入死循环。

S508,若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户继续保持等待。

指针位置移动至下一队列是指以顺时针方向看,当前指针位置所指向的刻度为该刻度所对应的队列的最后一个刻度,并且该刻度已经执行完一次拉取待咨询用户的步骤后,需要将指针位置移动到下一位置,因为该刻度已经是当前队列的最后一个刻度,即指针会移动到下一队列中的第一个刻度的位置。也就是当指针位置移动至下一位置时,下一位置所对应的刻度属于另一个队列。

未被拉取的待咨询用户包括剩余待咨询用户和新增待咨询用户。例如,假设队列所占的刻度数量为5个,但是,当排队轮盘的指针位置移动到该队列的第一个刻度时,当前队列里已经有7个排对的待咨询用户。根据出队机制出队逻辑指针位置顺时针移动的5次都会从该队列中拉取待咨询用户,但是当移动第6次的时候,指针位置是移动到下一队列中去了,所以该队列中还剩余2个待咨询用户为未被拉取的待咨询用户。新增待咨询用户是指当出队机制正好执行到该队列时,该队列还未被拉取出队的待咨询用户数量等于或大于该队列还未被移动到的刻度数量时,有新增加到该队列中进行排队的待咨询用户。例如,该队列未被移动到的刻度数量还有2个,但是还未被执行的待咨询用户大于2位,意味着该队列在这一轮中能被拉取出队的待咨询用户还剩2位,若在这个过程中有新增加进来的待咨询用户则为未被拉取的待咨询用户。但是,若未被移动到的刻度数量还有2个,而已经在队列中排队的待咨询用户只剩余1位时,若有1名新增加进来排队的待咨询用户能够在指针位置移动到下一队列之前进入该队列进行排队,则有机会在这一轮中被拉取出队的。

具体地,该队列一轮执行完毕后未被拉取的待咨询用户数量依实际情况决定,而未被拉取的待咨询用户需要继续保持等待状态,直到排队轮盘的指针位置回到该队列才能够有机会被拉取出队,也就是排队轮盘转动一轮后指针又回到该队列所在的刻度位置时。

S510,当再次接收第二终端的拉取请求时,根据拉取请求触发启动排队轮盘队列的出队机制;获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列。获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户。将排队轮盘的指针位置移动至下一位置,退出出队机制。若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户继续保持等待。

具体地,当服务器下一次接收到第二终端所上传携带有排队轮盘信息的拉取请求时,服务器重新响应拉取请求并触发启动排队轮盘的出队机制。出队机制被触发启动后首先找到医生对应的排队轮盘,再根据出队逻辑获取排队轮盘当前指针位置所指向的刻度,确定该刻度所对应的队列为当前队列,获取当前队列中待咨询用户的排队顺序,按照先进先出的原则从当前队列中拉取待咨询用户。若成功拉取到待咨询用户,则将排队轮盘的指针顺时针移动一格到下一刻度的位置,并退出出队机制。若拉取待咨询用户失败,则同样将排队的指针顺时针移动一格到下一刻度的位置,并重新触发启动出队机制去拉取待咨询用户,直到成功拉取到待咨询用户。若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户保持等待,直至排队轮盘的指针位置回到当前队列。

上述在线问诊分配方法,当排队轮盘的出队机制被触发启动并成功拉取到待咨询用户后,而将排队轮盘的指针位置移动到下一位置并退出出队机制,只能等待下一次的拉取请求才能重新触发启动出队机制,从而确保了一次只能从队列中拉取一个待咨询用户。而当轮盘转动一圈后队列中还有未出队的待咨询用户需要等到下一轮指针重新转到该队列所占的刻度位置时才能有机会出队,从而保证了不同等级用户之间的排队的有序性,防止由于高等级用户的优先权而占用低等级用户的出队名额。

在一个实施例中,用户类型包括付费用户和免费用户。如图6所示,根据用户类型选择与主诉内容相匹配的医生包括以下步骤:

S602,分析主诉内容确定待咨询用户的疾病症状,获取医生标识,根据医生标识选取适配疾病症状的医生。

具体地,主诉内容为待咨询用户对自身病症状态的一种描述,根据待咨询用户描述的内容确定用户可能患有的疾病类型,根据疾病类型获取所有擅长该疾病的医生。例如,当待咨询用户所描述的主诉内容为“最近喉咙不舒服,总是咳嗽并且偶尔还会鼻塞”,根据该主诉内容中的喉咙、咳嗽和鼻塞等关键词确定待咨询用户可能患有的疾病为感冒。获取医生标识,医生标识包括医生所擅长的疾病。根据医生标识确定所有擅长医治感冒疾病的医生。

S604,若用户类型为付费用户,则从适配疾病症状的医生中选择付费医生匹配给待咨询用户。

具体地,付费用户是指支付一定付费用进行咨询的用户,付费医生为需要收取一定费用才能进行咨询的医生。所以,当用户类型为付费用户时,从根据用户主诉内容已经获取到的所有擅长该疾病症状的医生中优先选择付费医生分配给待咨询的付费用户,并在咨询结束时根据咨询时间的长短扣除费用。

S606,若用户类型为免费用户,则从适配疾病症状的医生中选择免费医生匹配给待咨询用户。

具体地,免费用户是指不支付任何费用进行咨询的用户,免费医生为不需要收取一定费用即可进行咨询的医生。当用户类型为免费用户时,从根据用户主诉内容已经获取到的所有擅长该疾病症状的医生中优先选择免费医生分配给待咨询的免费用户。

在一个实施例中,若根据主诉内容已经获取到的所有擅长该疾病症状的医生中同时有多名付费医生或免费医生,服务器则从数据库中获取多名付费医生或免费医生的医生信息表。其中,医生信息表包括医生姓名、性别和出生年月等基本个人资料、所属科室以及医生职称等。根据医生职称从多名付费医生或免费医生中优先选择职称级别最高的分配给咨询用户。

并且,若根据付费用户的主诉内容所获取到的所有擅长该疾病症状中的医生中没有付费医生,则为用户分配擅长的免费医生进行咨询。若根据免费用户的主诉内容所获取到的所有擅长该疾病症状中的医生中没有免费医生,则为用户分配擅长的付费医生进行咨询。免费用户匹配到付费医生时,免费用户获得15分钟的免费咨询时间,时间一到用户可以根据实际情况结束咨询或者付费继续咨询。如果付费医生只是被动的等待付费用户的咨询,当付费用户咨询量不足时,则会产生资源闲置和浪费,并且当付费用户或免费用户匹配不到相应的付费医生或免费医生时,而当时却又有其他合适的免费医生或付费医生,如果坚持付费用户分配付费医生或者免费医生分配免费医生,则会造成用户问题得不到及时响应,因此,根据不同情况和不同用户类型为用户分配合适的医生。

上述线上问诊自动分配方法,通过接收待咨询用户通过第一终端上传的问诊请求,可以获取待咨询用户的排队等级和用户类型,通过根据用户类型选择与主诉内容相匹配的医生,可以根据不同的用户类型以及主诉内容为待咨询用户选择合适医生,从而为待咨询用户合理分配医生。根据待咨询用户的排队等级将其存入排队轮盘相对应的队列中。当医生对待咨询用户进行在线问诊时,可以通过第二终端拉取请求,从而在轮盘式的排队中拉取相对应的待咨询用户。确保不同等级不同类型的用户均能以最快的速度得到响应,从而实现了在线问诊时能够均衡地为用户分配响应医生。

应该理解的是,虽然图2、4、5和6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、4、5和6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图7所示,提供了一种线上问诊自动分配装置700,包括:接收模块702、信息获取704、医生匹配模块706、缓存模块708和分配模块710,其中:

接收模块702,用于接收第一终端上传的问诊请求,问诊请求包括待咨询用户的用户信息和主诉内容。

信息获取704,用于根据用户信息获取待咨询用户的排队等级和用户类型。

医生匹配模块706,用于根据用户类型选择与主诉内容相匹配的医生。

缓存模块708,用于获取医生的排队轮盘,排队轮盘包括多个不同等级的队列。将待咨询用户存入与排队等级相对应的队列中。

所述接收模块702还用于接收第二终端的拉取请求;

分配模块710,用于根据拉取请求从排队轮盘的队列中拉取待咨询用户;建立第一终端与第二终端之间的在线问诊通信连接,将拉取到的待咨询用户分配至第二终端对应的医生。

在一个实施例中,分配模块710还用于根据拉取请求触发启动排队轮盘队列的出队机制;根据排队轮盘的出队机制从队列中拉取待咨询用户。

在一个实施例中,分配模块710还用于获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列;获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户。

在一个实施例中,分配模块710还用于将排队轮盘的指针位置移动至下一位置,退出出队机制;若所述排队轮盘的指针位置从当前队列移动至下一队列,所述当前队列中未被拉取的待咨询用户继续保持等待;当下一次接收第二终端的拉取请求时,根据所述拉取请求触发启动所述排队轮盘队列的出队机制;获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列;获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户;将排队轮盘的指针位置移动至下一位置,退出出队机制;若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户继续保持等待。

在一个实施例中,医生匹配模块706还用于分析主诉内容确定待咨询用户的疾病症状,获取医生标识,根据医生标识选取适配疾病症状的医生。若用户类型为付费用户,则从适配疾病症状的医生中选择付费医生匹配给待咨询用户。若用户类型为免费用户,则从适配疾病症状的医生中选择免费医生匹配给待咨询用户。

关于线上问诊自动分配装置的具体限定可以参见上文中对于线上问诊自动分配方法的限定,在此不再赘述。上述线上问诊自动分配装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种线上问诊自动分配方法。

本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

接收第一终端上传的问诊请求,问诊请求包括待咨询用户的用户信息和主诉内容;

根据用户信息获取待咨询用户的排队等级和用户类型;

根据用户类型选择与主诉内容相匹配的医生;

获取医生的排队轮盘,排队轮盘包括多个不同等级的队列;

将待咨询用户存入与排队等级相对应的队列中;

接收第二终端的拉取请求,根据拉取请求从排队轮盘的队列中拉取待咨询用户;

建立第一终端与第二终端之间的在线问诊通信连接,将拉取到的待咨询用户分配至于第二终端对应的医生。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

根据拉取请求触发启动排队轮盘队列的出队机制;

根据排队轮盘的出队机制从队列中拉取待咨询用户。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列;

获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将排队轮盘的指针位置移动至下一位置,退出出队机制;

若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户继续保持等待;

当再次接收第二终端的拉取请求时,根据拉取请求触发启动排队轮盘队列的出队机制;获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列;获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户;将排队轮盘的指针位置移动至下一位置,退出出队机制;若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户继续保持等待。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

分析主诉内容确定待咨询用户的疾病症状,获取医生标识,根据医生标识选取适配疾病症状的医生;

若用户类型为付费用户,则从适配疾病症状的医生中选择付费医生匹配给待咨询用户;

若用户类型为免费用户,则从适配疾病症状的医生中选择免费医生匹配给待咨询用户。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

接收第一终端上传的问诊请求,问诊请求包括待咨询用户的用户信息和主诉内容;

根据用户信息获取待咨询用户的排队等级和用户类型;

根据用户类型选择与主诉内容相匹配的医生;

获取医生的排队轮盘,排队轮盘包括多个不同等级的队列;

将待咨询用户存入与排队等级相对应的队列中;

接收第二终端的拉取请求,根据拉取请求从排队轮盘的队列中拉取待咨询用户;

建立第一终端与第二终端之间的在线问诊通信连接,将拉取到的待咨询用户分配至于第二终端对应的医生。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

根据拉取请求触发启动排队轮盘队列的出队机制;

根据排队轮盘的出队机制从队列中拉取待咨询用户。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列;

获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将排队轮盘的指针位置移动至下一位置,退出出队机制;

若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户继续保持等待;

当再次接收第二终端的拉取请求时,根据拉取请求触发启动排队轮盘队列的出队机制;获取排队轮盘的指针位置,将指针位置对应的队列标记为当前队列;获取当前队列中待咨询用户的排序,根据排序从当前队列拉取待咨询用户;将排队轮盘的指针位置移动至下一位置,退出出队机制;若排队轮盘的指针位置从当前队列移动至下一队列,当前队列中未被拉取的待咨询用户继续保持等待。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

分析主诉内容确定待咨询用户的疾病症状,获取医生标识,根据医生标识选取适配疾病症状的医生;

若用户类型为付费用户,则从适配疾病症状的医生中选择付费医生匹配给待咨询用户;

若用户类型为免费用户,则从适配疾病症状的医生中选择免费医生匹配给待咨询用户。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1