本申请涉及在线教育领域,尤其涉及一种排课方法、装置、电子设备和存储介质。
背景技术:
随着互联网技术的发展,在线教育平台发展十分迅速,在线教育由于上课时间灵活和上课地点不受限制的特点,受到用户的广泛欢迎,在线教学的教学形式可以是一对多,也可以是一对一。在线教育平台中,学生和教师的资源比较丰富,学生在完成选课后,如何匹配到合适的教师进行授课是目前亟待解决的问题。
技术实现要素:
本申请解决的技术问题是:在线教育平台上注册的学生和教师的数量比较多,教师可以利用在线教育平台灵活的设置授课时间,学生利用在线教育平台完成课程预约操作,学生通过选择教师完成课时的安排,这种学生和教师之间的匹配过程耗时较长。
第一方面,本申请提供了一种排课方法,包括:
获取学生标识关联的课时需求信息,学生标识用于表示学生的身份,课时需求信息表示该学生参加的一个或多个课时的相关信息,课时需求信息包括上课时间,上课时间可以包括上课日期和上课时间段,上课时间段可以用上课开始时刻、上课结束时刻和上课时长中的一种或多种来表示。在教师资源池中搜索与课时需求信息匹配的目标教师标识,教师资源池中包括多个待排课的教师标识,各个教师标识关联有授课资源信息,授课资源信息包括授课时间,授课时间包括授课日期和授课时间段,授课时间段可以使用授课开始时刻、授课结束时刻和授课时长中的一种或多种来表示。本申请实施例中学生和教师之间的匹配可以使用学生的上课时间和教师的授课时间进行匹配。例如:学生a的上课时间为6月1日的18:00~20:00,教师b的授课时间为6月1日~6月30日的18:00~20:00,那么学生a的上课时间和教师b的授课时间是匹配的。又例如:学生a的上课时间为6月1日的19:00~21:00,教师b的授课时间为6月15日~6月30日的19:00~21:00,那么学生a的上课时间和教师b的授课时间是不匹配的。将学生标识、上课时间和目标教师标识进行关联得到课时安排信息,以及存储课时安排信息。
在一种可能的设计中,课时需求信息可以对应一个或多个课时,在课时需求信息对应多个课时的情况下,多个课时属于同一课程,多个课时分配的教师标识可能相同,也可能不相同。
在一个可能的设计中,课程包含的多个课时,各个课时的上课时间可以是学生根据实际需要进行自定义,也可以是服务器预存储或预配置的固定时间,另外,教师标识关联的授课时间段可以是教师根据实际需要进行自定义,也可以是服务器预存储或预配置的固定时间。例如:课程a包括30个课时,规定在6月份完成30个课时,服务器预先配置的30个课时的上课时间为6月1日~6月30日的18:00~20:00。又例如:学生a选择课程1后,服务器在学生a的终端设备上显示用户界面,用户界面用于设置课程1包含的30个课时的自定义设置,学生a通过与该用户界面的交互,设置在6月1日~6月30日的19:00~21:00完成30个课时。又例如:教师b通过终端设备登录到服务器,教师b通过终端设备设置授课时间为:6月1日~6月15日的18:00~22:00,在教师b的授课时间和学生a的上课时间匹配时,服务器将教师b的授课时间设置为锁定状态,那么其他学生将无法占用教师b的该授课时间。例如:学生a的上课时间为6月1日的18:00~20:00,教师b的授课时间为6月1日~6月15日的18:00~22:00,那么学生a和教师b是匹配的,完成匹配后,将教师b的授课时间6月1日18:00~20:00设置为锁定状态。
在一种可能的设计中,在教师资源池中搜索与课时需求信息匹配的目标教师标识,包括:
在教师资源池中搜索在上课时间为可用状态的教师标识;
在可用状态的教师标识的数量为多个的情况下,在多个可用状态的教师标识中选择账户等级最高的教师标识作为目标教师标识,授课资源信息还包括账户等级,账户等级用于表示预设时长内学生对教师的课时的满意度的评价,账户等级越高表示满意度越高,反之表示满意度越低,以实现快速的匹配到符合上课时间的满意度最高的教师。如果可用状态的教师标识仅有一个,那么将该教师标识作为目标教师标识;
或者,在多个可用状态的教师标识中选择排课时长最少的教师标识作为目标教师标识,授课资源信息还包括排课时长,排课时长标识教师在预设时长内安排的时长,以实现各个教师之间排课时长的均衡。
在一种可能的设计中,将学生标识、上课时间和目标教师标识进行关联得到课时安排信息,以及存储课时安排信息,还包括:
将目标教师标识在上课时间内设置为锁定状态,以及将学生标识在上课时间内设置为锁定状态,这样在完成教师和学生的配对后,将教师和学生在该课时进行锁定,避免其他学生教师在该课时的时间资源,以及避免学生抢占其他教师在该课时的时间资源。
在一种可能的设计中,还包括:
在所述上课时间到时,创建虚拟教室;
若所述学生标识对应的学生账户和所述目标教师标识对应的教师账户为在线状态,将登录所述学生账户的第一终端设备和登录所述教师账户的第二终端设备加入到所述虚拟教室;
采集来自所述第一终端设备的第一视频流,以及采集来自所述第二终端设备的第二视频流;
将所述第一视频流和所述第二视频流拼接成聚合视频流;
将所述第一终端设备和所述第二终端设备推送所述聚合视频流;或
若所述学生账户为离线状态,确定与所述学生账户关联的电话号码,根据所述电话号码发送语音呼叫请求。
在一种可能的设计中,还包括:
统计预设时长内所述目标教师标识对应的课时缺席次数;
若所述课时缺席次数大于所述预设次数,将所述目标教师标识从所述教师资源池中移除。
在一种可能的设计中,还包括:
将所述课时安排信息发送给第一终端设备和第二终端设备。
在一种可能的设计中,还包括:
接收所述第二终端设备发送的授课资源配置请求;其中,所述授课资源配置请求携带所述目标教师标识对应的教师账户、课程名称和授课时间;
在验证所述目标教师标识对应教师账户合法后,将所述目标教师标识加入到所述教师资源池中。
第二方面,本申请提供了一种装置,包括:
获取单元,用于获取学生标识关联的课时需求信息;其中,所述课时需求信息包括上课时间;
匹配单元,用于在教师资源池中搜索与所述课时需求信息匹配的目标教师标识;其中,所述教师资源池中的各个教师标识关联有授课资源信息,所述授课资源信息包括授课时间;
关联单元,用于将所述学生标识、所述上课时间和所述目标教师标识进行关联得到课时安排信息,以及存储所述课时安排信息。
本申请又一方面提供了一种装置,可以实现上述第一方面的排课方法。例如所述装置可以是芯片(如数字处理芯片dsp或应用处理器芯片等)或者服务器。可以通过软件、硬件、或者通过硬件执行相应的软件实现上述方法。
在一种可能的实现方式中,所述装置的结构中包括处理器、存储器;所述处理器被配置为支持所述装置执行上述排课方法中相应的功能。存储器用于与处理器耦合,其保存所述装置必要的程序(指令)和/或数据。可选的,所述装置还可以包括通信接口用于支持所述装置与其他网元之间的通信。
在另一种可能的实现方式中,所述装置可以包括执行上述方法中相应动作的单元模块。
在又一种可能的实现方式中,包括处理器和收发装置,所述处理器与所述收发装置耦合,所述处理器用于执行计算机程序或指令,以控制所述收发装置进行信息的接收和发送;当所述处理器执行所述计算机程序或指令时,所述处理器还用于实现上述方法。其中,所述收发装置可以为收发器、收发电路或输入输出接口。当所述装置为芯片时,所述收发装置为收发电路或输入输出接口。
当所述装置为芯片时,发送单元可以是输出单元,比如输出电路或者通信接口;接收单元可以是输入单元,比如输入电路或者通信接口。当所述装置为网络设备时,发送单元可以是发射器或发射机;接收单元可以是接收器或接收机。
本申请又一方面提供了一种装置,该装置包括:存储器和处理器;其中,所述存储器中存储一组程序代码,且所述处理器用于调用所述存储器中存储的程序代码,执行各方面所述的方法。
本申请的又一方面提了供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
本申请的又一方面提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
实施本申请的实施例,通过获取学生标识的课时需求信息,课时需求信息包括上课时间,在教师资源池中搜索与课时需求信息匹配的目标教师标识,将学生标识、上课时间和目标教师标识进行关联得到课时安排信息,使得在上课时间内学生和教师均为可用状态,能快速的实现学生和教师的匹配,提高教师资源的利用率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的网络架构图;
图2是本申请实施例提供的一种排课方法的流程示意图;
图3是本申请实施例提供的排课方法的另一流程示意图;
图4是本申请实施例提供的一种装置的结构示意图;
图5是本申请实施例提供的一种装置的另一结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
图1示出了可以应用于本申请的排课方法或排课装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备100、第一网络101、服务器102、第二网络103和终端设备104。第一网络104用于在终端设备101和服务器102之间提供通信链路的介质,第二网络103用于在终端设备104和服务器102之间提供通信链路的介质。第一网络101和第二网络103可以包括各种类型的有线通信链路或无线通信链路,例如:有线通信链路包括光纤、双绞线或同轴电缆的,无线通信链路包括蓝牙通信链路、无线保真(wireless-fidelity,wi-fi)通信链路或微波通信链路等。
其中,本申请中的第一终端设备可以是终端设备100,第二终端设备可以是终端设备104;或第一终端设备可以是终端设备104,第二终端设备为终端设备100,本申请实施例不作限制。第一终端设备是使用学生账户登录的终端设备,第二终端设备是使用教师账户登录的终端设备。
终端设备100通过第一网络101、服务器102、第二网络103和终端设备104之间进行通信,终端设备100向服务器102发送消息,服务器102将消息转发给终端设备104,终端设备104将消息发送给服务器102,服务器102将消息转发给终端设备100,由此实现终端设备100和终端设备104之间的通信,终端设备100和终端设备104之间交互的消息类型包括控制数据和业务数据。
其中,在本申请中,终端设备100为学生上课的终端,终端设备104为教师上课的终端;或终端设备100为教师上课的终端,终端设备104为学生上课的终端。例如:业务数据为视频数据,终端设备100通摄像头采集学生上课过程中的第一视频数据,终端设备通过摄像头104采集教师上课过程中的第二视频数据,终端设备100将第一视频数据发送给服务器102,服务器102将第一视频数据转发给终端设备104,终端设备104在界面上显示第一视频数据和第二视频数据;终端设备104将第二视频数据发送给服务器102,服务器102将第二视频数据转发给终端设备100,终端设备100显示第一视频数据和第二视频数据。
其中,本申请的上课方式可以是一对一或一对多,即一个教师对应一个学生或一个教师对应多个学生。相应的,在一对一的教学方式中,一个用于教师上课的终端和一个用于学生上课的终端之间进行通信;在一对多的教学方式中,一个用于教师上课的终端和多个用于学生上课的终端之间进行通信。
终端设备100和终端设备104上可以安装有各种通信客户端应用,例如:视频录制应用、视频播放应用、语音交互应用、搜索类应用、及时通信工具、邮箱客户端、社交平台软件等。
终端设备100和终端设备104可以是硬件,也可以是软件。当终端设备101~103为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等等。当终端设备100和终端设备104为软件时,可以是安装上述所列举的电子设备中。其可以实现呈多个软件或软件模块(例如:用来提供分布式服务),也可以实现成单个软件或软件模块,在此不作具体限定。
当终端设备100和终端设备104为硬件时,其上还可以安装有显示设备和摄像头,显示设备显示可以是各种能实现显示功能的设备,摄像头用于采集视频数据;例如:显示设备可以是阴极射线管显示器(cathoderaytubedisplay,简称cr)、发光二极管显示器(light-emittingdiodedisplay,简称led)、电子墨水屏、液晶显示屏(liquidcrystaldisplay,简称lcd)、等离子显示面板(plasmadisplaypanel,简称pdp)等。用户可以利用终端设备100和终端设备104上的显示设备,来查看显示的文字、图片、视频等信息。
服务器102可以是提供各种服务的服务器,服务器102可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器102为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块,在此不做具体限定。
应理解,图1中的终端设备、网络和服务器的数目仅是示意性的。根据实现需要,可以是任意数量的终端设备、网络和服务器。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
参见图2,图2是本申请实施例提供的一种排课方法的流程示意图,在本申请实施例中,所述方法包括:
s201、获取学生标识关联的课时需求信息。
一般的,课时需求信息用于表示课时的相关信息。课时需求信息包括上课时间,学生使用预先注册的学生账户通过第一终端设备登录服务器,第一终端设备基于学生触发的操作,向服务器发送课程选择指令,以实现在服务器上选择一个或多个课程。对于一个课程来说,该课程包括多个课时,多个课时中各个课时的上课时间段可以是预存储或预配置的固定时间,也可以是学生自定义的时间,本申请实施例不作限制,上课时间段表示课时的时间区间,可以使用上课开始时刻、上课结束时刻、上课持续时间中的一种或多种来表示。
例如:学生选择的课程为少儿英语,少儿英语包括30个课时,每个课时的时长为1个小时,服务器上可预存储或预配置有少儿英语的课时安排为6月份的每天晚上的19:00~20:00,学生在选择该课程后,会在登录学生账户信息的第一终端设备上显示该课程的课时安排。
又例如:学生选择的课程为少儿英语,服务器只预存储或预配置有该课程的上课时间段每天的19:00~20:00,没有设置上课日期。服务器在学生的终端设备上显示一个设置上课日期的用户界面,第一终端设备基于学生的操作(鼠标操作、键盘操作或触摸屏操作)向服务器发送用于设置上课日期的指令,服务器接收该指令,根据选择的上课日期生成课时需求信息,假设学生通过该用户界面的交互选择该课程的上课时间为:从6月1号开始,每隔一天上一个课时。
其中,服务器根据预存储或预配置的上课时间或用户自定义的上课时间,课时需求信息包括上课时间,课时需求信息描述一个课程的相关信息,课时需求信息可以对应一个或多个课时,在课时的数量为多个时,多个课时对应同一课程。
s202、在教师资源池中查询与课时需求信息匹配的目标教师标识。
具体的,教师资源池包括多个教师标识,教师标识用于唯一标识教师的身份。例如:教师通过终端设备在服务器上注册一个教师账户,教师账户包括教师标识和登录密码。教师可以通过第二终端设备发布授课资源信息,第二终端设备基于教师的操作,向服务器发送授课资源信息,授课资源信息包括授课时间、课程名称、账户等级和排课时长中的一种或多种。服务器在验证教师账户合法后,将教师标识加入到教师资源池中。
其中,本申请实施例中学生和教师之间的匹配可以使用学生的上课时间和教师的授课时间进行匹配。例如:学生a的上课时间为6月1日的18:00~20:00,教师b的授课时间为6月1日~6月30日的18:00~20:00,那么学生a的上课时间和教师b的授课时间是匹配的。又例如:学生a的上课时间为6月1日的19:00~21:00,教师b的授课时间为6月15日~6月30日的19:00~21:00,那么学生a的上课时间和教师b的授课时间是不匹配的。
例如:教师资源池中包括教师a,教师a的授课时间为6月份每天的19:00~20:00;教师b的授课时间为6月份的周五和周六的19:00~20:00,教师c的授课时间为6月份的周一至周四的19:00~20:00。
在一个或多个实施例中,授课时间可以是教师自定义的,每天的授课时间段的开始时刻和结束时刻是服务器预先设置的固定时刻,教师可以自定义授课日期。例如:服务器设置的每天的授课时间段为19:00~20:00,教师通过终端设备可自定义授课日期,教师a自定义的授课日期为6月份的周五到周日。
其中,服务器通过对比学生标识的上课时间和资源池中各个教师标识的授课时间来确定目标教师。例如:学生的上课时间为6月1号的19:00~20:00,服务器在教师资源池中搜索到教师a的授课时间包括6月1号的19:00~20:00,服务器可以将教师a作为目标教师。
在一个或多个实施例中,在课时需求信息对应多个课时的情况下,服务器可以分别为每个课时分配一个教师,即多个课时虽然对应同一课程,但是各个课时分配的教师可能不相同。例如:少儿英语包括30个课时,服务器为前面15个课时分配的教师为教师a,后面15个课时分配教师b。
s203、将学生标识、上课时间和目标教师标识进行关联得到课时安排信息,以及存储课时安排信息。
其中,学生和教师预先在服务器上完成注册操作,服务器上预存储有学生账户和目标教师账户,学生账户包括学生标识和登录密码,教师账户包括教师标识和登录密码。服务器通过预先注册的学生账户获取学生标识,以及通过预先注册的教师账户获取目标教师标识。将学生标识、目标教师标识和上课时间进行关联后得到课时安排信息,将课时安排信息写入到服务器中部署的数据库中。
实施本申请的实施例,通过获取学生标识的课时需求信息,课时需求信息包括上课时间,在教师资源池中搜索与课时需求信息匹配的目标教师标识,将学生标识、上课时间和目标教师标识进行关联得到课时安排信息,使得在上课时间内学生和教师均为可用状态,能快速的实现学生和教师的匹配,提高教师资源的利用率。
参见图3,为本申请实施例提供的一种排课方法的另一流程示意图,在本申请实施例中,所述方法包括:
s301、接收第二终端设备发送的授课资源配置请求。
其中,第一终端设备是使用学生标识对应的学生账户登录的终端设备,第二终端设备是使用目标教师标识对应的教师账户登录的终端设备。学生通过第一终端设备在服务器上注册学生账户,学生账户包括学生标识和登录密码,学生标识可以使用数字和/或字母来表示;教师通过第二终端设备在服务器上注册教师账户,教师账户可以使用数字和/或字母来表示。
其中,服务器接收来自第二终端的授课资源配置请求,授课资源配置请求用于配置授课资源,授课资源配置请求携带教师账户、课程名称和授课时间,教师账户包括目标教师标识和登录密码,课程名称用于指示教师具备授课能力的课程的名称。例如:课程名称使用代码来表示,授课名称包括0001、0002和0003,0001表示的课程为少儿英语,0002表示的课程为商务英语,0003表示的课程为外贸英语,该教师具有少儿英语、商务英语和外贸英语的授课能力。授课时间包括授课日期和授课时间段,授课时间段可以使用授课开始时刻、授课结束时刻和授课时长中的一或多种来表示。例如:教师a的授课时间为6月份的每天的18:00~20:00,又例如:教师b的授课时间为6月份的周五和周六的18:00~20:00。
在一个或多个实施例中,授课时间可以是服务器预存储或预配置的固定时间,第二终端设备向服务器发送授课资源配置请求,服务器响应于授课资源配置请求在第二终端设备上显示课程的多个课时的上课时间,例如:课程为少儿英语,少儿英语包含30个课时,服务器预存储或预配置的30个课时的授课时间为6月份每天晚上的18:00~20:00,第二终端设备接收到学生对该课程的授课时间的确定指令后,向服务器发送授课资源接受请求,表示接收该课程的授课时间的安排,服务器验证授课资源配置请求中携带的教师账户,验证通过后,解析教师账户中包含的目标教师标识,将目标教师标识加入到教师资源池中。
在一个或多个实施例中,课时的授课时间可以根据教师的实际需求来定,第二终端设备向服务器发送授课资源配置请求,服务器响应于该授课资源配置请求,在第二终端设备上显示用于自定义授课时间的用户界面,第二终端设备接收到针对用户界面的选择指令后,向服务器发送设置的课时的授课时间。
例如:用户界面显示6月份的所有日期,日期前面设置有勾选框,通过勾选框选择授课日期,每个授课日期后面也可以设置一个或多个授课时间段,用户在一个或多个授课时间段选择所需的授课时间段,在完成授课日期和授课时间段的选择后,生成该教师的授课时间。进一步的,用户界面上还设置有课程名称的勾选框,教师根据实际需求选择一个或多个课程名称。在完成用户界面的交互操作后,第二终端设备向服务器发送授课资源配置请求,授课资源配置请求携带教师账户、授课时间课程名称。
s302、在验证目标教师标识对应的教师账户合法后,将目标教师标识添加到教师资源池中。
其中,服务器存储有目标教师标识对应的教师账户,服务器将存储的目标教师标识指示的教师账户和接收到的教师账户进行比较,在二者相同的情况下,确定接收到的目标教师标识的教师账户是合法的,将目标教师标识添加到教师资源池中。教师资源池中包括多个教师标识,各个教师标识关联有授课资源信息,授课资源信息包括授课时间。
在一个或多个实施例中,授课资源信息还包括账户等级,教师完成一个课时后,学生通过第一终端设备对课时进行满意度的评价。例如:服务器在第一终端设备上显示评价界面,评价界面上包括满意度指标、课程名称、教师标识和改进建议等信息,学生通过对评价界面的交互选择相应的满意度指标,服务器对预设时长内该教师的满意度指标进行确定得到该教师的账户等级,账户等级和满意度呈正相关性,账户等级越高对应的满意度越高,反之满意度越低。
在一个或多个实施例中,授课资源信息还包括排课时长,排课时长表示教师在预设时长内承接的课时的时长,服务器确定教师标识对应的授课时间,根据授课时间内的锁定状态计算教师标识对应的排课时长。
例如:教师a的授课时间为6月1日~6月30日的18:00~20:00,查询获知教师a在6月1日~6月15日的授课时间为锁定状态,统计教师a的排课时长为15*2小时=30个小时。教师b的授课时间为6月1日~6月15日的14:00~16:00,查询获知教师b在6月1日~6月7日的授课时间为锁定状态,统计教师b的排课时长为7*2小时=14小时。
s303、获取学生标识关联的课时需求信息。
其中,课程包括多个课时,课时需求信息表示课时的相关信息,课时需求信息包括上课时间,上课时间可以包括上课日期和上课时间段,上课时间段可以使用上课开始时刻、上课结束时刻、上课持续时长中的一种或多种来表示。服务器预存储有学生账户,学生账户是学生使用第一终端设备在服务器上注册得到的,学生账户包括学生标识和登录密码,因此服务器可以根据学生账户获取学生标识。服务器预存储或预配置有学生标识和课程预约信息之间的映射关系,服务器根据该映射关系查询学生标识对应的课程预约信息,课程预约信息表示学生预约的一个或多个课程的相关信息,例如:课程名称、上课时间和课程难度中的一种或多种,从而可以根据课程预约信息得到课时需求信息。
在一个或多个实施例中,课时需求信息是服务器预存储或预配置,即课时的上课时间为固定时间,例如:学生a选择课程为少儿英语,根据服务器中配置的课程预约信息中的得知少儿英语包含30个课时,30个课时的上课时间为6月份的每天晚上的18:00~20:00。
在一个或多个实施例中,课时需求信息是学生通过第一终端设备自定义的,学生通过第一终端设备选择的课程为少儿英语,少儿英语包含15个课时,服务器在第一终端设备上6月份的30个日期,每个日期前面设置有勾选框,通过对勾选框的勾选操作选择相应的上课日期,假设学生选择的上课日期为6月1日~6月15日的每天晚上的18:00~20:00。
在一个或多个实施例中,课时需求信息对应多个课时,多个课时属于同一个课程,多个课时分配的教师标识可能相同,也可能不相同。
例如:课时需求信息对应少儿英语,少儿英语对应30个课时,根据课时需求信息分配教师a给前面的15个课时,以及分配教师b给后面的15个课时。
s304、在教师资源池中搜索与在上课时间为可用状态的教师标识。
具体的,可用状态表示在上课时间内教师可以分配给学生,相应的,锁定状态表示在上课时间内教师已经分配给学生,不能再分配给其他学生。
例如:教师资源池中包括教师a的标识、教师b的标识和教师c的标识,学生的上课时间为6月1日的晚上18:00~20:00,教师a的授课时间为6月1日~6月15日的晚上18:00~20:00,教师b的授课时间为6月2日~6月12日的晚上18:00~20:00,教师c的授课时间为6月1日~6月7日的晚上18:00~20:00,教师a、教师b和教师c的授课时间均为可用状态,那么在教师资源池中搜索到上课时间为可用状态的教师标识为:教师a的标识和教师c的标识。
s305、在可用状态的教师标识的数量为多个的情况下,在多个可用状态的教师标识中选择账户等级最高或排课时长最少的教师标识作为目标教师标识。
在一个或多个实施例中,授课资源信息还包括账户等级,教师完成一个课时后,学生通过第一终端设备对课时进行满意度的评价。例如:服务器在第一终端设备上显示评价界面,评价界面上包括满意度指标、课程名称、教师标识和改进建议等信息,学生通过对评价界面的交互选择相应的满意度指标,服务器对预设时长内该教师的满意度指标进行确定得到该教师的账户等级,账户等级和满意度呈正相关性,账户等级越高对应的满意度越高,反之满意度越低。在s304中搜索到的可用状态的教师标识的数量为多个的情况下,从多个可用状态的教师标识中选择账户等级最高的教师作为目标教师标识。
例如:根据s304的例子,搜索到的教师a和教师c的标识,账户等级预先划分为3个等级:初级、中级和高级,教师a的账户等级为高级,教师b的账户等级为初级,那么选择教师a的标识为目标教师标识。
在一个或多个实施例中,授课资源信息还包括排课时长,排课时长表示教师在预设时长内承接的课时的时长,服务器确定教师标识对应的授课时间,根据授课时间内的锁定状态计算教师标识对应的排课时长。
例如:根据s304的例子,搜索到的教师a和教师c的标识,教师a的排课时长为20个小时,教师c的排课时长为40个小时,将教师a的标识确定为目标教师标识。
s306、将学生标识、上课时间和目标教师标识进行关联得到课时安排信息,以及存储课时安排信息。
其中,服务器上可以安装有一个数据库,服务器将学生标识、上课时间和目标标识标识存储到数据库中的一个表项中。服务器在为课时分配一个教师标识后,将学生标识关联的课程包含的多个课时中扣除一个课时,直到课程中所有的课时分配有相应的教师。
s307、将目标教师标识在上课时间内设置为锁定状态,以及将学生标识在上课时间内设置为锁定状态。
其中,目标教师设置为锁定状态后在该上课时间内该教师无法再分配给其他学生,学生标识设置为锁定状态后标识在该上课时间内该学生无法再分配给其他教师。
s308、在上课时间到时,创建虚拟教室。
其中,在上课时间到时,服务器为上课时间对应的学生账户和教师账户分配虚拟教室,虚拟教室是一种在服务器上创建的用于学生账户的终端设备和教师账户对应的终端设备进行视频通信的虚拟场所。
s309、确定学生标识对应学生账户和目标教师标识对应的教师账户为在线状态。
其中,学生账户为在线状态表示登录学生账户的终端设备(第一终端设备)与服务器成功建立通信连接,教师账户为在线状态表示登录教师账户的终端设备(第二终端设备)与服务器成功建立通信连接。
在一个或多个实施例中,若学生账户为离线状态,获取学生账户预先关联的电话号码,根据电话号码发送语音呼叫请求。服务器上预存储或预配重有学生账户和电话号码之间的映射关系。
s310、将登录学生账户的第一终端设备和登录教师账户的第二终端设备加入到虚拟教室。
s311、采集来自第一终端设备的第一视频流,以及采集来自第二终端设备的第二视频流。
s312、将第一视频流和第二视频流拼接成聚合视频流。
具体的,将第一视频流和第二视频流进行拼接的方法可以是,将第一视频流和第二视频流合并在同一个播放窗口的不同位置,第一终端设备和第二终端设备在播放聚合视频流中,会显示一个播放窗口,播放窗口的两个不同位置上分别播放第一视频流的内容和第二视频流的内容。
s313、向第一终端设备和第二终端设备推送聚合视频流。
其中,服务器向第一终端设备和第二终端设备发送聚合视频流,第一终端设备接收来自服务器的聚合视频流,对聚合视频流进行解码得到视频画面,第二终端设备接收来自服务器的聚合视频流,对聚合视频流进行解码得到视频画面。
在一个或多个实施例中,统计预设时长内目标教师标识对应的课时缺席次数,若课时缺席次数大于预设次数,将目标教师标识从教师资源池中移除。
其中,在上课时间到时,检测教师账户处于离线状态时,将课时缺席次数记为1次,服务器预存储或预配置有预设次数,服务器统计预设时长内目标教师标识对应的课时缺席次数,若课时缺席次数大于预设次数,将目标教师标识从教师资源池中移除。例如:预设时长为1个月,预设次数为5次,服务器统计在1个月内目标教师标识对应的课时缺席次数大于5次时,将目标教师标识从教师资源池中移除。
实施本申请实施例,通过获取学生标识的课时需求信息,课时需求信息包括上课时间,在教师资源池中搜索与课时需求信息匹配的目标教师标识,将学生标识、上课时间和目标教师标识进行关联得到课时安排信息,使得在上课时间内学生和教师均为可用状态,能快速的实现学生和教师的匹配,提高教师资源的利用率。
上述图2至图3详细阐述了排课方法。相应的本申请实施例的一种排课装置(简称装置)的结构示意图。
请参见图4,图4是本申请实施例提供的一种装置4的结构示意图,该装置6可以包括获取单元401、获取单元402和关联单元403。
获取单元401,用于获取学生标识关联的课时需求信息;其中,所述课时需求信息包括上课时间。
匹配单元402,用于在教师资源池中搜索与所述课时需求信息匹配的目标教师标识;其中,所述教师资源池中的各个教师标识关联有授课资源信息,所述授课资源信息包括授课时间。
关联单元403,用于将所述学生标识、所述上课时间和所述目标教师标识进行关联得到课时安排信息,以及存储所述课时安排信息。
在一个或多个实施例中,匹配单元402在教师资源池中搜索与所述课时需求信息匹配的目标教师标识,包括:
在所述教师资源池中搜索在所述上课时间内为可用状态的教师标识;
在可用状态的教师标识的数量为多个的情况下,在多个可用状态的教师标识中选择账户等级最高的教师标识作为所述目标教师标识;其中,所述授课资源信息还包账户等级;或
在多个可用状态的教师标识中选择排课时长最少的教师标识作为目标教师标识;其中,所述授课资源信息还包括排课时长。
在一个或多个实施例中,关联单元403将所述学生标识、所述上课时间和所述目标教师标识进行关联得到课时安排信息,以及存储所述课时安排信息,还包括:
将所述目标教师标识在所述上课时间内设置为锁定状态,以及将所述学生在所述上课时间内设置为锁定状态。
在一个或多个实施例中,还包括:
视频流处理单元,用于在所述上课时间到时,创建虚拟教室;
若所述学生标识对应的学生账户和所述目标教师标识对应的教师账户为在线状态,将登录所述学生账户的第一终端设备和登录所述教师账户的第二终端设备加入到所述虚拟教室;
采集来自所述第一终端设备的第一视频流,以及采集来自所述第二终端设备的第二视频流;
将所述第一视频流和所述第二视频流拼接成聚合视频流;
将所述第一终端设备和所述第二终端设备推送所述聚合视频流;或
若所述学生账户为离线状态,确定与所述学生账户关联的电话号码,根据所述电话号码发送语音呼叫请求。
在一个或多个实施例中,还包括:
资源控制单元,用于统计预设时长内所述目标教师标识对应的课时缺席次数;
若所述课时缺席次数大于所述预设次数,将所述目标教师标识从所述教师资源池中移除。
在一个或多个实施例中,还包括:
发送单元,用于将所述课时安排信息发送给第一终端设备和第二终端设备。
在一个或多个实施例中,
资源配置单元,用于接收所述第二终端设备发送的授课资源配置请求;其中,所述授课资源配置请求携带所述目标教师标识对应的教师账户、课程名称和授课时间;
在验证所述目标教师标识对应教师账户合法后,将所述目标教师标识加入到所述教师资源池中。
装置4可以是服务器,所述装置4也可以为实现相关功能的现场可编程门阵列(field-programmablegatearray,fpga),专用集成芯片,系统芯片(systemonchip,soc),中央处理器(centralprocessorunit,cpu),网络处理器(networkprocessor,np),数字信号处理电路,微控制器(microcontrollerunit,mcu),还可以采用可编程控制器(programmablelogicdevice,pld)或其他集成芯片。
图5为本申请实施例提供的一种排课装置结构示意图,以下简称装置8,装置8可以集成于前述的服务器,如图5所示,该装置包括:存储器502、处理器501、输入装置503、输出装置504和通信接口。
存储器502可以是独立的物理单元,与处理器501、输入装置503和输出装置504可以通过总线连接。存储器502、处理器501、输入装置503和输出装置504也可以集成在一起,通过硬件实现等。
存储器502用于存储实现以上方法实施例,或者装置实施例各个模块的程序,处理器501调用该程序,执行以下操作:
获取学生标识关联的课时需求信息;其中,所述课时需求信息包括上课时间;
在教师资源池中搜索与所述课时需求信息匹配的目标教师标识;其中,所述教师资源池中的各个教师标识关联有授课资源信息,所述授课资源信息包括授课时间;
将所述学生标识、所述上课时间和所述目标教师标识进行关联得到课时安排信息,以及存储所述课时安排信息。
在一个或多个实施例中,处理器501执行所述在教师资源池中搜索与所述课时需求信息匹配的目标教师标识,包括:
在所述教师资源池中搜索在所述上课时间内为可用状态的教师标识;
在可用状态的教师标识的数量为多个的情况下,在多个可用状态的教师标识中选择账户等级最高的教师标识作为所述目标教师标识;其中,所述授课资源信息还包账户等级;或
在多个可用状态的教师标识中选择排课时长最少的教师标识作为目标教师标识;其中,所述授课资源信息还包括排课时长。
在一个或多个实施例中,处理器501执行所述将所述学生标识、所述上课时间和所述目标教师标识进行关联得到课时安排信息,以及存储所述课时安排信息,还包括:
将所述目标教师标识在所述上课时间内设置为锁定状态,以及将所述学生在所述上课时间内设置为锁定状态。
在一个或多个实施例中,处理器501还用于执行:
在所述上课时间到时,创建虚拟教室;
若所述学生标识对应的学生账户和所述目标教师标识对应的教师账户为在线状态,将登录所述学生账户的第一终端设备和登录所述教师账户的第二终端设备加入到所述虚拟教室;
采集来自所述第一终端设备的第一视频流,以及采集来自所述第二终端设备的第二视频流;
将所述第一视频流和所述第二视频流拼接成聚合视频流;
通过网络接口将所述第一终端设备和所述第二终端设备推送所述聚合视频流;或
若所述学生账户为离线状态,确定与所述学生账户关联的电话号码,根据所述电话号码发送语音呼叫请求。
在一个或多个实施例中,处理器501还用于:
统计预设时长内所述目标教师标识对应的课时缺席次数;
若所述课时缺席次数大于所述预设次数,将所述目标教师标识从所述教师资源池中移除。
在一个或多个实施例中,处理器501还用于:
通过网络接口将所述课时安排信息发送给第一终端设备和第二终端设备。
在一个或多个实施例中,处理器501还用于:
通过网络接口接收所述第二终端设备发送的授课资源配置请求;其中,所述授课资源配置请求携带所述目标教师标识对应的教师账户、课程名称和授课时间;
在验证所述目标教师标识对应教师账户合法后,将所述目标教师标识加入到所述教师资源池中。
输入装置502包括但不限于键盘、鼠标、触摸面板、摄像头和麦克风;输出装置包括但限于显示屏。
通信接口用于收发各种类型的消息,通信接口包括但不限于无线接口或有线接口。
可选地,当上述实施例的排课方法中的部分或全部通过软件实现时,装置也可以只包括处理器。用于存储程序的存储器位于装置之外,处理器通过电路/电线与存储器连接,用于读取并执行存储器中存储的程序。
处理器可以是中央处理器(centralprocessingunit,cpu),网络处理器(networkprocessor,np)或者cpu和np的组合。
处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specificintegratedcircuit,asic),可编程逻辑器件(programmablelogicdevice,pld)或其组合。上述pld可以是复杂可编程逻辑器件(complexprogrammablelogicdevice,cpld),现场可编程逻辑门阵列(field-programmablegatearray,fpga),通用阵列逻辑(genericarraylogic,gal)或其任意组合。
存储器可以包括易失性存储器(volatilememory),例如存取存储器(random-accessmemory,ram);存储器也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flashmemory),硬盘(harddiskdrive,hdd)或固态硬盘(solid-statedrive,ssd);存储器还可以包括上述种类的存储器的组合。
本申请实施例还提供了一种计算机存储介质,存储有计算机程序,该计算机程序用于执行上述实施例提供的排课方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的排课方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。