792 | | Follow these steps to use SIP TCP transport: |
793 | | 1. First you must instantiate SIP TCP transport in your application. The TCP transport is enabled by default on pjsua so you can skip this test if you're using pjsua. |
794 | | 1. Then when sending outgoing requests, you need to tell PJSIP that the request is to be sent with TCP, by adding "{{{;transport=tcp}}}" parameter in the destination URI. This can be accomplished in two ways: |
795 | | - the most convenient way is to add a route-set entry (with proxy or outbound proxy setting) with TCP transport (e.g. with "{{{--proxy sip:myproxy;lr;transport=tcp}}}" arguments in pjsua). This way all requests will be sent with TCP via the proxy, and we don't need to change the URI for the registrar and all buddies in the buddy list. |
796 | | - if you don't want to configure route set entry, then you must add "{{{;transport=tcp}}}" parameter to all outgoing URIs (the registrar URI, the buddy URI, the target URI when making call, the target URI when sending MESSAGE, etc.). |
797 | | |
798 | | With PJSUA-LIB, when making or receiving calls with TCP, the local Contact header will automatically be adjusted to use the TCP transport. |
799 | | |
800 | | The client registration session also will keep the TCP connection active throughout the registration session, and server may send inbound requests using this TCP connection if it wants to. |
801 | | |
| 792 | Please see [wiki:Using_SIP_TCP] |