Xiaotao Wu Henning Schulzrinne with Ron Shacham, Kundan Singh, Matthew J. Mintz-habib (with slides from Ben Teitelbaum, Internet2) VON Fall 2004 (Boston, MA) October 19, 2004 PALS: Presence and Location Services
Overview Goals of PIC groups and PALS effort Rich presence and context-based communications Rich presence trials in Internet2 Location determination
Goal of Rich Presence Communication is enhanced through the inclusion of rich presence information, through which participants may see not only who is on-line, but also where they are and what they are doing, so that communications becomes planned and desired instead of disruptive and haphazard.
Presence rich presence Presence “Notification of events that facilitate communication” “On-line”, “Away”, “Idle”, “On phone”, “Out to lunch”,... Back to the future? Remember BSD: finger, write, who, talk? Zephyr at MIT (1980s) Presence restores the sense of community that existed on timesharing systems Forward to the future! New standards for interoperability and scalability User-centric control of presence publication Richer state semantics and automatic triggers Addition of location information User-created services for rich presence and location
Context context = “the interrelated conditions in which something exists or occurs” anything known about the participants in the (potential) communication relationship both at caller and callee timeCPL capabilitiescaller preferences locationlocation-based call routing location events activity/availabilitypresence sensor data (mood, bio)not yet, but similar in many aspects to location data
Indianapolis October, 2003 Honolulu January, 2004 Arlington April, 2004 Rich presence trials in Internet2
Determining location Two types of sensors: end system determines location “handset-based” GPS, triangulation network conveys location to end system or other component MAC backtracking AP-based triangulation swipe cards, iButtons, active badges Two modes: explicit user action: swipe card, touch iButton involuntary: network-based tracking GPS may not be practical (cost, power, topology) Add location beacons extrapolate based on distance moved odometer, pedometer, time-since-sighting idea: meet other mobile location beacons estimate location based on third-party information
WiFi location tracking HP Labs Metro Project Signal Strength Location Tracking Room-level accuracy Sniff client signal strength from multiple monitors Triangulation difficult due to walls, multipath effects Match signal strength signature of target locations Calibrate system by gathering signatures for each location No client software required But clients do have to transmit to be located
“Skiffs” Standard access points No client software “Skiff” monitors SA110 single board computer running Linux Report signal strength, MAC address of all packets seen Scanner Web Server Inference Engine AggregatorConsolidator SIP Location Service Scanner Database Wireles s Client
MAC address locations ARPWatch and SIP registry map MAC addresses to SIP URIs
A simple example Talk to Xiaotao Over the phone Go to his place and talk face to face IM and meet him in conference room
PIC activities Arlington, April 2004 Venue: Spring 2004 Internet2 Member Meeting, Arlington, VA Presence Elements: location (automatic); room session name; session end time; per-room internet weather Honolulu, January 2004 Venue: Winter 2004 Joint Techs Workshop, University of Hawaii Presence Elements: location (automatic); room session name; session end time; per-room internet weather Clients: sipc (Windows, Linux); presence portal Indianapolis, October 2003 Venue: Fall 2003 Internet2 Member Meeting, Indianapolis, IN Presence Elements: location (manual); room session name; session end time; Clients: sipc (Windows, Linux); Session (Mac, Windows); presence portal
Technical details SUBSCRIBE to my location PUBLISH presence status NOTIFY myself and others’ locations by Jamey from HP
Signal Strength Location Tracking Room-level accuracy Unassociated monitoring of all channels in use Gathers signal strength measurements of each client Clients visible from multiple monitors Triangulation difficult due to walls, multipath effects Match signal strength signature of target locations Calibrate system by gathering signatures for each location No client software required But clients do have to transmit to be located by Jamey from HP
Location Tracking Standard access points No client software “Skiff” monitors SA110 single board computer running Linux Report signal strength, MAC address of all packets seen by Jamey from HP
Locating client devices ARP to correlate MAC to IP
by Jamey from HP Locating SIP clients Correlate client IP addr to SIP registrar
SIPc: a context-aware SIP UA configuration multimedia session setup presence information network appliance control multicasted session emergency handling SIP Multimedia call control Real time streaming Location sensing Network appliance control Floor control SIP for presence SAP Instant message SIP CGI engine LESS/CPL engine Third party call control Emergency handling Service Location Detection (SLP) audio video white board desktop sharing location sensors Web browsers clients RTP: RFC 1889 SDP: RFC 2327RTSP: RFC 2326 SIP Event Notification: RFC 3265 SAP: RFC 2974SIP: RFC 3261 SLP: RFC 2608 Some IETF drafts CPL, SIP 3PCC, SIP Device Control GEOPRIV location format, SIP for IM
Pinpoint user on a map
Internet2 WG PIC trial PUBLISH presence status NOTIFY myself and others’ locations SUBSCRIBE to my location
Actions for a location
Location switch for CPL
LESS snapshot <device:turnoff incoming call If the call from my boss Turn off the stereo Accept the call with only audio trigger, switch, modifier, action
Presence and Integrated Communications , im:, tel:203/ , im:, tel: pic.internet2.edu Internet2 Presence and Integrated Communications WG (PIC) Home page Chair Jeremy George, Yale University { , im, Charter Foster the deployment of SIP-based communication that integrate multiple communications elements in the context of presence
Conclusion Internet2 experiments in location-based services user location context services (“what’s happening”) proximity services location communications services Use to locate users indoors Closely related to emergency services (9-1-1) On-going related work at Columbia: integration of many different location services integrate privacy policies (GEOPRIV) session mobility service mobility
Backup slides
sipc interactions with the world around it SDP SAP RTP RTSP SIP location SLP 3pcc SIP DO SLP SIP NOTIFY MESSAGE DO SIP location
sipc for PIC trial PUBLISH and XCAP support Location-switch extension for CPL Display location information Pinpoint a user on a map Convey civic or geo location & map address Map URL can be in location notifications (in CIPID or pidf-lo document)
Location-based services in sipc
Location-based device control
Service creation: location switch for CPL
Sample SIP message INVITE SIP/2.0 Expires: 3600 To: Call-Info: Call-ID: Via: SIP/2.0/TCP :4226;rport Priority: emergency Content-Type: multipart/mixed; boundary="----- =_Mjg4N2E5ZjcxOTJiMzU3ZTFlZjNhOTUxYmU4OGFlYTY=" User-Agent: Columbia University sipc 2.45 From: Xiaotao Wu ; tag= Contact: CSeq: 1 INVITE Date: Sun, 17 Oct :52:30 GMT Content-Length: 1252
SIP message – SDP =_Mjg4N2E5ZjcxOTJiMzU3ZTFlZjNhOTUxYmU4OGFlYTY= MIME-Version: 1.0 Content-ID: Content-Type: application/sdp Content-Transfer-Encoding: 8bit v=0 o=xiaotaow IN IP s=SIPC Call c=IN IP t=0 0 m=audio RTP/AVP 3 0
SIP message – location content =_Mjg4N2E5ZjcxOTJiMzU3ZTFlZjNhOTUxYmU4OGFlYTY= MIME-Version: 1.0 Content-ID: Content-Type: application/pidf+xml Content-Transfer-Encoding: 8bit <presence xmlns="urn:ietf:params:xml:ns:pidf" xmlns:gp="urn:ietf:params:xml:ns:pidf:geopriv10" xmlns:cl=" urn:ietf:params:xml:ns:pidf:geopriv10:civilLoc" xmlns:gml="urn:opengis:specification:gml:schema-xsd:feature:v3.0" 41:04:32N 85:07:10W