Presentation is loading. Please wait.

Presentation is loading. Please wait.

CINEMA’s UbiComp Subsystem Stefan Berger and Henning Schulzrinne Department of Computer Science Columbia University

Similar presentations


Presentation on theme: "CINEMA’s UbiComp Subsystem Stefan Berger and Henning Schulzrinne Department of Computer Science Columbia University"— Presentation transcript:

1 CINEMA’s UbiComp Subsystem Stefan Berger and Henning Schulzrinne Department of Computer Science Columbia University {hgs,stefanb}@cs.columbia.edu

2 Outline Idea User Interfaces Software Components Architecture Summary

3 Idea Use SIP to enable ubiquitous computing scenario Set up environment according to the preferences of the user Device control via SIP MESSAGE Tie CINEMA to building infrastructure User must authenticate Swipe Cards iButtons … other unique credentials like biometrics

4 Administrator Pages Room administration Create and delete rooms Define default SIP URL for phone in a room Declare names of computers in this room Room administration page Maps to ‘Rooms’ table Room access control Give users access to rooms Room Access Control Page Maps to ‘RoomACL’ table

5 Administrator Pages Global configuration page Shows much read-only status information Where and whether reader software is running Allows to specify scripts that are to be run in different rooms Configuration information for Pingtel Xpressa Setup Page Much info from ‘ConfigData’ table Pages currently accessible by everyone Will be upgraded to administrator level

6 User Pages Credential Management Add any supported credential you want iButtons or swipe cards Credential Management Page Maps to ‘Credentials’ table Device Preferences Page Configure device to your preferences Device Preferences Page Info stored into ‘ConfigData’ table

7 User Pages Room Phone Preferences Default entry automatically redirects to default phone Redirect phone calls to a phone in the room Allows to set timeout when room goes back to ‘neutral’ Room Phone Preferences Page Information stored in ‘RoomPrefs’ table

8 User Pages Tracking other users Who is where? Who is in which room? Data is ‘byproduct’ of authentication Use to ‘log out’ from room Tracking User Page Maps to ‘last_seen’ table

9 Software Components ‘DoorDaemon’ To be deployed in every room Processes card or iButton data Maps credential data to user name Runs scripts relevant for room Gets name of scripts from database table Writes its own parameters into configuration table Allows other software to find it Runs as server or client Client: needs to poll – bad!

10 Device Scripts Dynamically ‘sourced’ by DoorDaemon Return namespace when ‘sourced’ Need to implement interface $ns_action(): called when new user enters a room Arguments: user’s email address, room $ns_cleanup(): Called every few seconds; script must decide what to do Argument: room

11 Software Components iButton reader Polls iButton reader hardware every 3 seconds Capable of running in server or client mode Client mode avoids polling by ‘DoorDaemon’ Writes its parameters into configuration table – for status page Can be started in ‘web’ mode Used to add credentials to the system Only one such iButton reader possible

12 Software Components Swipe card reader Uses software-interrupt to read card data from serial port Supports also PS/2 card readers Report different patterns PS/2 reader behaves like keyboard; needs GUI for ‘focus’ Otherwise similar to iButton reader software

13 Architecture Credentials table HTTP Server Credentials.CGI iButton Reader Software (TCP Server) Command: Read iButton Data iButton Data User X Add Credential Data for User X Adding Credentials to the System Credential Data 2 3 1 4 5

14 Architecture Card Number Credential Reader Software Serial Number Door Daemon Last-seen table Credentials table Map(Credential data) = User X User X in IRT-LAB Configuration Data Script names Device Control Scripts Credential Data Detecting a User Execute scripts IRT-LAB

15 Future all-SIP Architecture SIP Presence Agent (SIPd) Card Data Credential Reader Software iButton Data SIP PUBLISH: User X in ‘IRT-LAB’ SIP NOTIFY: User X in ‘IRT-LAB’ SIP NOTIFY: User X’s preferences SIP MESSAGE: Play Radio Station 5 HTTP: Add device line for User X, Configure ringer tone, speed dial, etc. SIP MESSAGE: Turn Light On IRT Lab Services at IRT- LAB: Radio, Light, IP- Phone SIP-devctrl

16 SIP for device control Basic SIP stack REGISTER Method- handling functions INVITESUBSCRIBENOTIFYMESSAGE Sipstack2.0 Dispatcher Downwards: API function calls Upwards: Callbacks Slink-e devctrl Message Content Extraction De-multiplexing Registered callbacks XYZ module slinke@phone.cs.columbia.edu xyz@phone.cs.columbia.edu Port 5060

17 Other Software Slink-E library (slinke.tcl) Controls Slink-E Learns and replays IR sequences IR sequences associated with a ‘button’ Load and Store IR sequences Controls the radio in the lab Used on top of sip-devctrl Sends IR sequences according to SIP MESSAGE content

18 Other Software iButton library Enables TCL to be used with iButton Allows to Read serial number Read/Write access to data on iButton Read iButton parameter and type information i.e., memory size

19 Summary & Future Work Prototype in working condition Combine card reader software pieces Two serial ports Possibly combine with ‘Door Daemon’ Extend ‘Door Daemon’ Go towards all-SIP architecture Use SIP’s PUBLISH method for user’s location publication

20 END

21 Tables Credentials Stores user credential data User’s email address MD5 hash of card ID Some card info describing type of card Rooms RoomID: Name of room Default SIP phone URI Extended to host machine names in a room

22 Tables Last seen table User’s email address Location Date user entered location Lastseen.tcl for table management Expiration of users Who is in a room Lookups in table

23 Tables ConfigData Table of attributes and values Attributes defined for all kinds of information For distributed applications Was easier to use SQL than Service Discovery…


Download ppt "CINEMA’s UbiComp Subsystem Stefan Berger and Henning Schulzrinne Department of Computer Science Columbia University"

Similar presentations


Ads by Google