Skip to content

Amazon Connect - Lex - DTMF slow, but voice input quicker

0

Hi, I have configured the Lex and Connect to play this following prompt. The voice input, it recognize it quickly within 3-4 seconds. But for the DTMF input, it takes 7-9 seconds, which is a huge delay. Any idea how can I improve the DTMF response quicker?

"Thank you for calling XYZ company. For English, say English or press 1. For other languages, say Other or press 5. To repeat this menu, say repeat or press star."

The session attributes are,

"sessionState": {
    "sessionAttributes": {
        "x-amz-lex:allow-dtmf-input:Repeat:Repeat_Slot": "True",
        "x-amz-lex:allow-audio-input:Repeat:Repeat_Slot": "True",
        "x-amz-lex:dtmf:max-length:Repeat:Repeat_Slot": "1",
        "x-amz-lex:allow-audio-input:Language_Selection:Lang_Select_Slot": "True",
        "x-amz-lex:allow-dtmf-input:Language_Selection:Lang_Select_Slot": "True",
        "x-amz-lex:dtmf:max-length:Language_Selection:Lang_Select_Slot": "1"
    },
"interpretations": [
    {
        "nluConfidence": "1.00",
        "interpretationSource": "Lex",
        "intent": {
            "name": "Language_Selection",
            "state": "ReadyForFulfillment",
            "slots": {
                "Lang_Select_Slot": {
                    "value": {
                        "originalValue": "1",
                        "interpretedValue": "English",
                        "resolvedValues": [
                            "English"
                        ]
                    },
                    "shape": "Scalar"
                }
            },
            "confirmationState": "None"
        }
    },

Enter image description here

2 Answers
1

Would you not look to add the DTMF end-timeout to the string and set it to lower value of millisecond than the default?

ie. "x-amz-lex:allow-dtmf-input:Repeat:Repeat_Slot": "True", "x-amz-lex:allow-audio-input:Repeat:Repeat_Slot": "True", "x-amz-lex:dtmf:max-length:Repeat:Repeat_Slot": "1", "x-amz-lex:allow-audio-input:Language_Selection:Lang_Select_Slot": "True", "x-amz-lex:allow-dtmf-input:Language_Selection:Lang_Select_Slot": "True", "x-amz-lex:dtmf:max-length:Language_Selection:Lang_Select_Slot": "1" "x-amz-lex:dtmf:end-timeout-ms:Language_Selection:Lang_Select_Slot": "2000"

answered 2 years ago

  • Yes good answer. Session attribute of "x-amz-lex:dtmf:end-timeout-ms:Language_Selection:Lang_Select_Slot": "100" where 100 is milliseconds after the initial dtmf value is selected before the system moves on. Or even better: “x-amz-lex:dtmf:max-length:Language_Selection:Lang_Select_Slot” = "1" so the caller can only input x1 dtmf value before the system moves on to the next block in the flow - and then you don't even have to worry about the timeout value.

0

Is this on every call or just the first call? What region is your instance in?

David

answered 2 years ago

  • Hi Dmacias, The DTMF delay is for all the times and it's us-east-1 region.

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.