A method for providing communication protocol interoperability, comprising: receiving a request at an intermediate endpoint (35, 39) from a first endpoint (32a - 32f) to establish a communication session with a second endpoint (32a - 32f), wherein the request uses a first communication protocol; receiving a first response at the intermediate endpoint (35, 39) from the second endpoint (32a - 32f), wherein the first response uses a second communication protocol different than the first communication protocol; initiating a timer for receiving at an intermediate endpoint (35, 39) a set of capabilities from the second endpoint (32a - 32f); stopping the timer upon receiving a second response at the intermediate endpoint (35, 39) from the second endpoint (32a - 32f), wherein the second response comprises a first set of capabilities of the second endpoint (32a - 32f); sending a third response to the first endpoint (32a - 32f) from the intermediate endpoint (35, 39), the third response comprising temporary setup information for the first endpoint (32a - 32f) that prevents the first endpoint (32a - 32f) from sending a communication until the communication session between the first endpoint (32a - 32f) and the second endpoint (32a - 32f) is established; receiving a fourth response at the intermediate endpoint (35, 39) from the first endpoint (32a - 32f) comprising a second set of capabilities of the first endpoint (32a - 32f); and establishing the communication session between the first endpoint (32a - 32f) and the second endpoint (32a - 32f) wherein the communication session between the first endpoint (32a - 32f) and the second endpoint (32a - 32f) is established using at least one capability that is common to both the first set of capabilities associated with the second endpoint (32a - 32f) and the second set of capabilities associated with the first endpoint (32a - 32f). receiving a request at an intermediate endpoint (35, 39) from a first endpoint (32a - 32f) to establish a communication session with a second endpoint (32a - 32f), wherein the request uses a first communication protocol; receiving a first response at the intermediate endpoint (35, 39) from the second endpoint (32a - 32f), wherein the first response uses a second communication protocol different than the first communication protocol; initiating a timer for receiving at an intermediate endpoint (35, 39) a set of capabilities from the second endpoint (32a - 32f); stopping the timer upon receiving a second response at the intermediate endpoint (35, 39) from the second endpoint (32a - 32f), wherein the second response comprises a first set of capabilities of the second endpoint (32a - 32f); sending a third response to the first endpoint (32a - 32f) from the intermediate endpoint (35, 39), the third response comprising temporary setup information for the first endpoint (32a - 32f) that prevents the first endpoint (32a - 32f) from sending a communication until the communication session between the first endpoint (32a - 32f) and the second endpoint (32a - 32f) is established; receiving a fourth response at the intermediate endpoint (35, 39) from the first endpoint (32a - 32f) comprising a second set of capabilities of the first endpoint (32a - 32f); and establishing the communication session between the first endpoint (32a - 32f) and the second endpoint (32a - 32f) wherein the communication session between the first endpoint (32a - 32f) and the second endpoint (32a - 32f) is established using at least one capability that is common to both the first set of capabilities associated with the second endpoint (32a - 32f) and the second set of capabilities associated with the first endpoint (32a - 32f).