[Freeswitch-dev] Exchange 2007 UM - DTMF problem
UV
uv at talknet.com.au
Mon Jun 30 03:46:40 EDT 2008
I thought of moving this thread over here.
We’re trying to make the FS work with MS Exchange 2007 (in a
non-RFC4733-compliant mode). For this to work, we need to get the Duration
count start from 0 instead of starting from 160 (or any other sample rate).
We assume these are the lines needed to be changed:
>From /src/switch_rtp.c
1042 rtp_session->dtmf_data.out_digit_sofar =
samples;
1043 rtp_session->dtmf_data.out_digit_sub_sofar =
samples;
To /src/switch_rtp.c
1042 rtp_session->dtmf_data.out_digit_sofar = 0;
1043 rtp_session->dtmf_data.out_digit_sub_sofar =
0;
Are we missing anything? Are we breaking anything? (except compliancy)
-----Original Message-----
From: freeswitch-users-bounces at lists.freeswitch.org
[mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of UV
Sent: Sunday, June 29, 2008 7:45 PM
To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] Exchange 2007 UM - DTMF problem
Apparently, not only MS do not comply with RFC4733 but also SJphone, Xlite
(eyebeam) and Cisco (Call manager, IP phones, etc) amongst others.
Is there anyway I can make FS's Duration to start from 0? I'm happy to
change the code myself with a little guidance.
-----Original Message-----
From: freeswitch-users-bounces at lists.freeswitch.org
[mailto:freeswitch-users-bounces at lists.freeswitch.org] On Behalf Of Steve
Underwood
Sent: Sunday, June 29, 2008 3:42 PM
To: freeswitch-users at lists.freeswitch.org
Subject: Re: [Freeswitch-users] Exchange 2007 UM - DTMF problem
Hi,
Brian West wrote:
> So if you can tell me where this is wrong as per 2833 and the
> clarification via 4733 ?
>
> rfc4733 obsoletes rfc2833 and says this:
> The special duration value of zero is reserved to indicate that the
> event lasts "forever", i.e., is a state and is considered to be
> effective until updated. A sender MUST NOT transmit a zero duration
> for events other than those defined as states. The receiver SHOULD
> ignore an event report with zero duration if the event is not a
> state.
> /b
> PS: http://www.rfc-editor.org/rfc/rfc4733.txt
>
As well as that definition in RFC4733, they also have an example working
in the way the text describes. They send DTMF with a packet rate of one
every 50ms. The first packet of the DTMF sequence contains a duration of
400.
What does FS actually do when a sequence starts at 0? Does it just drop
the first packet, or the whole sequence? If it just drops the first
packet, and the far end cares, that's seriously broken on their part. It
means a single lost packet screws up the whole sequence. Not good. If FS
drops the whole sequence, that might be a little too aggressive.
Some will argue that a gateway should be totally transparent in these
situations, but total transparency is only workable in simplistic cases.
In the end, if MS are doing this you can be sure it will not be fixed,
and must be tolerated.
Regards,
Steve
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-dev/attachments/20080630/87b7f3a0/attachment-0001.html
More information about the Freeswitch-dev
mailing list