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

那么我们需要哪些东西?首先得知道会议室究竟有没有人。其实解决这个问题,有好几种方案,其中最简单的,可能要数人体探测设备了,其实就是一个红外设备,比如说,楼道里有些就是红外感应的(当然大部分还是声控的)开关,人一经过,自动亮灯,人走了就关上灯。其实我们就可以把这个设备的开关信息采集上来,就可以知道到底有没有人了。这个时候就需要一个开关量采集设备(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. [NOIp2014] luogu P1351 联合权值

    哎我博 4 了. 题目描述 无向连通图 GGG 有 nnn 个点,n−1n−1n−1 条边.点从 111 到 nnn 依次编号,编号为 iii 的点的权值为 WiW_iWi​,每条边的长度均为 111 ...

  2. ‎Cocos2d-x 学习笔记(18) Label

    1. 简介 Label直接继承了Node LabelProtocol BlendProtocol,用于渲染文本,让文本呈现的效果丰富. Label有4种类型,: enum class LabelTyp ...

  3. opencv::两张图片的线性融合

    理论-线性混合操作 g(x) 表示 融合图片中的像素点,f0(x) 和 f1(x) 分别表示背景和前景图片中的像素点. //参数1:输入图像Mat – src1 //参数2:输入图像src1的alph ...

  4. tinyxml2

    网上下载tinyxml2:tinyxml2.h和tinyxml2.cpp 加载xml XMLDocument doc;   doc.LoadFile("test.xml");   ...

  5. webpack 打包 todolist 应用

    写在前面的话:  一直想着手动配置webpack实现应用,正好最近这段时间比较空闲,就写了一个通过webpack打包实现todolist的简单应用.本文内容包括:通过webpack打包css,html ...

  6. TCC推导过程

    svn 账号 yuanzn 密码:TCH5mb 项目分层 MapperDao 数据校验 throw new CloudBaseRuntimeException Helper 数据转换 manager ...

  7. python学习-流程控制(四)

    学习笔记中的源码:传送门 4.2if分支结构 if语句有三种形式: 如果 if 条件为“真”,程序就会执行 i f条件后面的多条语句:否则就会依次判断 elif 条件,如果 elif 条件为“真”,程 ...

  8. 【MongoDB详细使用教程】二、MongoDB基本操作

    目录 数据类型 数据库操作 集合操作 数据操作 增 查 改 修改整行 修改指定字段的值 删 数据类型 MongoDB常见类型 说明 Object ID 文档ID String 字符串,最常用,必须是有 ...

  9. 百万年薪python之路 -- RBAC角色权限设计

    RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成"用 ...

  10. MyBatis(1)-- MyBatis介绍

    一.MyBatis优点 不屏蔽SQL,意味着可以更为精确地定位SQL语句,可以对其进行优化和改造,这有利于互联网系统性能的提高,符合互联网需要性能优化的特点. 提供强大.灵活的映射机制,方便Java开 ...