[{"id": 11517, "state": 0, "location": "Swang 102", "location_slug": "Swang_102", "sequence": 7, "name": "A Real-World JavaScript IoT Solution", "slug": "A_RealWorld_JavaScript_IoT_Solution", "authors": "Garth Henson", "description": "As many enterprise organizations can attest, meeting space is a premium within offices. Here at Disney in Seattle, it is no different. Managers were reporting wasting in excess of 15 minutes per day just walking the floors looking for available meeting rooms in which to have a short, impromptu meeting with an employee. Calculate that wasted time across the breadth managers within our office, and we are talking about a measurable organizational expense! Looking for \"unbooked\" rooms is not sufficient, since there are some \"un-bookable\" rooms, and there are also those fiends who will book a conference room and then not actually hold their meeting (or end it early). We had no way to identify these situations without walking the floor, hunting for empty spaces.\r\n\r\nTo combat this problem, we build a solution that I would love to share with you. By connecting a PIR (Passive Infrared) sensor to a Raspberry PI, we are able to monitor for activity in a single room. This device is then able to broadcast a state change (from available to occupied or vice versa) over a web socket to which it has connected. In order to surface the availability of the rooms, we have a web interface that subscribes to the web socket and visualizes the current state of all rooms in our building. By displaying this web interface on public panels and making it available for employees to view on mobile devices, we have been able to significantly reduce the time it takes to find an available meeting space.\r\n\r\nIn this presentation, we will look at all layers of the project from the high level architecture to the multiple layers of JavaScript used: from the DB layer with MongoDB to the server with NodeJS and the client with AngularJS and mobile with Ionic.", "start": "2016-11-20T11:00:00", "duration": "00:35:00", "released": true, "license": "CC License", "tags": "", "conf_key": "Garth Henson", "conf_url": "http://nodevember.org/talk/Garth%20Henson", "host_url": null, "public_url": null, "rax_mp4_url": null, "archive_url": null, "archive_mp4_url": "", "twitter_url": null, "comment": "Disney does not allow me to release permission to record the presentation.", "start_at": "10:55 20.11.2016"}]