A clearinghouse server for routing multi-media communications, including telephony
calls, between a source device and a destination device via a distributed computer
network, such as the global Internet. The clearinghouse server can authorize the
completion of a communication from a source device to a destination device and
collect usage-related information for the completed communication. In response
to an authorization request issued by an enrolled source device, the clearinghouse
server can identify one or more available destination devices available to accept
a communication from an authorized source device. The clearinghouse server can
provide a list of the identified destination devices, typically organized in a
rank order, by sending an authorization response to the source device. In turn,
the source device can use this list to select a destination device and contact
that selected device via the computer network to complete the communication.