在线教学系统:C#实现网络电子白板、课件功能

电子白板和课件功能是在线教学系统中的必备功能,本文就介绍如何基于OMCS快速实现电子白板的基础功能,以及课件功能:上传课件、打开课件、课件翻页、课件同步、删除课件等高级功能。

本文的应用场景是这样的: 一个老师和N个学生进入同一个教室,所以,它们将看到同一个电子白板。而老师角色与学生角色的区别在于老师有特殊的白板权限,这些权限包括:上传课件、打开课件、删除课件,在白板上绘图、标注、翻页等等。

一.服务端

服务端直接将 OMCS.Boost 提供的OMCS.Server项目源码搬过来,不用作任何修改。

二.客户端

1. 实现课件到图片的转换

白板课件最常见的类型为:word、pdf、ppt文档。所以,首先,我们需要实现IImageConverter接口,将pdf、ppt、word文档转换成图片。与之对应,我们设计了三个类:Word2ImageConverter、Pdf2ImageConverter、Ppt2ImageConverter。关于它们的具体实现代码可在Demo的源码中查看。

然后,我们要实现IImageConverterFactory工厂接口:

    public class ImageConverterFactory : IImageConverterFactory
    {
        public IImageConverter CreateImageConverter(string extendName)
        {
            if (extendName == ".doc" || extendName == ".docx")
            {
                return new Word2ImageConverter();
            }

            if (extendName == ".pdf")
            {
                return new Pdf2ImageConverter();
            }

            if (extendName == ".ppt" || extendName == ".pptx")
            {
                return new Ppt2ImageConverter();
            }

            return null;
        }

        public bool Support(string extendName)
        {
            return extendName == ".doc" || extendName == ".docx" || extendName == ".pdf" || extendName == ".ppt" || extendName == ".pptx";
        }
    } 

然后,在程序启动时,将工厂注入到OMCS的多媒体管理器(IMultimediaManager)中:

    IMultimediaManager multimediaManager = MultimediaManagerFactory.GetSingleton();
    multimediaManager.ImageConverterFactory = new ImageConverterFactory();// 图片转换器工厂,供OMCS内部将课件转换成图片的过程中使用。

2.登录时区分角色:老师、学生

客户端登录界面设计如下所示:

根据选定角色的不同,进入白板时,所拥有的权限不一样,主要体现在白板连接器的两个属性设置上:

     public WhiteBoardForm(string classRid, bool isTeacher )
    {
        InitializeComponent();            

        this.classRoomID = classRid;
        this.whiteBoardConnector1.IsManager = isTeacher;
        this.whiteBoardConnector1.WatchingOnly = !isTeacher;

        this.Text = string.Format("正在访问{0}的电子白板" ,this.classRoomID);
        this.whiteBoardConnector1.ConnectEnded += new CbGeneric<ConnectResult>(whiteBoardConnector1_ConnectEnded);
        this.whiteBoardConnector1.BeginConnect(this.classRoomID);
    }

IsManager 属性用于控制是否有权限上传课件、打开课件、删除课件等。

WatchingOnly 属性用于控制用户是否可以在白板上绘制图像等操作。

在本Demo中,我们这样设定的效果是,老师可以操作课件,并且可以在白板上绘图、书写等,但是学生只能观看白板,不能进行任何操作。

三.下载

源码:OMCS.Demos.WhiteBoardTest.rar

运行系统进行测试时,请注意:

(1)启动OMCS服务端。

(2)启动第一个客户端,选择“老师”角色,登录进默认教室。

(3)再启动多个客户端,选择“学生”角色,登录进默认教室。

(4)老师即可进行上传课件、打开课件、删除课件、课件翻页,在课件上标注、书写,等等操作。

老师端界面如下所示:

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-22 18:07:51

在线教学系统:C#实现网络电子白板、课件功能的相关文章

基于TeleMCU视频会议及RTMP构建在线教学系统方案

本文原创自 http://blog.csdn.net/voipmaker  转载注明出处. 在线视频教学应用场景越来越多,本文提出一种在线视频教学方案,视频源是教师,可以用SIP硬件视频话机或者基于WebRTC的浏览器客户端,作为教师端, 教师开始教学时呼叫一个会议号,进入视频会议,视频会议内置流媒体直播服务,观看者可以通过rtmp客户端实时远程学习,这个方案的弊端是学生和老师不能语音互动, 但是可以在学生端增加sip客户端,呼叫视频会议,可以实时参会,达到交互的目的,笔者基于teleMCU视频

在线教育系统,助你赢得网络市场

乐付宝在线教育系统是一套开放式的在线教育系统,为用户提供一个简单.快捷的课程交易的平台,以帮助用户更好的创建并推广自己的课程.系统采用网络互动直播的授课模式,突破地域和时间的限制,为广大的用户提供高效便捷的网络学习渠道,省时高效的学习新的知识.技能. 会员只要具备电脑和上网条件,即可登陆网站进行网上学习,充分体现网络共享,一站全程服务.会员可以发布他想学习的课程,讲师可以根据期待的信息,针对性的发布课程.简单.高效的全程实时直播互动教学,可以上传视频.文档在直播中展示,也可开启摄像头实时授课.学

用例图——远程网络教学系统

远程网络教学系统功能需求如下: ●学生登录网站后,可以浏览课件.查找课件.下载课件.观看教学视频. ●教师登录网站后,可以上传课件.上传教学视频.发布教学心得.查看教学心得.修改教学心得. ●系统管理员负责对网站页面的维护.审核不合法课件和不合法教学信息.批准用户注册. 老师和学生登陆后才能使用以上功能,如果忘记密码,可通过"找回密码"功能恢复

在线教学、视频会议 Webus Fox(3) 客户端开发手册

本文主要介绍webus fox 客户端的配置及接口说明. 1. 文件列表和配置 1.1 文件列表 1.2 common.xml 配置 根据服务器端的部署, 替换[ServerUrl] , [RtmpPort], [GatewayPort] [GatewayPort]: 指的是iis 里的site的port 2. 相关接口说明 2.1. 消息 2.1.1 MessageClient/MsgClient.as API名称 start 应用场景 启动message消息, 连接服务并登陆 异常   AP

基于B/S架构的在线考试系统的设计与实现

前言 这个是我的Web课程设计,用到的主要是JSP技术并使用了大量JSTL标签,所有代码已经上传到了我的Github仓库里,地址:https://github.com/quanbisen/onlineexam,如果喜欢的话请帮我Mark个Star. 摘 要 随着计算机软件技术的高速发展,现代社会正快速迈入了一个互联网应用时代,Web应用在各行业都得到了广泛的应用,如小型公司的运销存管理系统,高校的教务管理系统等都是通过B/S架构搭建的Web应用.在过去的几年中,在线考试系统应用在很多行业都得到了

基于MVC模式的ASP操作系统课程在线教学平台

建立操作系统课程在线教学平台,实现教学环节不仅仅局限于课堂上:并且提高教学信息发布及反馈的效率.充分发挥学生的主观能动性,培养主动学习知识的能力.更好的为<操作系统>教学工作服务. 根据操作系统课程在线教学平台的研究现状和发展趋势,系统从需求分析.结构设计.数据库设计,在到系统实现,分别为前端实现和后端实现.论文内容从系统描述.系统分析.系统设计.系统实现.系统测试来阐述系统的开发过程.本系统力求结合实际找出一种切实可行的开发方案,经过反复研究和学习,借助C#编程语言.sqlserver数据库

JAVA英语在线考试系统

在计算机技术.Internet技术迅猛发展形势的推动下,传统的办学有了新的模式.传统的考试方式时间长.效率低.同时人工阅卷等主观因素也影响到考试的公正性.随着网络技术在教育领域应用的普及,应用现代信息技术的网络在线考试系统呈现出了越来越多的优势.使教学朝着信息化.网络化.现代化的目标迈进.这种无纸的网络考试系统,是考务管理突破时空限制,提高考试工作效率和标准化水平,使教育机构的管理者.教师和学生可以在任何时候.任何地点通过网络进行考试.网络在线考试系统已经成为教育技术发展与研究的方向. 随着科技

工业能耗在线监测系统

一. 系统概述 多年以来,我国对于企业能耗的收集,大多采用企业定期上报耗能报表的采集方式,企业自行上报的能耗报表,往往因为企业自身经营的需要,带有或多或少有利于企业的倾向性特征,并非完全客观反映实际能耗.能耗管理部门也没有其他直接有效的手段,获取重点企业的实际能耗信息,因此更无法做到对不同类别耗能指标的有效分析,据此制定针对性的能耗管理政策.也无法进一步提出节能方案,有效降低能耗. 工业能耗在线监测系统是一个集成Intranet/Internet网络技术.GPRS无线传输技术.Web Servi

多功能表单填报系统V1.2.1-适用于在线报名系统、调查、数据收集等

多功能表单系统V1.2.1 前台:http://www.schoolms.net/mysoft/biaodan/index.asp 后台:http://www.schoolms.net/mysoft/biaodan/admin/index.asp 本系统适用于填报收集一些数据信息,例如在线报名系统.教师获奖登记.调查等等系统应用. 数据格式有文本框输入.单选.多选,3种模式.文件上传功能暂无法实现. 支持二级管理员权限,可以分别管理各个表单项目. 可以把数据导出为Excel 其中多选,是否必选,