Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers ( L), & Short T imers (S)

From: "Kevin Boyle" <[email-masked]>
Date: Fri, 2 Jan 2004 09:58:21 -0500

OK.  I can see the benefit of both constructs.  Let me see.  How about:
 
>>If the Z specifier is not followed by a digit (0-9, A-K or the wildcard
X), then the MG shall reject the digitmap as invalid protocol.  When used
inside a range notation, the Z specifier applies solely to the immediately
following digit.  When used immediately prior to a range, the Z modifier
applies to all digits in the range (thereby requiring a match in the range
to be long duration).<<
 
Better?
 
Kevin

  _____  

From: Steve Cipolli [mailto:[email-masked]] 
Sent: Friday, December 12, 2003 5:31 PM
To: Boyle, Kevin [NCRTP:3Z40:EXCH]; Steve Cipolli; 'Troy Cauble'
Cc: [email-masked]
Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers (
L), & Short T imers (S)

Kevin,
 
I think "ZX" and "Z[123]" should be valid.  Your additions seem to prohibit
these.  
 
On a related topic should an empty range specification ("[]") be rejected as
well, since nothing could possibly match it.
 
--Stephen

-----Original Message-----
From: Kevin Boyle [mailto:[email-masked]]
Sent: Wednesday, December 10, 2003 7:35 PM
To: Steve Cipolli; 'Troy Cauble'
Cc: [email-masked]
Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers (
L), & Short T imers (S)

All, 

Here is some proposed text for this.  I will include this in the IG.  Please
let me know any changes that would be better.  New text is demarcated by
>><<.

7.1.14.3        DigitMap Syntax 
... 
In addition to these event symbols, the string may contain "S" and "L"
inter-event timing specifiers and the "Z" duration modifier. "S" and "L"
respectively indicate that the MG should use the short (S) timer or the long
(L) timer for subsequent events, overriding the timing rules described
above. If an explicit timing specifier is in effect in one alternative event
sequence, but none is given in any other candidate alternative, the timer
value set by the explicit timing specifier must be used. If all sequences
with explicit timing controls are dropped from the candidate set, timing
reverts to the default rules given above. >>If used inside a range notation,
the S and L specifiers shall be ignored.<<  Finally, if conflicting timing
specifiers are in effect in different alternative sequences, the long timer
shall be used.

A "Z" designates a long duration event: placed in front of the symbol(s)
designating the event(s) which satisfy a given digit position, it indicates
that that position is satisfied only if the duration of the event exceeds
the long-duration threshold. The value of this threshold is assumed to be
provisioned in the MG.  >>If the Z specifier is not followed by a digit (0-9
or A-K), then the MG shall reject the digitmap as invalid protocol.  When
used in a range notation, the Z specifier applies solely to the immediately
following digit.<<

Kevin 
________________________________ 

        From: Steve Cipolli [mailto:[email-masked]
<mailto:[email-masked]> ] 
        Sent: Friday, December 05, 2003 1:09 PM 
        To: Boyle, Kevin [NCRTP:3Z40:EXCH]; 'Troy Cauble' 
        Cc: [email-masked] 
        Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long
Timers ( L), & Short T imers (S) 

        While I tend to agree with most of the answers below, I don't see
any of this specified in the specification.  If we can agree that the
answers below are the correct interpretation, then we still need
clarification in the spec or implementors guide.  I'm still hoping the
original author of this section of the spec will clarify the original
intention.

        --Stephen 

                -----Original Message----- 
                From: Kevin Boyle [mailto:[email-masked]
<mailto:[email-masked]> ] 
                Sent: Tuesday, December 02, 2003 3:18 PM 
                To: Steve Cipolli; 'Troy Cauble' 
                Cc: [email-masked] 
                Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z),
Long Timers ( L), & Short T imers (S) 

                Comments inline. [KJBII] 

                Kevin 

                -----Original Message----- 
                From: Steve Cipolli [mailto:[email-masked]
<mailto:[email-masked]> ] 
                Sent: Tuesday, December 02, 2003 2:40 PM 
                To: 'Troy Cauble'; Boyle, Kevin [NCRTP:3Z40:EXCH] 
                Cc: [email-masked] 
                Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z),
Long Timers ( L), & Short T imers (S) 

                Perhaps I moved us off track a bit.  It is clear that there
is more than one interpretation of the specification with regard to L, S,
and to a lesser extent Z.  Can the authors comment on what the intent of the
specification was and then perhaps we can reach some conclusion?

                Here is a partial list of odd digitmaps that seem to defy
interpretation: 
                        "123Z"                          - "Z" ignored or
error? 
                [KJBII] Z here has nothing to modify.  Error. 

                        "123S"                  - "S" (or "L") ignored or
error? 
                [KJBII] In this instance, the digitmap switches to short
interdigit timing after detecting "123".  So, neither. 

                        "1ZZ23"                 - First "Z" ignored or
error? 
                [KJBII] Because Z is defined as modifying the following
digit, and Z cannot modify Z, this should be an error. 

                        "1ZSSSSSSSSS23"         - "Z" applied to the "2" or
ignored or error? 
                [KJBII] See above.  Error as Z cannot modify S (or L). 

                        "135[2Z46]"                     - "Z" applied to "4"
or to all in the range (246) or ignored or error? 

                [KJBII] Z applies solely to the 4 here. 

                        "135[246Z]79"           - "Z" applied to "7" or
ignored or error? 
                [KJBII] Nothing for Z to modify.  Error. 

                        "135[2S46]"                     - "S" (or "L")
applied to all in range (246) or ignored or error? 

                [KJBII] This is the root of our earlier discussion.  L and S
do not modify digits -- they modify timing strategy for the digitmap at the
time they are encountered.  [246] means "match 2, 4 or 6".  So [2S46]
means... What exactly? "Match 2, short timeout, 4 or 6"?  Or "match 2, 4 or
6 while running the short timer for this digit only"?  Or "run the short
timer S after detecting 2, but not if 4 or 6 is detected"?  If the string
were "135S[246]" then we would start using the short timer before looking
for 2, 4 or 6.  If it were "135[246]S", we would start using the short timer
AFTER matching 2, 4 or 6.  But, with the S timer INSIDE the range, that
would indicate that the timer would have to fire to continue.  For instance,
if the string were "135[2S46]79", that would seem to indicate that if NO
digit was detected for the duration of the short timer, then we should
continue with the string to find 7.  This is a contrary usage to S and L at
any other point in a digitmap.  I think S and L should be ignored within
ranges.  If the MGC wants to use the S or L timer, then put them outside the
range.

                        "135[2L4S6]"            - "L" or "S" applied or both
(somehow?) or ignored or error? 
                [KJBII] See above -- the same arguments apply here.  I would
note that L would never get "detected" here, since S would match first.

                Thanks, 
                --Stephen 

                > -----Original Message----- 
                > From: Steve Cipolli [mailto:[email-masked]
<mailto:[email-masked]> ] 
                > Sent: Monday, December 01, 2003 8:01 PM 
                > To: 'Troy Cauble'; Kevin Boyle 
                > Cc: [email-masked] 
                > Subject: RE: [Megaco] Digit Maps: Long Duration
Modifier(Z), Long 
                > Timers ( L), & Short T imers (S) 
                > 
                > 
                > Part of the problem is the term "alternatives" is not
clear.  
                > The text in 
                > 7.1.14.3 says of "alternatives": 
                > A DigitMap, according to this syntax, is defined either by
a string or 
                > by a list of strings.  Each string in the list is an
alternative event 
                > sequence, specified either as a sequence of digit map
symbols or as a 
                > regular expression of digit map symbols. 
                > 
                > My reading of this is that "alternatives" are each string
and not the 
                > possible sequences through a range, but admittedly this is
not clear. 
                > 
                > The section doesn't seem to explain other odd sequences
like "123Z". 
                > Presumably the "Z" is simply ignored although an error
could also be 
                > considered the proper outcome. 
                > 
                > I must say I prefer an interpretation in which the number
of possible 
                > ways to perform the same action is as close to 1 and
possible. 
                > Therefore, I'd 
                > prefer to ban (or at least ignore) "L" and "S" within
ranges. 
                > 
                > --Stephen 
                > 
                > > -----Original Message----- 
                > > From: Troy Cauble [mailto:[email-masked]
<mailto:[email-masked]> ] 
                > > Sent: Monday, December 01, 2003 6:33 PM 
                > > To: Kevin Boyle 
                > > Cc: [email-masked] 
                > > Subject: Re: [Megaco] Digit Maps: Long Duration
Modifier(Z), Long 
                > > Timers ( L), & Short T imers (S) 
                > > 
                > > 
                > > 
                > > 
                > > I disagree that "L" and "S" are meaningless within a
range. 
                > > 
                > > "L" and "S" are used to specify the timer used for
"subsequent 
                > > events". 
                > > 
                > > I would argue that the "5" is a subsequent event in
"[34L]5", just 
                > > as it is in "[34]L5". 
                > > 
                > > I would also argue that the "4" in "[3L4]5" is NOT a
"subsequent 
                > > event", although one might debate the definition of
"subsequent". 
                > > 
                > > In summary, I think "[L34]5", "[3L4]5", "[34L]5", and 
                > "[34]L5" are all 
                > > the same. (And the "L" is not meaningless.) 
                > > 
                > > 
                > > Note that section 7.1.14.3 does bother to specify what
happens when 
                > > explicit timing specifiers are only active in some
"alternatives", 
                > or when they 
                > > differ in among alternatives -- the same timer value is
used for all 
                > > alternatives. 
                > > 
                > > 
                > > 7.1.14.3: 
                > > 
                > >  > In addition to these event symbols, the string may
contain "S" 
                > > and "L" 
                > >  > inter-event timing specifiers and the "Z" duration
modifier. "S" 
                > > and "L" 
                > >  > respectively indicate that the MG should use the
short (S) timer 
                > > or the  > long (L) timer for subsequent events,
overriding the 
                > > timing rules  > described above. If an explicit timing
specifier is 
                > > in effect in one  > alternative event sequence, but none
is given in 
                > > any other candidate  > alternative, the timer value set
by the 
                > > explicit timing specifier must be  > used. If all
sequences with 
                > > explicit timing controls are dropped from the  >
candidate set, 
                > > timing reverts to the default rules given above.
Finally,  > if 
                > > conflicting timing specifiers are in effect in different
alternative  
                > > > sequences, the long timer shall be used. 
                > > 
                > > 
                > > -troy 
                > > 
                > > 
                > > 
                > > Kevin Boyle wrote: 
                > > 
                > > > Since a range means "match one of these", I would
agree 
                > > with the assessment 
                > > > that L and S are meaningless within a range. 
                > > >  
                > > > Kevin 
                > > > 
                > > > 
                > > >   _____ 
                > > > 
                > > > From: Steve Cipolli [mailto:[email-masked]
<mailto:[email-masked]> ] 
                > > > Sent: Monday, December 01, 2003 5:22 PM 
                > > > To: Boyle, Kevin [NCRTP:3Z40:EXCH]; [email-masked] 
                > > > Subject: RE: [Megaco] Digit Maps: Long Duration 
                > > Modifier(Z), Long Timers ( 
                > > > L), & Short T imers (S) 
                > > > 
                > > > 
                > > > Thanks for the feedback.  
                > > >  
                > > > Just to make sure I understand the L and S cases: 
                > > > They are syntactically legal in a range specification,
but 
                > > semantically they 
                > > > have no effect.  Correct? 
                > > >  
                > > > --Stephen 
                > > > 
                > > > -----Original Message----- 
                > > > From: Kevin Boyle [mailto:[email-masked]
<mailto:[email-masked]> ] 
                > > > Sent: Monday, December 01, 2003 5:15 PM 
                > > > To: Steve Cipolli; [email-masked] 
                > > > Subject: RE: [Megaco] Digit Maps: Long Duration 
                > > Modifier(Z), Long Timers ( 
                > > > L), & Short T imers (S) 
                > > > 
                > > > 
                > > > Your interpretation is correct.  Because Z changes how
a 
                > > digit is matched, 
                > > > it makes sense within a range.  Think of Z as part of
the 
                > > digit it modifies, 
                > > > rather than a separate symbol. 
                > > >  
                > > > The L and S timers within a digitmap give specific 
                > > instruction as to which 
                > > > timer to run at that point in the digitmap.  While
allowed 
                > > in a range, I 
                > > > don't think they provide much value within a range
since 
                > they do not 
                > > > actually match anything.  For effective use, they
should be 
                > > outside the 
                > > > range. 
                > > >  
                > > > Kevin 
                > > > 
                > > > 
                > > >   _____ 
                > > > 
                > > > From: Steve Cipolli [mailto:[email-masked]
<mailto:[email-masked]> ] 
                > > > Sent: Monday, December 01, 2003 3:26 PM 
                > > > To: [email-masked] 
                > > > Subject: [Megaco] Digit Maps: Long Duration
Modifier(Z), 
                > > Long Timers (L), & 
                > > > Short T imers (S) 
                > > > 
                > > > 
                > > >  
                > > > According to the syntax in RFCs 3015 & 3525 the long 
                > > duration modifier (Z), 
                > > > Long Timers (L), & Short Timers (S) in digit maps can 
                > > appear in a digit 
                > > > range.  For example (where Z is 1000ms): 
                > > >     "135[2Z46]" 
                > > >  
                > > > Is this valid?  If it is valid, does this mean that
the 
                > > fourth digit event 
                > > > must be either 2, 6 (held for any duration) or 4 held
for 1000 ms? 
                > > >  
                > > > How does long timer (L) and short timer (S) in a digit

                > range apply? 
                > > >  
                > > > --Stephen 
                > > >  
                > > >  
                > > > 
                > > > 
                > > > _______________________________________________ 
                > > > Megaco mailing list 
                > > > [email-masked] 
                > > > https://www1.ietf.org/mailman/listinfo/megaco
<https://www1.ietf.org/mailman/listinfo/megaco>  
                > > 
                > > 
                > > 
                > > _______________________________________________ 
                > > Megaco mailing list 
                > > [email-masked] 
                > > https://www1.ietf.org/mailman/listinfo/megaco
<https://www1.ietf.org/mailman/listinfo/megaco>  
                > > 
                > 
                > 
                > _______________________________________________ 
                > Megaco mailing list 
                > [email-masked] 
                > https://www1.ietf.org/mailman/listinfo/megaco
<https://www1.ietf.org/mailman/listinfo/megaco>  

_______________________________________________
Megaco mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/megaco

---

From: "Kevin Boyle" <[email-masked]>
Date: Fri, 2 Jan 2004 09:58:21 -0500

Better?
 
Kevin

  _____  

Kevin,

 
--Stephen

-----Original Message-----
From: Kevin Boyle [mailto:[email-masked]]
Sent: Wednesday, December 10, 2003 7:35 PM
To: Steve Cipolli; 'Troy Cauble'
Cc: [email-masked]
Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers (
L), & Short T imers (S)

All, 

7.1.14.3        DigitMap Syntax 
... 

Kevin 

        --Stephen 

                -----Original Message----- 

                Comments inline. [KJBII] 

                Kevin 

                -----Original Message----- 

                Thanks, 
                --Stephen 

Modifier(Z), Long 
clear.  
a string or 
alternative event 
symbols or as a 
and not the 
not clear. 
like "123Z". 
could also be 
of possible 
possible. 
ranges. 
Modifier(Z), Long 
range. 
"subsequent 
"[34L]5", just 
"subsequent 
"subsequent". 
happens when 
"alternatives", 
used for all 
contain "S" 
modifier. "S" 
short (S) timer 
overriding the 
specifier is 
is given in 
by the 
sequences with 
candidate set, 
Finally,  > if 
alternative  
agree 
but 
a 
the 
allowed 
since 
should be 
Modifier(Z), 
the 
for 1000 ms?

---

From: Steve Cipolli <[email-masked]>
Date: Mon, 5 Jan 2004 14:29:01 -0500

Looks good.

--Stephen
-----Original Message-----
From: Kevin Boyle [mailto:[email-masked]]
Sent: Friday, January 02, 2004 9:58 AM
To: Steve Cipolli; Steve Cipolli; 'Troy Cauble'
Cc: [email-masked]
Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers (
L), & Short T imers (S)

Better?

Kevin

Kevin,

--Stephen

-----Original Message-----
From: Kevin Boyle [mailto:[email-masked]]
Sent: Wednesday, December 10, 2003 7:35 PM
To: Steve Cipolli; 'Troy Cauble'
Cc: [email-masked]
Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers (
L), & Short T imers (S)

All, 
7.1.14.3        DigitMap Syntax 
... 

snip...

---

From: Steve Cipolli <[email-masked]>
Date: Mon, 5 Jan 2004 14:29:01 -0500

Looks good.

--Stephen
-----Original Message-----
From: Kevin Boyle [mailto:[email-masked]]
Sent: Friday, January 02, 2004 9:58 AM
To: Steve Cipolli; Steve Cipolli; 'Troy Cauble'
Cc: [email-masked]
Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers (
L), & Short T imers (S)

Better?

Kevin

Kevin,

--Stephen

-----Original Message-----
From: Kevin Boyle [mailto:[email-masked]]
Sent: Wednesday, December 10, 2003 7:35 PM
To: Steve Cipolli; 'Troy Cauble'
Cc: [email-masked]
Subject: RE: [Megaco] Digit Maps: Long Duration Modifier(Z), Long Timers (
L), & Short T imers (S)

All, 
7.1.14.3        DigitMap Syntax 
... 

snip...