Subject: Re: [MEDIACTRL] Clarifications concerning the repeatUntilComplete attribute

From: "McGlashan, Scott" <[email-masked]>
Date: Sat, 2 Oct 2010 16:12:50 +0000

Hi Jean-Francois,

1.       By “A value of false indicates that dialog execution is terminated by other means”, is it meant that the dialog waits for a <dialogterminate> or for the user to hangup before sending its <dialogexit>?

[scott] This is defined in the dialog execution model – see especially step 5 in Section 4.3.1. So not just AS or user termination,  but any termination status from collect or record execution.

2.       what should be the behaviour if repeatUntilComplete is not present? (risk of resource leak)

[scott] It defaults to false  - so the behavior depends on the value of the other dialog attributes repeatCount and repeatDur. In the case, where repeatDur is not present and repeatCount = 1, then dialog exits when the prompt/collect/record elements terminate  - and that include the cases where record timeouts and no DTMF is collected.

3.       Shouldn’t the default value of repeatUntilComplete be true?

[scott] repeatUntilComplete was seen as an advanced feature  and hence the AS has to explicitly activate it by setting the value to true. Setting the default to false means that the AS by default gets a report back from the MS whenever the prompt/collect/record operation is done – whether collect or recording was successful or not. It can then decide whether to reprompt or not, or take another behavior.

Let me know if there is something that needs to be clarified in the specification since we're finalizing it now.

Thanks

Scott

From: Jean-Francois Bertrand <[email-masked]<mailto:[email-masked]>>
Date: Wed, 18 Aug 2010 15:15:50 +0000
To: "[email-masked]<mailto:[email-masked]>" <[email-masked]<mailto:[email-masked]>>
Subject: [MEDIACTRL] Clarifications concerning the repeatUntilComplete attribute

I have the following questions concerning the behaviour to adopt with the repeatUntilComplete attribute:

1.       By “A value of false indicates that dialog execution is terminated by other means”, is it meant that the dialog waits for a <dialogterminate> or for the user to hangup before sending its <dialogexit>?

2.       what should be the behaviour if repeatUntilComplete is not present? (risk of resource leak)

3.       Shouldn’t the default value of repeatUntilComplete be true?

The repeatUntilComplete attribute is defined like this:

        “indicates whether the MS terminates dialog

      execution when an input operation is completed successfully.  A

      valid value is a boolean (see Section 4.6.1<http://tools.ietf.org/html/draft-ietf-mediactrl-ivr-control-package-08#section-4.6.1>).  A value of true

      indicates that dialog execution is terminated when an input

      operation associated with its child elements is completed

      sucessfully (see execution model below for precise conditions).  A

      value of false indicates that dialog execution is terminated by

      other means.  The attribute is optional.  The default value is

      false.”

Scenarios where repeatUntilComplete is true are pretty clear.  The server sends a <dialogexit> upon completion, completion being defined as something recorded or something collected.  One question though: why isn’t true the default value of repeatUntilComplete?  If one forget to specify repeatUntilComplete, a default value of false is used which could easily leads to resource leak.

When repeatUntilComplete is false, I am a bit confused about the “other means” meaning.  How does a record dialog like this terminate:

<dialog repeatCount=”1” repeatUntilComplete=”false”><record/></dialog>

Assuming it filled its record buffer, what does it do upon its default 15sec expiration?   Should the dialog terminate and send its <dialogexit> ?  Or should it wait for a <dialogterminate> or for the user to hangup before sending its <dialogexit>?

If, in the example above, repeatCount is set to 3, is it correct to assume that the dialog saves 3 recordings and sends a <dialogexit>?  Or does it simply save 3 recording and wait for a <dialogterminate>/userHangup before sending its <dialogexit>?

What is the proper behaviour when collecting digits with repeatUntilCompleteset to false?  When collecting digits and recording with repeatUntilComplete set to false?  When playing file only?

Thanks a lot for clarifying these scenarios.

Jean-François Bertrand
Sr. Software Designer | BroadSoft, Inc.