How to make RTC VOIP functionality work with Vonage?
RTC uses standard based SIP signaling and RTP/RTCP media streams to provide VOIP functionality. To verify this, I carried out a little experiment to see if RTC works with existing VOIP services like Vonage. Guess what? It did :).
Here are the steps to configure RTC to make it work with Vonage. Please note that these are trial & error steps and the experiment was mainly to validate RTC's implementation with a consumer VOIP service. I tried this in 2006 and hence these steps may change if Vonage changed its configuration (server address/port, authentication, transport protocol, etc.) since then:
1. Use your Vonage client account information to create the RTC profile. Here is the sample profile that I used:
<provision key='1232ab03' name='Vonage' >
<user name = 'Vonage User' account=' <11 digit phone number> ' password=' <password> ' uri='sip: <11 digit phone number> @220.127.116.11' allowedauth= 'digest' />
<sipsrv addr='18.104.22.168 :5061' protocol= 'UDP' role='proxy'>
<session party='First' type='pc2pc' />
<sipsrv addr='22.214.171.124 :5061' protocol='UDP' role='registrar'/>
Fill in <11 digit phone number> and <password> with the information that you have from Vonage.
126.96.36.199 is theVonageproxy/registrar server address that I saw was being used for my account.Verify if this is still valid or if you have a DNS name for the Vonage server, put that info instead of the IP address.
2. Use UDP as the transport protocol (Set in the profile above)
3. Use symmetric UDP for SIP signaling. i.e. During RTC initialization, use the following initialization RTC flag: RTCIF_ENABLE_SYMMETRIC_UDP_SIGNALING
a. Use static local source port (5060) to listen to all incoming request i.e. During RTC initialization, use the following flag during initialization: RTCIF_PREFER_STATIC_PORT_FOR_SYMMETRIC_UDP
4. Used digest as authentication protocol (Set in the profile above)
5. Use server destination port as 5061 (Set in the profile above)
And Voila! RTC works with Vonage. I experimented before and after NAT case and it worked for both.
Please note: The above test was a pure proof of concept, to test RTC's standardized SIP implementation withh existing services like Vonage. The scenario is neither officially supported by Microsoft nor Vonage.