CME 7.0 full-consult transfer after vxml script

Version 1
    This document was generated from CDN thread

    Created by: Aleksey Alekseev on 24-05-2010 12:09:25 PM
    In configuration
    ####
     transfer-system full-consult
     transfer-pattern .T
    ####
    ¿Call comes in on the FXO port
    ¿Script AA handle the call
    ¿Receptionist or other person takes the call
    ¿Caller wants to speak to person XYZ
    ¿Receptionist Presses the "TransFr" Key, hears the person XYZ and presses the "TransFr" key (a consultative Tranfer)
    ¿Receptionist unable transfer the call
     
    If I exclude transfer script AA from call processing the call transfer (a consultative Transfer) is successful
    So the problem is the script.
    As I understand - the call control is still handled by the vxml script.  
    I mean "Receptionist or other person takes the call" - this call is still controlled by the script.
    And because this the Receptionist unable to complete the consultative transfer
    Maybe someone is familiar with consultative call transfer and vxml script.

    Thanks,
    Aleksey

    Subject: RE: CME 7.0 full-consult transfer after vxml script
    Replied by: Aleksey Alekseev on 24-05-2010 03:30:22 PM
    Hello  Chen,
    could you give me an example how to do this?
    How to use hand off command to hand off to IOS in vxml script?
     
    Thanks,
    Aleksey

    Subject: RE: CME 7.0 full-consult transfer after vxml script
    Replied by: Yawming Chen on 24-05-2010 02:54:23 PM
    Yes, you are right. Call is still handled by vxml application. What you can you is that when call setup done (Receptionist or other person takes the call), use hand off command to hand off to IOS. So vxml will be terminated and no longer controling the call, in stead IOS will control the call and take the transfer.
     
    Thanks !

    Subject: RE: CME 7.0 full-consult transfer after vxml script
    Replied by: Yawming Chen on 24-05-2010 05:14:17 PM
    I haven't done this using VXML but I did find an exmple.
    In this example we handoff to coapp0 but we want to handoff to IOS now if you do tis IOS cammond "sh call application voice sum"
    you will find an application name "Default" "Default                   C Script        builtin:Session_Service.C"
    Just replace coapp0 by "Default". I think this will be the same as handoff default in Tcl
     


      <!-- handoff to another application -->
         <var name="appName" expr="'builtin://coapp0'"/>

         <object name="myhandoff"    
    classid="builtin://com.cisco.callhandoff">   <- Handoff to another script. The other application  is configured  as coapp0
            
    <param name="return" expr="true"/>
            
    <param name="app-uri" expr="appName"/>
             <param
    name="arg-string" expr="'arg 1'" />
    </object>

    Subject: RE: CME 7.0 full-consult transfer after vxml script
    Replied by: Aleksey Alekseev on 31-05-2010 10:04:58 AM
    I'm trying to modify my vxml script to hybrid tcl+vxml
    Could somebody help me?
     
    if the call is fax then return phone number 4463
    if where is no input then return phone number 4450
    if the user enter the correct phone number then return collected number.
     
    My have very superficial knowledge of vxml.
    #----------------------------------------------------------------------------------------
    # Procedure act_VxmlDialog1
    # In this proc¿dure, a VXML document is invoked and the VXML dialog prompts
    # the user to enter an phone number or wait for an operator. User input is passed back
    # to the TCL script.
    #
    proc act_VxmlDialog1 { } {
        global baseURI
        # the base URL is the location of this TCL script
        set vxmlDialog1 {
    <vxml version="2.0">
    <form id="main">
    <block>
     <prompt>
      <audio src="flash:hello.au"/>
     </prompt>
     <goto next="#getdst"/>
    </block>
    </form>
    <form id="getdst">
    <var name="dest" expr="'4465'"/>
    <block>
     <prompt>
      <audio src="flash:menu.au"/>
     </prompt>
    </block>
    <property name="timeout" value="7s"/>
    <catch event="com.cisco.fax.cng"> <log>*** Fax ***</log><goto next="#fax"/></catch>
    <catch event="noinput">  <log>*** No Input ***</log><goto next="#operator"/></catch>
    <catch event="nomatch">  <log>*** No Match ***</log> <goto next="#out"/></catch>
     <field name="ext" type="digits?length=4">
      <grammar type="application/grammar+regex">[34][0-9][0-9][0-9]</grammar>
      <filled><assign name="dest" expr="ext"/></filled>
     </field>
         <filled>      <exit namelist="dest"/>  </filled>
    </form>
    <form id="operator">
     <filled>
      <assign name="dest" expr="'4450'"/>
     </filled>
    </form>
    <form id="fax">
     <filled>
      <assign name="dest" expr="'4463'"/>
     </filled>
    </form>
    <form id="out">
    <block>
     <prompt>
      <audio src="flash:out.au"/>
     </prompt>
    <goto next="#getdst"/>
    </block>
    </form>
    </vxml>
        }
        leg setupack leg_incoming
        leg proceeding leg_incoming
        leg connect leg_incoming
        leg vxmldialog leg_incoming -u $baseURI -v $vxmlDialog1
    }

    Subject: RE: CME 7.0 full-consult transfer after vxml script
    Replied by: Yawming Chen on 01-06-2010 02:30:29 AM
    You can check out the    VoiceXML Quickstart Sample Scripts, there is a hybird example and also in VXML programming guide there is example for FAX detection as well.
     
    Thanks !

    Subject: RE: CME 7.0 full-consult transfer after vxml script
    Replied by: Aleksey Alekseev on 01-06-2010 07:09:50 AM
    I saw this scripts. Where was no answer to my question.
    I want to use fax detection in vxml part of the script.
     
    if FAX then return 4463
    if NOINPUT then return 4050
    if user entered the number then return this number
     
    Can I do all this in single vxml script?

    Subject: RE: CME 7.0 full-consult transfer after vxml script
    Replied by: rost beef on 11-06-2010 07:21:25 AM
    I have the same problem
    is this can help?



    <field name="answer">
         <grammar type="application/srgs+xml" src="/grammars/boolean.grxml"/>
         <prompt>Shall we say <value expr="application.bye"/>?</prompt>
         <filled>
           <if cond="answer">
            <exit/>
           </if>
           <clear namelist="answer"/>
         </filled>
      </field>
     

    example
    <form id="sec" scope="dialog">
      <transfer name="IVR_call" dest="phone://101" connecttimeout="60s" type="consultation" bridge="true">
      </transfer>
      <filled>
       <if cond="answer">
        <exit/>
       </if>
       <clear namelist="answer"/>
      </filled>
    </form>