首相得解释一下,什么叫做会自动关闭的会议室。我们的会议室是存在一个会议预定系统的,一般情况下,我们需要开会的时候,需要先抢占会议室。等待要开会的时候,去会议室里边开会,如果里边有别人,我们可以告诉他们,这个会议室被我们占下了,请你们去别的地方。其实就是验证一个会议室在某一个具体时间的归属问题。理想很美好,现实很骨感,这个时候很多人就会没有限制的预定会议室,比如说,一定定一天,到时候开不开会再说。不开会就在那放着,反正对我来说也没有什么后果。所以,我们需要一种手段来制约这种情况的发生。如果,有人定了会议室,但是会议室里边没有人的话就自动关闭这个会议,并且惩罚他就好了。

那么我们需要哪些东西?首先得知道会议室究竟有没有人。其实解决这个问题,有好几种方案,其中最简单的,可能要数人体探测设备了,其实就是一个红外设备,比如说,楼道里有些就是红外感应的(当然大部分还是声控的)开关,人一经过,自动亮灯,人走了就关上灯。其实我们就可以把这个设备的开关信息采集上来,就可以知道到底有没有人了。这个时候就需要一个开关量采集设备(https://detail.tmall.com/item.htm?spm=a230r.1.14.55.1a044e52R6v7eo&id=602866393680&ns=1&abbucket=4 对他们的客服陈工提安心,他会对你很热情的)把红外设备的线连接到这个设备上,然后把这个设备指向某一个某一个地址,这个设备就会跟对应的IP地址下的端口建立连接。然后获取这个设备的信息就可以了(当然说是这么说。具体的协议可能稍微有点麻烦)。

我们这边其实已经有一个会议室的应用了,我要做的是让这个会议室,能够做到没有人的时候(需要持续没有人15分钟)自动关闭会议室,并且惩罚相应的人。我搭建了一个会议智能设备的接入平台,设备链接到对应的接入平台之后,接入平台就会获得这个设备的信息,并且提供接口给PaaS的会议室,会议室在需要的时候,会调用设备接入信息的接口获得有没有上线、有没有人以及没人多久了的相关信息。然后判断要不要关掉这个会议室,并且惩罚这个人。

其实最核心的设计就这么简单,不过可能会面临几个问题。

1、 会不会误判?
我们在关闭会议室并且惩罚人的时候,只会有一种情况,那就是开关量采集设备在线,并且没有人超过15分钟的情况才会关闭会议室。那么究竟什么时候可能会出现,有人但是显示没有人呢?一、红外设备跟智能设备之间断线了。二、人数非常少,并且长时间不动(这个是红外设备的特性,当然可以换雷达设备,不过制约更大,还不如红外设备)。网络情况肯定不会误判,因为会存在心跳的时间,心跳如果长时间没有响应就认为失效了,也会认为数据无效而不会关闭。

2、什么时候是 会议关闭的合适的时机?
其实,我们这边设置的最短是15分钟。也就是说,会议开始的15分钟内完全没有必要关闭。如果你尝试关闭的时候,发现现在没有人,但是上次有人的时间是5分钟以前,那么10分钟之后就是一个合适的时机。这个计算公式其实有点乱,但是并不复杂,自己理一下就可以理出来一个合适的时机。

3、设备与服务之间使用的是什么协议?
其实这个跟设备是有关系的,我用的这个设备有三种好像。串口、UDP、TCP,不过我们用的是TCP毕竟我们的服务器是只有一个的,所以还是TCP相对靠谱一点。

4、数据安全嘛?
设备上现在不支持加密校验,最多加一个CRC的循环冗余校验,主要是防止数据篡改的,不过,安全性是相当的低,我们现在用的是白名单的方式,就是只给IP开放端口,让你链接不上来。

5、怎么提高安全性?
其实设备里边是一个小型的Linux,如果想自己做嵌入式的程序进去,自己联通自己的服务,想怎么搞就怎么搞了。

怎样在PaaS平台上搭建一个会自动关闭的会议室的更多相关文章

  1. 如何在以太坊上搭建一个Dapp?

    原创: 前哨小兵甲 区块链前哨 昨天 策划|Tina作者|Mahesh Murthy俗话说,实践出真知!对于开发人员来说,最好的学习办法就是亲自动手做一个小项目.所以,接下来我们将会以一个投票程序为例 ...

  2. [Linux] Ubuntu Server 12.04 LTS 平台上搭建WordPress(Nginx+MySql+PHP) Part II

    接着上一节继续搭建我们的LNMP平台,接下来我们安装PHP相关的服务 sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5- ...

  3. [Linux] Ubuntu Server 12.04 LTS 平台上搭建WordPress(Nginx+MySQL+PHP) Part IV

    接下来我们去下载 WorePress 用最新的 3.7.1 下载地址是:http://cn.wordpress.org/wordpress-3.7.1-zh_CN.zip 我们先建立一个文件夹 /va ...

  4. 【网站开发】在新浪SAE上搭建一个博客

    概述 在新浪SAE上搭建一个博客 1.访问新浪SAE站点 http://sae.sina.com.cn/ 2.注册新浪SAE 3.选择应用仓库 4.选择WordPress 5.安装WordPress ...

  5. 用Docker在一台笔记本电脑上搭建一个具有10个节点7种角色的Hadoop集群(上)-快速上手Docker

    如果想在一台电脑上搭建一个多节点的Hadoop集群,传统的方式是使用多个虚拟机.但这种方式占用的资源比较多,一台笔记本能同时运行的虚拟机的数量是很有限的.这个时候我们可以使用Docker.Docker ...

  6. 利用socket编程在ESP32上搭建一个TCP客户端

    通过之前http://www.cnblogs.com/noticeable/p/7636582.html中对socket的编程,已经可以知道如何通过socket编程搭建服务器和客户端了,现在,就在ES ...

  7. 使用python在SAE上搭建一个微信应用,使用有道翻译的api进行在线翻译

    1. 准备,先在使用python一步一步搭建微信公众平台(一)中基本实现自动回复的功能后,接着在有道词典上申请一个key,http://fanyi.youdao.com/openapi?path=da ...

  8. 基于eclipse-java的平台上搭建安卓开发环境

    首先感谢好人的分享!http://www.mamicode.com/info-detail-516839.html 系统:windows 7 若想直接安装eclipse—android的,请启动如下传 ...

  9. 如何在腾讯云上搭建一个人力资源Saas

    版权声明:本文由ihr原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/180 来源:腾云阁 https://www.qclo ...

随机推荐

  1. 代码审计-MetInfo CMS任意文件读取漏洞

    0x01 代码分析 发现在app\system\include\module\old_thumb.class.php疑似有任意文件读取漏洞 public function doshow(){ glob ...

  2. vc++中代码段的免杀

    一.文件特征码定位: 一般我们先用MyCCL把被查杀文件的文件特征码定位出来,然后用C32判断定位出来的这个特征码是代码还 是字符串,或者是输入表.输出表.版权信息等…定位在不同的地方,就要用不同的方 ...

  3. Java的事件自定义事件学习

    课程设计要做一个游戏,由于对C++不是很熟悉,老师也准许使用java 或者其他的语言,在.net我学过事件,一种委托回调,但是在java 我不是很了解,应该原理都相同吧! 游戏大致是这样的,现在这在写 ...

  4. composer依赖管理与laravel框架安装

    步骤有点多,生怕哪一天忘记,记录下来会好点 laravel安装有两种途径:1.直接在一些国内第三方网站,如:https://www.golaravel.com/download/ 下载压缩包来解压即可 ...

  5. 数据结构5_java---二叉树,树的建立,树的先序、中序、后序遍历(递归和非递归算法),层次遍历(广度优先遍历),深度优先遍历,树的深度(递归算法)

    1.二叉树的建立 首先,定义数组存储树的data,然后使用list集合将所有的二叉树结点都包含进去,最后给每个父亲结点赋予左右孩子. 需要注意的是:最后一个父亲结点需要单独处理 public stat ...

  6. vue3.0 + ueditor

    公司有个需求,需要做个发送邮件的模版(富文本对于模版的扩展性更好吧) 关于富文本,也找了一些好看且支持vue的,但是功能都没有百度全面 反正这个系统也是自己人用,颜值无所谓了 关于vue2.0+ued ...

  7. e.target与事件委托简例(原生和jQuery的区别)

    target定义(英译:目标,目的): target 事件属性可返回事件的目标节点(触发该事件的节点),如生成事件的元素.文档或窗口. 语法: event.target event.target.no ...

  8. qt读取文本

    直接 代码: // lyy : 2016/8/26 16:40:11 说明:读取文本 bool FileOpeartion:: GetTheTextContent (const QString str ...

  9. 函数进阶(三) day14

    目录 昨日内容 迭代器 可迭代对象 迭代器对象 for循环原理 三元表达式 列表推导式 字典生成式 zip 生成器表达式 生成器 yield 递归 今日内容 匿名函数 内置方法 掌握 了解 异常处理 ...

  10. mysql慢日志分析组件安装

    1.pt-query-digest 安装 cd /usr/bin wget percona.com/get/pt-query-digest chmod u+x pt-query-digest yum ...