Integrating multiple functions into one communication user agent can introduce many innovative communication services. For example, with networked appliance control, a user agent can turn off the stereo when receiving an incoming call. With location sensing, a user agent can automatically reject a call if it knows the location preference is 'quiet'. Multi-function interactions enable services that are otherwise impossible. In this paper, we first present the new services introduced by the integration, then introduce our SIP user agent, SIPC, which handles these new services in a programmable way. SIPC integrates multimedia call setup, networked appliance control, presence handling, Internet TV, instant messaging, location sensing, networked resource discovery, third-party call control, real-time multimedia streaming, emergency call handling, and conference floor control into one application. We analyze the relationship among these functions and propose different approaches fo...