110 likes | 122 Views
This project status report provides an overview of an architecture that enables personalized communication devices to configure and de-configure based on user location. The report also discusses user profiles, location tracking, device configuration, and context-based configuration. The working prototype supports soft-phones and IP phones, and provides profile synchronization between multiple devices.
E N D
Service Mobility ProjectStatus Report Henning Schulzrinne Ron Shacham Columbia University Collaboration Meeting DoCoMo Eurolabs, Munich July 28, 2005
Overview • Motivation: In the future, people will use many communication devices, both personal (cell phone, desk phone) and public (eg. workplace, hotel), that may be personalized • Examples of personalization • SIP Proxy and authorization settings • Call logs • Emergency numbers • We have developed a SIP event-based architecture that configures and de-configures devices based on a user’s location
Overview SIPc Devices User Location/Context User Profile SIP Proxy Server
Architecture—User Profiles • A user’s profile is a collection of documents • Represented by XML formats • Examples: General device configuration (eg. SIP Proxy, authorization settings), call-handling scripts, dialplan • SIP Events are used by devices to access, update, and receive updates about user profiles • SUBSCRIBE to profiles, and receive both entire profiles and updates in NOTIFY messages • PUBLISH is used to push local updates • Multiple devices are synchronized in real time
SUBSCRIBE To: sip:bob@ab.com Event: userconfig NOTIFY From: sip:bob@ab.com Event: userconfig [Device Configuration] PUBLISH To: sip:bob@ab.com Event: userconfig [XML diff update] NOTIFY From: sip:bob@ab.com Event: userconfig [XML diff update] Profile Synchronization User Agent 1 SIP Proxy (ab.com) User Agent 2 Configure Device Add Speed-Dial Add Speed-Dial
Architecture—Location Tracking • User location is determined by many sources • Static: iButton readers, Swipe-card readers, RFID • Mobile: Device determines location from Bluetooth beacon, DHCP • User’s presence is updated to include the new location • “Room presence” is updated • Rooms have SIP URIs (eg. sip:conf_room7@ docomolabs-euro.com” • A new user becomes a “contact” of the room • Mobile device requires local authentication token to update room’s presence • This allows monitoring of user within the building, without gaining access to their other location information
Architecture—Device Configuration • Enhanced “Soft Phones” receive location updates and user profiles to provide users their personalized services • Existing devices (eg. IP phones) present a difficulty: • They cannot be enhanced • They have a variety of profile formats, delivery protocols • Our solution: Device Controller • Tracks user location • Subscribes to user profile information • Maintains an up-to-date view of device locations (SLP) • Translates user profiles into native device format and delivers them using native protocol (eg. HTTP, tftp) • Monitors device changes, publishes to update user profile
Context-based Configuration • Users should be able to control configuration, so that it does not occur when they do not want it • In addtion to a user’s location, device configuration may be based on • Time of day • Calendar info (meeting times) • Type of location update (active vs. passive) • Users specify policies through scripts that are executed upon user’s entrance into any room • Similar to call-handling scripts (CPL, LESS) • Specify devices configuration under specific circumstances, based on above parameters • GUIs could provide an easier interface to users
Room Room SLP Service Agent SLP Service Agent SrvReg SrvReg SLP Directory Agent SrvReq SrvRply TFTP HTTP Device Controller (DC) PUBLISH (Individual and Room Presence Updates) PUBLISH (Individual and Room Presence Updates) Scripts Room Profile— SUB/NOTIFY/ Updates Soft phone Profile SUB/NOTIFY/Updates SIP Proxy/ Registrar User/Room Presence User Profiles Architecture
Project Status • Paper: “An Architecture for Location-Based Service Mobility Using the SIP Event Model” presented at Mobisys 2004 Workshop on Context Awareness, Boston, MA • Working prototype at Columbia, DoCoMo Euro-labs
Prototype • Uses personal identification tokens to track user location • Makes user available in his current location (by adding a contact address), provides user’s profile on local device • Supports soft-phones (SIPc), as well as Pingtel Xpressa and Cisco 7960 IP phones • Provides profile synchronization between multiple user devices • Updates profile changes to and from Pingtel Xpressa phone