A method for negotiating a common language on a voice over Internet
Protocol (VoIP) network, the method comprising: allowing a plurality of
users to connect to the VoIP network, each of the plurality of users
having at least one of a plurality of VoIP compatible
transmitting/receiving devices; configuring each of the plurality of VoIP
compatible transmitting/receiving devices with a list of a plurality of
languages, each of the plurality of languages having a priority level
associated therewith; allowing automatic selection of the common language
between two or more of the plurality of users on a joint VoIP call by
performing a language handshake; computing a maximum selection score via
a language handshake algorithm provided by the language handshake;
maximizing a sum of priority levels; minimizing a sum of priority
differences; and selecting the common language that provides a largest
sum of the priority levels and a lowest sum of the priority differences.