]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-4723 --resolve
authorAnthony Minessale <anthm@freeswitch.org>
Thu, 18 Oct 2012 16:01:38 +0000 (12:01 -0400)
committerAnthony Minessale <anthm@freeswitch.org>
Thu, 18 Oct 2012 16:01:44 +0000 (12:01 -0400)
src/mod/endpoints/mod_dingaling/mod_dingaling.c

index 6e36486d7d3e16c2dfd032be09849cbc85788821..78ee260d05e0430f7025209098f1f4553182dbfd 100644 (file)
@@ -1589,8 +1589,11 @@ static int do_candidates(struct private_object *tech_pvt, int force)
 
        idx += do_tport_candidates(tech_pvt, LDL_TPORT_RTP, &cand[idx], force);
        idx += do_tport_candidates(tech_pvt, LDL_TPORT_RTCP, &cand[idx], force);
-       idx += do_tport_candidates(tech_pvt, LDL_TPORT_VIDEO_RTP, &cand[idx], force);
-       idx += do_tport_candidates(tech_pvt, LDL_TPORT_VIDEO_RTCP, &cand[idx], force);
+
+       if (tech_pvt->transports[LDL_TPORT_VIDEO_RTP].codec_index > -1) {
+               idx += do_tport_candidates(tech_pvt, LDL_TPORT_VIDEO_RTP, &cand[idx], force);
+               idx += do_tport_candidates(tech_pvt, LDL_TPORT_VIDEO_RTCP, &cand[idx], force);
+       }
 
        if (idx && cand[0].name) {
                if (ldl_session_gateway(tech_pvt->dlsession) && switch_test_flag(tech_pvt, TFLAG_OUTBOUND)) {
@@ -4349,6 +4352,8 @@ static ldl_status handle_signalling(ldl_handle_t *handle, ldl_session_t *dlsessi
                break;
        case LDL_SIGNAL_REDIRECT:
                do_describe(tech_pvt, 1);
+               tech_pvt->next_cand = switch_micro_time_now();
+               if (channel) switch_channel_mark_ring_ready(channel);
                break;
 
        case LDL_SIGNAL_ERROR: