Patent ID: 8601492

Claim:
A method comprising: obtaining an event at a communication server, wherein the event is obtained from a channel driver, the event originates from a communication channel that is communicatively coupled to the channel driver, the communication channel is of a first media type, the communication server is communicatively coupled to a plurality of communication channels via a plurality of channel drivers, the plurality of communication channels comprises the communication channel, the plurality of channel drivers comprises the channel driver, each communication channel of the plurality of communication channels has a media type, at least two communication channels of the plurality of communication channels have different media types, each channel driver of the plurality of channel drivers is external to the communication server, the each channel driver of the plurality of channel drivers is designed to communicate with the communication server according to a communication application program interface (API), the communication API allows communications occurring between the each channel driver and the communication server to be media-independent, and the event corresponds to a work item available to an agent; in response to the obtaining, providing a notification of the work item to the agent via a single user interface, wherein the single user interface is configured to be presented by a web browser, the single user interface is configured to simultaneously present a plurality of work items by virtue of the single user interface being configured to communicate with the communication server that is configured to communicate with the plurality of communication channels independent of the media type of the plurality of communication channels, and the single user interface is further configured to allow the agent to communicate using the plurality of communication channels; receiving an activation of a work item object from the single user interface, wherein the work item object is associated with the work item; identifying a command to be issued, wherein the command is associated with the activation of the work item object; and causing the channel driver to issue the command to the communication channel.