/* Setup audio address and port */
if (p->rtp) {
if (sa && portno > 0) {
- start_ice(p->rtp, (req->method != SIP_RESPONSE) ? 0 : 1);
+ /* Start ICE negotiation here, only when it is response, and setting that we are conrolling agent,
+ as we are offerer */
+ if (req->method == SIP_RESPONSE) {
+ start_ice(p->rtp, 1);
+ }
ast_sockaddr_set_port(sa, portno);
ast_rtp_instance_set_remote_address(p->rtp, sa);
if (debug) {
if (!doing_directmedia) {
if (ast_test_flag(&p->flags[2], SIP_PAGE3_ICE_SUPPORT)) {
add_ice_to_sdp(p->rtp, &a_audio);
+ /* Start ICE negotiation, and setting that we are controlled agent,
+ as this is response to offer */
+ if (resp->method == SIP_RESPONSE) {
+ start_ice(p->rtp, 0);
+ }
}
add_dtls_to_sdp(p->rtp, &a_audio);