A method of and apparatus for supporting intelligent call routing (ICR)
systems multiple vendors, in a vendor neutral fashion using a computer is
described. One embodiment has a voice program send a call routing request
using an HTTP format to a call routing program. The call routing program
decodes the HTTP request and identifies the appropriate vendor-specific
communication format and communications method for talking to the ICR
system specified in the HTTP request. The call routing program sends the
request and receives the answers from the ICR system in the vendor
specific formats. The call routing program provides the ICR system
response back to the voice program in a vendor neutral fashion. This
approach allows voice programs to easily be written that work with
multiple ICR systems and allow component reuse of call routing code
amongst programs that end up working with multiple systems.