" /> DTMF Grammar return Semantic error: Composer 8.1.2 - Genesys CTI User Forum

Author Topic: DTMF Grammar return Semantic error: Composer 8.1.2  (Read 4913 times)

Offline newbee@Genesys

  • Newbie
  • *
  • Posts: 23
  • Karma: 0
  • started learning Genesys
DTMF Grammar return Semantic error: Composer 8.1.2
« on: August 19, 2016, 01:52:53 AM »
Advertisement
Hello,

I am using an INPUT block to collect last 4 digit of SSN. The prompt is played successfully and digits are collected from the caller. But at the end of Grammar file interpretation, a Semantic error is thrown. 


Here is the part of MCP log that has error information

2016-08-18 14:03:37.254 DBUG 0185017B-102801C0 10796 08500000 VGFLToECMA.C:181 InitializeGlobalTagScope(): Evaluate global tag script:
2016-08-18 14:03:37.254 DBUG 0185017B-102801C0 10796 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: LAST4SSN_DTMF(0). Input tokens: 5009
2016-08-18 14:03:37.254 DBUG 0185017B-102801C0 10796 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: returnValue = "";
2016-08-18T14:03:37.254 Std 20003 WARN 00000000-00000000 10796 08500000 SI processing error. Attempted to implicitly define variable [returnValue]; script will fail
2016-08-18 14:03:37.254 DBUG 0185017B-102801C0 10796 08500000 VGFLToECMA.C:401 ProcessRule(): Could not evaluate tag script returnValue = "";
2016-08-18T14:03:37.254 Std 20003 WARN 0185017B-102801C0 10796 08500000 Semantic Interpretation (SI) Error: SessId: 20, GramId: 545515752
2016-08-18 14:03:37.254 DBUG 0185017B-102801C0 10796 08500000 VGDTMFRecognitionThread.C:2482 NotifyRecognitionComplete(): Session ID: 49. Completion Result: 1, GramID: eefbf9c62022872f0e59196d9cda0a33, SI Result: Could not evaluate script: returnValue = "";, ConsumedDigits: 0
2016-08-18 14:03:37.254 DBUG 0185017B-102801C0 10796 0C000000 VXMLCallLeg.cxx:4918 VXMLCallLeg::HandleRecognitionComplete called
2016-08-18 14:03:37.254 DBUG 00000000-00000000 10796 08500000 VGDTMFRecognitionSessionMgr.C:317 DestroySession(): Started. Id: 20



Below is the grammar code that is executed[b][/b].

[i]<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<grammar xmlns="http://www.w3.org/2001/06/grammar" mode="dtmf" version="1.0" root="LAST4SSN_DTMF">


    <rule id="LAST4SSN_DTMF" scope="public">

<one-of>

        <item>
        <tag>returnValue = "";</tag>
       
  <item repeat="4">
  <ruleref uri="#DIGIT"/>
  <tag>returnValue = returnValue + DIGIT.value;</tag>
    </item>
   
    <item repeat="0-1">
#
    </item>
<tag> returnType = "Number"; </tag>
        </item>
       
        <item>
        0     
<tag>
returnValue = "Agent";
returnType = "COMMAND";
</tag>
    </item>
   
</one-of>
</rule>


<rule id="DIGIT">
<one-of>
<item>
1
<tag>value = "1";</tag>
</item>
<item>
2
<tag>value = "2";</tag>
</item>
<item>
3
<tag>value = "3";</tag>
</item>
<item>
4
<tag>value = "4";</tag>
</item>
<item>
5
<tag>value = "5";</tag>
</item>
<item>
6
<tag>value = "6";</tag>
</item>
<item>
7
<tag>value = "7";</tag>
</item>
<item>
8
<tag>value = "8";</tag>
</item>
<item>
9
<tag>value = "9";</tag>
</item>
<item>
0
<tag>value = "0";</tag>
</item>
</one-of>
</rule>

</grammar>[/i]


Is there something that I am missing in this grammar file ? Kindly advise.

Offline Kubig

  • Hero Member
  • *****
  • Posts: 2755
  • Karma: 44
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #1 on: August 19, 2016, 10:17:55 AM »
How the VXML looks? How is the variable/field returnValue defined?

Offline newbee@Genesys

  • Newbie
  • *
  • Posts: 23
  • Karma: 0
  • started learning Genesys
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #2 on: September 04, 2016, 11:40:42 AM »
You mean I have to define returnValue somewhere in VXML code ?

Offline newbee@Genesys

  • Newbie
  • *
  • Posts: 23
  • Karma: 0
  • started learning Genesys
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #3 on: September 04, 2016, 11:51:33 AM »
I modified this external grammar file as below

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<grammar xmlns="http://www.w3.org/2001/06/grammar" mode="dtmf" version="1.0" root="LAST4SSN_DTMF">


    <rule id="LAST4SSN_DTMF" scope="public">

<one-of>

        <item>
        <tag>out = ""</tag>
       
  <item repeat="4">
  <ruleref uri="#DIGIT"/>
  <tag>out = out + DIGIT.value;</tag>
    </item>
   
    <item repeat="0-1">
#
    </item>
<tag> out = "Number"; </tag>
        </item>
       
        <item>
        0     
<tag>
out = "Agent";
out = "COMMAND";
</tag>
    </item>
   
</one-of>
</rule>


<rule id="DIGIT">
<one-of>
<item>
1
<tag>value = "1";</tag>
</item>
<item>
2
<tag>value = "2";</tag>
</item>
<item>
3
<tag>value = "3";</tag>
</item>
<item>
4
<tag>value = "4";</tag>
</item>
<item>
5
<tag>value = "5";</tag>
</item>
<item>
6
<tag>value = "6";</tag>
</item>
<item>
7
<tag>value = "7";</tag>
</item>
<item>
8
<tag>value = "8";</tag>
</item>
<item>
9
<tag>value = "9";</tag>
</item>
<item>
0
<tag>value = "0";</tag>
</item>
</one-of>
</rule>

</grammar>


when I enter only '0', it detects the input and grammar file return COMMAND.
But when I try any other digit, the grammar file always return noMatch...

here is the o/p of MCP logs:

2016-09-04 04:34:36.581 DBUG 0185017C-1029C4B7 10440 08500000 VGGrammarFactory.C:122 ProcessInput(): Calling ProcessInput with 5
2016-09-04 04:34:36.581 DBUG 0185017C-1029C4B7 10440 08500000 VGDTMFRecognitionSessionMgr.C:517 ProcessAllGrammars(): ProcessInput returned NO_MATCH for grammar 5748c0e3ed3c514ba98b91f2f8e32c55
2016-09-04 04:34:36.581 DBUG 0185017C-1029C4B7 10440 08500000 VGDTMFRecognitionThread.C:789 HandleNextTimerEvent(): Next timeout 3000
2016-09-04 04:34:36.600 DBUG 0185017C-1029C4B7 12328 0B200000 MPCDTMFDispatcher.cxx:94 MPCDTMFDispatcher::MediaTransmit - LastDTMFRxTimeIndex=1764903141, LastProcessedDTMF=true, LastDTMF=5, LastRxTime=1764903141, PacketTimeIndex=1764903141
2016-09-04 04:34:36.641 DBUG 0185017C-1029C4B7 11080 0B200000 MPCDTMFDispatcher.cxx:94 MPCDTMFDispatcher::MediaTransmit - LastDTMFRxTimeIndex=1764903141, LastProcessedDTMF=true, LastDTMF=5, LastRxTime=1764903141, PacketTimeIndex=1764903141
2016-09-04 04:34:36.660 DBUG 0185017C-1029C4B7 13248 0B200000 MPCDTMFDispatcher.cxx:94 MPCDTMFDispatcher::MediaTransmit - LastDTMFRxTimeIndex=1764903141, LastProcessedDTMF=true, LastDTMF=5, LastRxTime=1764903141, PacketTimeIndex=1764903141
2016-09-04T04:34:36.932 Trc 33009 INFO 00000000-00000000 11252 02800FA1 Request received: OPTIONS sip:<IP Address>:5170 SIP/2.0
Via: SIP/2.0/UDP <IP Address>:5064;branch=z9hG4bK000000001B86AFA0cc06cc
From: <sip:GVP@<IP Address>:5064>;tag=B58B1BCE-F93F-4522-E491-94E0DE56EB55
To: sip:<IP Address>:5170
Max-Forwards: 70
CSeq: 67985 OPTIONS
Call-ID: 5F9099F5-3F66-434D-19A3-1A0375FB4E23-5064@<IP Address>
Contact: <sip:GVP@<IP Address>:5064>
Content-Length: 0
Supported: timer, uui


2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 10440 08500000 VGDTMFRecognitionThread.C:2482 NotifyRecognitionComplete(): Session ID: 23. Completion Result: 3, GramID: , SI Result: (null), ConsumedDigits: 0
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 10440 0C000000 VXMLCallLeg.cxx:4918 VXMLCallLeg::HandleRecognitionComplete called
2016-09-04 04:34:39.581 DBUG 00000000-00000000 13044 0C000000 AppEventBase.h:61 app.VXML-NG AMEVENT_VXML_DTMF_RECO_COMPLETE - ID=23,Cause=RECO_COMPLETE_NO_MATCH,Result=<?xml version='1.0'?><result><interpretation><instance/><input mode="dtmf"><nomatch/></input></interpretation></result>
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 13044 0C000000 VXMLCallLeg.cxx:4932 VXMLCallLeg::HandleDTMFRecoDone called. Cause: 3
2016-09-04 04:34:39.581 DBUG 00000000-00000000 13044 0C000000 VXMLUtils.h:161 PlatformRecoResult() Create PlatformRecoResult 0x20e93890
2016-09-04 04:34:39.581 DBUG 00000000-00000000 13044 0C000000 VXMLUtils.h:252 PlatformPromptDoneInfo() Create PlatformPromptDoneInfo 0x1fa6ef00
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 13044 0C000000 VXMLCallLeg.cxx:5320 Entered delete noinput timeout timer.
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 13044 0C000000 VXMLCallLeg.cxx:2793 VXMLCallLeg::HandlePromptDone: nStatus = 7
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 13044 0C000000 VXMLCallLeg.cxx:2893 VXMLCallLeg::HandlePlayAndCollectDone
2016-09-04 04:34:39.581 DBUG 00000000-00000000 10440 08500000 VGDTMFRecognitionSessionMgr.C:317 DestroySession(): Started. Id: 26
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:1888 ProcessEvents() Started
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:1905 ProcessEvents() Event type [6], session id: [0185017C-1029C4B7]
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:1954 ProcessEvents(): Play and Collect Done
2016-09-04 04:34:39.581 DBUG  10440 08500000 VGDTMFRecognitionThread.C:789 HandleNextTimerEvent(): Next timeout 0
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:2465 HandlePlayAndCollectDoneEvent() Started
2016-09-04 04:34:39.581 DBUG 0185017C-1029C4B7 4812 0C000000 PlayAndCollectDoneEvent.cxx:65 Initialize() Recognition result: <?xml version='1.0'?><result><interpretation><instance/><input mode="dtmf"><nomatch/></input></interpretation></result>
2016-09-04 04:34:39.581 DBUG 00000000-00000000 4812 0C000000 JSDOMObject.h:284 __JSDOMTRACE ErrorHandler() 00000000202E5C10
2016-09-04 04:34:39.581 DBUG 00000000-00000000 4812 0C000000 JSDOM.cxx:285 __JSDOMTRACE DOMBuilderWrapper() 00000000202E5C00
2016-09-04 04:34:39.581 DBUG 00000000-00000000 4812 0C000000 JSDOM.cxx:299 __JSDOMTRACE m_pBuilder 000000002051FC08
2016-09-04 04:34:39.582 DBUG 00000000-00000000 4812 0C000000 JSDOM.cxx:313 __JSDOMTRACE m_pBuilder->release() 000000002051FC08
2016-09-04 04:34:39.582 DBUG 00000000-00000000 4812 0C000000 JSDOMObject.h:290 __JSDOMTRACE ~ErrorHandler() 00000000202E5C10
2016-09-04 04:34:39.582 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:2924 PopulateApplicationLastResult(VXMLPromptDoneInfo) Filling in application.lastresult$
2016-09-04 04:34:39.582 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:2968 PopulateApplicationLastResult(VXMLRecoResult) Filling in application.lastresult$
2016-09-04 04:34:39.582 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:3026 PopulateApplicationLastResult() Started
2016-09-04 04:34:39.582 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:3044 PopulateApplicationLastResult() There are 1 interpretation(s)
2016-09-04 04:34:39.582 DBUG 0185017C-1029C4B7 4812 0C000000 VXMLSession.cxx:4249 HandleInputEnd() Started for result: [7]
2016-09-04T04:34:39.582 Int 50025 0185017C-1029C4B7 4812 input_end NO_MATCH|dtmf||||1.000000


How do I handle this 'out' variable in case when multiple digits are to be detected ? Kidnly adivce.

Offline newbee@Genesys

  • Newbie
  • *
  • Posts: 23
  • Karma: 0
  • started learning Genesys
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #4 on: September 04, 2016, 12:39:49 PM »
I have been trying back and forth...

with the first version of grammar file, I tried couple of things
1) I initialized output variable 'returnValue' before starting loop (4 times in this case)
<rule id="LAST4SSN_DTMF" scope="public">
<one-of>
        <item>
        <tag>returnValue = "";</tag>       
  <item repeat="4">
  <ruleref uri="#DIGIT"/>
  <tag>returnValue = returnValue + DIGIT.value;</tag>
    </item>


And here is the MCP log for this:

2016-09-04 05:12:49.200 DBUG 0185017C-1029C4BB 10440 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: LAST4SSN_DTMF(0). Input tokens: 1236
2016-09-04 05:12:49.201 DBUG 0185017C-1029C4BB 10440 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: returnValue = "";
2016-09-04T05:12:49.201 Std 20003 WARN 00000000-00000000 10440 08500000 SI processing error. Attempted to implicitly define variable [returnValue]; script will fail
2016-09-04 05:12:49.201 DBUG 0185017C-1029C4BB 10440 08500000 VGFLToECMA.C:401 ProcessRule(): Could not evaluate tag script returnValue = "";
2016-09-04T05:12:49.201 Std 20003 WARN 0185017C-1029C4BB 10440 08500000 Semantic Interpretation (SI) Error: SessId: 28, GramId: 522207320



2) I removed the initialization as below:

<rule id="LAST4SSN_DTMF" scope="public">
<one-of>
        <item>   
  <item repeat="4">
  <ruleref uri="#DIGIT"/>
  <tag>returnValue = returnValue + DIGIT.value;</tag>
    </item>

And here is the MCP log for it:

InitializeGlobalTagScope(): Evaluate global tag script:
2016-09-04 05:24:34.677 DBUG 0185017C-1029C4BD 10440 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: LAST4SSN_DTMF(0). Input tokens: 4569
2016-09-04 05:24:34.677 DBUG 0185017C-1029C4BD 10440 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: DIGIT(0). Input tokens: 4
2016-09-04 05:24:34.678 DBUG 0185017C-1029C4BD 10440 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: value = "4";
2016-09-04T05:24:34.678 Std 20003 WARN 00000000-00000000 10440 08500000 SI processing error. Attempted to implicitly define variable [value]; script will fail
2016-09-04 05:24:34.678 DBUG 0185017C-1029C4BD 10440 08500000 VGFLToECMA.C:401 ProcessRule(): Could not evaluate tag script value = "4";
2016-09-04 05:24:34.678 DBUG 0185017C-1029C4BD 10440 08500000 VGFLToECMA.C:384 ProcessRule(): Failed to process rule: DIGIT(0)
2016-09-04T05:24:34.678 Std 20003 WARN 0185017C-1029C4BD 10440 08500000 Semantic Interpretation (SI) Error: SessId: 29, GramId: 527951688

I am not sure how can I handly this output variable 'returnValue'........... Any suggestions ?

Offline cavagnaro

  • Administrator
  • Hero Member
  • *****
  • Posts: 7641
  • Karma: 56330
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #5 on: September 04, 2016, 06:23:27 PM »
Your problem is this:

Attempted to implicitly define variable

Solve that and will work

Offline newbee@Genesys

  • Newbie
  • *
  • Posts: 23
  • Karma: 0
  • started learning Genesys
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #6 on: September 06, 2016, 12:29:06 PM »
Thanks Cavagnaro for your valuable attention on this problem here.

You are right on problem part... But I am not sure what needs to be done to remove that Implicit definition of variable..

from what I think of is removing this part from grammar file and I tried this as well but with no luck

<tag>returnValue = "";</tag>

how can remove this implicit definition of returnVariable ?

Offline cavagnaro

  • Administrator
  • Hero Member
  • *****
  • Posts: 7641
  • Karma: 56330
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #7 on: September 06, 2016, 02:19:22 PM »
Ah you need to define it before using it. You are using a variable without being defined fist, implicit.

Enviado de meu E6633 usando Tapatalk


Offline newbee@Genesys

  • Newbie
  • *
  • Posts: 23
  • Karma: 0
  • started learning Genesys
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #8 on: September 06, 2016, 02:46:25 PM »
where do I have to define this variable? grxml file header or in vxml (composer local variable) ?

Offline cavagnaro

  • Administrator
  • Hero Member
  • *****
  • Posts: 7641
  • Karma: 56330
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #9 on: September 06, 2016, 04:21:16 PM »
grxml  ::)

Offline cavagnaro

  • Administrator
  • Hero Member
  • *****
  • Posts: 7641
  • Karma: 56330
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #10 on: September 06, 2016, 04:25:40 PM »
another solution from Genesys site:
[quote]
Modify the script as below to use the format supported by NGI:
<tag>out.dm_root='spanish';out.MEANING='spanish';out.SWI_meaning='spanish';</tag>
Alternatively provision the application to use VXMLi. This can be done by setting “Application Module” to “VoiceXML – pre 7.2 compatibility mode”. Make sure that an appropriate URL for defaults.vxml is also set to “VoiceXML Defaults”.
[/quote]

Try adding the out. prefix

Offline newbee@Genesys

  • Newbie
  • *
  • Posts: 23
  • Karma: 0
  • started learning Genesys
Re: DTMF Grammar return Semantic error: Composer 8.1.2
« Reply #11 on: September 08, 2016, 03:03:34 AM »
Hello Cavagnaro... Thanks for the advice... I did modify the grxml file as per your proposed solution by genesys that you pointed out.

Here is my grammar file after modification: I prefixed both variables used with 'out.'

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<grammar xmlns="http://www.w3.org/2001/06/grammar" mode="dtmf" version="1.0" root="LAST4SSN_DTMF">


    <rule id="LAST4SSN_DTMF" scope="public">
  [b] <tag>out.value = "";</tag>
    <tag>out.returnValue = "";</tag>[/b]

<one-of>

        <item>       
  <item repeat="5">
  <ruleref uri="#DIGIT"/>
  <tag>out.returnValue = out.returnValue + out.value;</tag>
    </item>
   
    <item repeat="0-1">
#
    </item>
<tag> out.returnType = "Number"; </tag>
        </item>
       
        <item>
        0     
<tag>
out.returnValue = "Agent";
out.returnType = "COMMAND";
</tag>
    </item>
   
</one-of>
</rule>


<rule id="DIGIT">
<one-of>
<item>
1
<tag>out.value = "1";</tag>
</item>
<item>
2
<tag>out.value = "2";</tag>
</item>
<item>
3
<tag>out.value = "3";</tag>
</item>
<item>
4
<tag>out.value = "4";</tag>
</item>
<item>
5
<tag>out.value = "5";</tag>
</item>
<item>
6
<tag>out.value = "6";</tag>
</item>
<item>
7
<tag>out.value = "7";</tag>
</item>
<item>
8
<tag>out.value = "8";</tag>
</item>
<item>
9
<tag>out.value = "9";</tag>
</item>
<item>
0
<tag>out.value = "0";</tag>
</item>
</one-of>
</rule>

</grammar>


Grammar file execution was error less. this is the fragment from mcp logs of my test call

2016-09-07 12:37:33.465 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:181 InitializeGlobalTagScope(): Evaluate global tag script:
2016-09-07 12:37:33.465 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: LAST4SSN_DTMF(0). Input tokens: 11000
2016-09-07 12:37:33.465 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.value = "";
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.returnValue = "";
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: DIGIT(0). Input tokens: 1
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.value = "1";
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.returnValue = out.returnValue + out.value;
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: DIGIT(1). Input tokens: 1
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.value = "1";
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.returnValue = out.returnValue + out.value;
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: DIGIT(2). Input tokens: 0
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.value = "0";
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.returnValue = out.returnValue + out.value;
2016-09-07 12:37:33.466 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: DIGIT(3). Input tokens: 0
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.value = "0";
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.returnValue = out.returnValue + out.value;
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:253 InitializeRuleScope(): Initializing rule: DIGIT(4). Input tokens: 0
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.value = "0";
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script: out.returnValue = out.returnValue + out.value;
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:394 ProcessRule(): Evaluate tag script:  out.returnType = "Number";
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:812 JStoNLSML(): Get property value
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:812 JStoNLSML(): Get property returnValue
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGFLToECMA.C:812 JStoNLSML(): Get property returnType
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 08500000 VGDTMFRecognitionThread.C:2482 NotifyRecognitionComplete(): Session ID: 39. Completion Result: 2, GramID: ee8dd4d07841ee05fb229b1d6b746f73, SI Result: <value></value><returnValue></returnValue><returnType>Number</returnType>, ConsumedDigits: 0
2016-09-07 12:37:33.467 DBUG 0185017D-1029EFCF 11996 0C000000 VXMLCallLeg.cxx:4918 VXMLCallLeg::HandleRecognitionComplete called
2016-09-07 12:37:33.467 DBUG 00000000-00000000 11996 08500000 VGDTMFRecognitionSessionMgr.C:317 DestroySession(): Started. Id: 15
2016-09-07 12:37:33.467 DBUG 00000000-00000000 14236 0C000000 AppEventBase.h:61 app.VXML-NG AMEVENT_VXML_DTMF_RECO_COMPLETE - ID=39,Cause=RECO_COMPLETE_MATCH_WITH_OPTIONAL_ALLOWED,Result=<?xml version='1.0'?><result><interpretation confidence="100" grammar="session:0x00000008"><instance><value></value><returnValue></returnValue><returnType>Number</returnType></instance><input mode="dtmf">11000</input></interpretation></re
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 14236 0C000000 VXMLCallLeg.cxx:4932 VXMLCallLeg::HandleDTMFRecoDone called. Cause: 2
2016-09-07 12:37:33.468 DBUG  11996 08500000 VGDTMFRecognitionThread.C:789 HandleNextTimerEvent(): Next timeout 0
2016-09-07 12:37:33.468 DBUG 00000000-00000000 14236 0C000000 VXMLUtils.h:161 PlatformRecoResult() Create PlatformRecoResult 0x1fa0e1e0
2016-09-07 12:37:33.468 DBUG 00000000-00000000 14236 0C000000 VXMLUtils.h:252 PlatformPromptDoneInfo() Create PlatformPromptDoneInfo 0x20649420
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 14236 0C000000 VXMLCallLeg.cxx:5320 Entered delete noinput timeout timer.
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 14236 0C000000 VXMLCallLeg.cxx:2793 VXMLCallLeg::HandlePromptDone: nStatus = 0
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 14236 0C000000 VXMLCallLeg.cxx:2893 VXMLCallLeg::HandlePlayAndCollectDone
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 7428 0C000000 VXMLSession.cxx:1888 ProcessEvents() Started
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 7428 0C000000 VXMLSession.cxx:1905 ProcessEvents() Event type [6], session id: [0185017D-1029EFCF]
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 7428 0C000000 VXMLSession.cxx:1954 ProcessEvents(): Play and Collect Done
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 7428 0C000000 VXMLSession.cxx:2465 HandlePlayAndCollectDoneEvent() Started
2016-09-07 12:37:33.468 DBUG 0185017D-1029EFCF 7428 0C000000 PlayAndCollectDoneEvent.cxx:65 Initialize() Recognition result: <?xml version='1.0'?><result><interpretation confidence="100" grammar="session:0x00000008"><instance><value></value><returnValue></returnValue><returnType>Number</returnType></instance><input mode="dtmf">11000</input></interpretation></result>
2016-09-07 12:37:33.468 DBUG 00000000-00000000 7428 0C000000 JSDOMObject.h:284 __JSDOMTRACE ErrorHandler() 00000000218F2BA0



However, when i grab the output result within composer, it returned an object instead of a returnValue.....

2016-09-07T12:37:33.472 Int 50035 0185017D-1029EFCF 7428 log [object default]



How do I capture entered DTMFs by caller now ?