In a computer telephony system for providing integrated telephone and data applications, the computer telephony system including a computer having a processor and a memory, a software architecture implemented on the computer comprising:a plurality of user agents, each user agent representing a known user of the computer telephony system and including:a scenario defining a call processing behavior