make the 2833 dtmf increase the sequence number before it sends instead of after. The net result of this is, we are still doing it wrong (sending both and audio packet with the same sequence number as our 2833 packet) but because we increment it first, the ua should get our 2833 packet with that sequence number before it gets the audio packet with that sequence number. This should help dtmf interop on ua's that were discarding rtp packets received with a sequence number that it had already received.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4285 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Michael Jerris 2007-02-15 14:32:34 +00:00
parent 85c8bcd5ed
commit 813c4cd85d

View File

@ -657,6 +657,7 @@ static void do_2833(switch_rtp_t *rtp_session)
for (x = 0; x < loops; x++) {
rtp_session->dtmf_data.out_digit_seq++;
switch_rtp_write_manual(rtp_session,
rtp_session->dtmf_data.out_digit_packet,
4,
@ -674,7 +675,6 @@ static void do_2833(switch_rtp_t *rtp_session)
duration,
rtp_session->dtmf_data.out_digit_seq);
rtp_session->dtmf_data.out_digit_seq++;
}
}
@ -701,6 +701,7 @@ static void do_2833(switch_rtp_t *rtp_session)
for (x = 0; x < 3; x++) {
rtp_session->dtmf_data.out_digit_seq++;
switch_rtp_write_manual(rtp_session,
rtp_session->dtmf_data.out_digit_packet,
4,
@ -718,7 +719,6 @@ static void do_2833(switch_rtp_t *rtp_session)
rtp_session->dtmf_data.out_digit_sofar,
0,
rtp_session->dtmf_data.out_digit_seq);
rtp_session->dtmf_data.out_digit_seq++;
}
free(rdigit);