# RubyGenius **Repository Path**: ljt083/RubyGenius ## Basic Information - **Project Name**: RubyGenius - **Description**: RubyGenius 软件是学校一次晚会的产物,当时所包含的功能是:投票、抽奖、K歌、播放视频、播放音乐、播放PPT等。 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2019-03-07 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 软件介绍 ## 广告 ![](http://doc.tecmz.com/data/image/201509/08/16905_RmuZ_2810.png) ## 软件由来 软件是学校一次晚会的产物,当时所包含的功能是:投票、抽奖、K歌、播放视频、播放音乐、播放PPT等。现将部分功能做了比较详细的整理和测试,整理成该软件供大家使用。 Ruby本身是一种面向对象程序设计的脚本语言,亦是红宝石之意;Genius意为天才,希望软件可以像红宝石一样给大家带来惊喜。 ## 软件功能 1. 短信投票 1. 短信抽奖 1. 音乐播放 1. 视频播放 1. 音效播放 具体功能详细使用说明,请参照“使用说明”章节。 ## 运行原理 ![](http://doc.tecmz.com/data/image/201509/08/16863_kalK_1962.png) > **说明**: > `A`:投影放映机 > `B`:预览PC与投影放映机同步显示,接入以太网 > `C`:应急切换VGA线,当出现紧急情况可以将投影放映机屏幕切换至D > `D`:备用放映PC,紧急情况切换 > `E`:以太网,控制端与预览端通讯 > `F`、`G`等:预览PC(B)控制端,接入以太网,控制B的显示情况 ## 运行平台 Microsoft Windows 7 32位、Microsoft Windows 7 64位 Microsoft Windows 8 32位、Microsoft Windows 8 64位 理论上,软件可以运行在所有高于Microsoft Windows XP以上的所有平台,但我们的完整测试仅限在上述的4个操作系统。 # 使用说明 ## 预览PC端(View Server) ### 如何启动 ![](http://doc.tecmz.com/data/image/201509/08/17004_QHbV_8899.png) 运行后默认界面如下: ![](http://doc.tecmz.com/data/image/201509/08/17025_eKZn_2217.png) 软件启动后默认为全屏显示,按下快捷键: `F1`:退出系统 `F2`:显示/隐藏菜单栏,菜单栏在整个屏幕的右下角显示 `F3`:设置,或者在菜单栏中也可以点击设置按钮 ### 基本设置 **本机IP**:运行RubyGenius_View软件的电脑IP **本机端口**:运行RubyGenius_View软件的电脑开放供控制端连接的端口 ### 高级设置 View Server默认主页背景为图片为`Data/setting/Background.jpg`,如果你想更换背景,只需替换该文件即可。 ## 媒体播放 控制端 ### 如何启动 ![](http://doc.tecmz.com/data/image/201509/08/17122_mVKp_8100.png) 运行后默认界面如下: ![](http://doc.tecmz.com/data/image/201509/08/17138_UFfp_9817.png) ### 基本设置 **设置(按钮)** > **View IP:**运行RubyGenius_View软件的电脑IP > **View端口:**运行RubyGenius_View软件的电脑开放供控制端连接的端口 > **声音文件夹:**音频文件放置的文件夹,只能为英文字符 > **视频文件夹:**视频文件放置的文件夹,只能为英文字符 > **音效文件夹:**音效文件放置的文件夹,只能为英文字符 **连接(按钮)** > 设置好参数后用于连接View Server **同步(按钮)** > 用于和View Server同步声音、视频、音乐特效文件列表 **播放(复选)** > 显示/隐藏播放控制界面 **控制(复选)** > 显示/隐藏控制说明界面 **首页(按钮)** > 将View Server切换至首页界面 **视频(按钮)** > 将View Server切换至视频播放界面 **[音乐播放]** > 控制View Server播放音乐,选择文件,点击加载,之后就可以播放、暂停、停止 > 左侧为声音控制滑动条 > 最多同时只能播放一个音频文件 > 音乐播放支持*.mp3格式 **[视频播放]** > 控制View Server播放视频,选择文件,点击加载,之后就可以播放、暂停、停止 > 左侧为视频声音控制滑动条 > 最多同时只能播放一个视频文件 > 视频播放支持*.wmv *.avi *.mp4格式 **[音乐特效播放]** > 双击音效文件或者选择文件点击播放 > 音效特效播放只能一次播放完整,中间不能停顿 > 最多同时只能播放一个音乐特效文件 > 音效播放支持*.mp3格式 ## 投票&抽奖 控制端 ### 如何启动 ![](http://doc.tecmz.com/data/image/201509/08/17153_KmGu_6890.png) 运行后默认界面如下: ![](http://doc.tecmz.com/data/image/201509/08/17163_bzAP_8321.png) ### 基本设置 **设置(按钮)** > **View IP:**运行RubyGenius_View软件的电脑IP > **View端口:**运行RubyGenius_View软件的电脑开放供控制端连接的端口 **连接(按钮)** > 设置好参数后用于连接View Server **同步(按钮)** > 用于和View Server同步投票设置信息 **短信(复选)** > 显示/隐藏播放短信接收界面 **投票(复选)** > 显示/隐藏控制投票抽奖界面 **首页(按钮)** > 将View Server切换至首页界面 **投票(按钮)** > 将View Server切换至视频投票界面 **抽奖(按钮)** > 将View Server切换至抽奖界面 **短信接收** ![](http://doc.tecmz.com/data/image/201509/08/17585_dTYh_7245.png) > **接收短信工作原理:**通过连接在计算机的GSM Modem接收短信,读取短信存入计算机数据库,进行后期相关处理 > **何为GSM Modem:**就是上图这种设备,该设备可以插入一张SIM卡,程序通过AT指令与该设备通讯,收取短信,对于呼叫该SIM卡号码的设备自动拒接 > **如何连接GSM Modem:**将GSM Modem配置为115200bps波特率,接入运行RubyGenius_PollLucky的计算机,刷新COM口,点击连接,待GSM Modem状态指示“等待…”则正常运行 > **短信列表:**在短信列表中,可以进行删除等操作 **投票抽奖** > **抽取幸运号码的步骤:** >> 1. 切换至抽奖界面; >> 1. 点击投票配置中的“抽奖”按钮,标题栏下的蓝色抽奖按钮用于从所有投该板块的号码中抽取,普通抽奖按钮用于从投中某个选项的号码中抽取; >> 1. 点击开始,号码开始滚动; >> 1. 点击停止,显示该抽中的号码; >> 1. 更多详细见下面的设置说明; > **开始(按钮):**大屏幕抽奖号码滚动开始,开始时须送入中奖号码 > **停止(按钮):**大屏幕抽奖号码滚动停止 > **取消(按钮):**大屏幕抽奖号码滚动取消,显示000-XXXX-0000 > **保存(按钮):**保存该中奖号码到历史列表 > **重复检测(复选):**勾选该号码,抽取号码时进行重复检测,前提是之前抽取的号码需要存入历史列表 > **发送短信通知:**发送中奖信息通知至用户,告知领奖通知 > **显示(按钮):**显示所有历史列表中的号码 > **清空(按钮):**清空中奖号码的历史列表 > **显示投票界面步骤:** >> 1. 切换至投票界面; >> 1. 点击“获取”按钮,获取票数信息; >> 1. 点击“推送”按钮,将票数信息推送到View Server显示; >> 1. 更多见如下的设置说明; > **显示(按钮):**在View Server显示当前投票板块 > **推送(按钮):**手动推送当前板块的投票信息到View Server > **获取(按钮) (蓝色):**获取该板块的所有票数信息 > **抽奖(按钮) (蓝色):**从该板块中抽取幸运手机号码 > **自动推送(按钮):**自动推送当前板块的投票信息到View Server > **开始时间(文本):**板块投票开始时间 > **结束时间(文本):**板块投票结束时间 > **票数(文本):**显示当前票数,可通过鼠标滚轮进行微调 > **+10:**当前票数调整+10 > **-10:**当前票数调整-10 > **获取(按钮):**获取当前板块的当前选项的票数信息 > **抽奖(按钮):**从该选项中抽取幸运手机号码 ### 高级设置 投票板块的设置需要在View Server端,配置文件位于`Data/setting/Poll_utf8.Conf`可通过编辑该文件修改详细的投票板块配置信息,可自行查看该文件中的注释进行配置。 抽奖板块的设置需要在View Server端,配置文件位于`Data/setting/Lucky_utf8.Conf`可通过编辑该文件修改详细的投票板块配置信息,可自行查看该文件中的注释进行配置。 需要注意的是,这两个配置的文件都为UTF8编码,不可更改其编码方式,推荐使用notepad2编辑。 # Q&A ## 运行View Server的计算机有什么要求 理论上是没有任何限制的,但是为了更好的效果,我们推荐如下的做法: 1. 关闭View Server上的所有可能弹窗的应用; 1. 关闭屏幕保护程序; 1. 关闭自带或第三方的防火墙; 1. 需要计算机处理器性能和显卡性能比较好的计算机; ## 运行控制端的计算机有什么要求? 理论上对该计算机是没有任何要求的,只要满足能运行该软件操作系统平台即可。 ## 影响系统稳定性的因素有哪些? 我们进行了24小时连续实验,经过测试,发现影响系统稳定性的主要原因还是网络原因,因此为了获取更佳的稳定性,我们推荐这么做: 1. 使用性能良好的路由器/交换机连接多台计算机; 1. 使用质量较佳的以太网连接线; 1. 在现场控制过程中,保持不要有任何物体触碰网络接口/路由器/交换机/GSM Modem连接线; ## 现场出现问题怎么办? 该系统是为了给出更好的小型屏幕控制解决方案,但是即使有99.9%的无故障率,也要留有备用方案,防止现场出现突发情况,我们推荐这么做: 1. 留有备用计算机,如果出现现场失控情况,紧急切换至备用计算机,以免影响整体进度流程; 1. 如果大屏幕只有一路VGA输入线的话,可以使用VGA切换器进行多路连接,VGA切换器输入端连接View Server和备用计算机,输出连接大屏幕输入; # 联系我们 我们本着友好和平的目的将软件共享给大家使用,软件本身可能还存在有部分问题,如果使用过程中出现问题,请将网站目录下的*.log文件发送至我们,于我们携手改善软件。 # 许可协议 Co.MZ企业系统遵循Apache2开源协议发布。Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再作为开源或商业软件发布。需要满足的条件: 1. 需要给代码的用户一份Apache Licence ; 2. 如果你修改了代码,需要在被修改的文件中说明; 3. 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明; 4. 如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。 具体的协议参考:[http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)。