<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <title>RE: Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - Gene</title>
  <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_thread?p_l_id=&amp;threadId=12282219" />
  <subtitle>RE: Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - Gene</subtitle>
  <id>http://developer.cisco.com/c/message_boards/find_thread?p_l_id=&amp;threadId=12282219</id>
  <updated>2013-05-26T09:01:53Z</updated>
  <dc:date>2013-05-26T09:01:53Z</dc:date>
  <entry>
    <title>RE: Re: New Message from Bill Westby in Customer Voice Portal (CVP) - Gener</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=14018355" />
    <author>
      <name>Jameson Gagnepain</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=14018355</id>
    <updated>2013-04-08T21:47:18Z</updated>
    <published>2013-04-08T21:47:18Z</published>
    <summary type="html">Janine,

1) I agree, overriding the DNIS seems an inelegant way to pass data to ICM. Using SubdialogInvoke to send the data to a single-purpose CVP app which then sends the data to ICM is a little roundabout, but it's also simpler to troubleshoot because of the compartmentalization, and easier to re-use.
2) Reporting on Hangup events sounds important to me... though if the call initiates in ICM, you'll have an "abandon" count within the call type report for any calls which ICM isn't performing the hangup on anyway. The Hangup error is more useful for recording what happened in the call, not that the caller hung up. I would think of the Hangup error as a way purely to send the data back to ICM which it would have otherwise gotten had the caller stayed on the line long enough.
3) If I can do something directly within the Call Studio visual workspace (instead of End of Call Java), it's much easier for the next person to understand my code. Also, I wouldn't make a habit of manually insert/updating anything to UCCE standard databases.

-Jameson</summary>
    <dc:creator>Jameson Gagnepain</dc:creator>
    <dc:date>2013-04-08T21:47:18Z</dc:date>
  </entry>
  <entry>
    <title>RE: Re: New Message from Bill Westby in Customer Voice Portal (CVP) - Gener</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=14013212" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=14013212</id>
    <updated>2013-04-08T21:18:16Z</updated>
    <published>2013-04-08T21:18:16Z</published>
    <summary type="html">Pushing the envelope to use ReqIcmLabel element to set call types in ICM - here are a few things I just tried (get a life, Janine! :-)
I'd like to know people's opinion - which of these is best or worthwhile - for the sake of ICM reporting.
 
As some of you know, if the caller hangs up before they hear the goodbye played from VxmlServer in its entirety, the ICM script aborts in the RunExtScript node and no data is returned to ICM. This proposes a workaround to that:
1)a) In ICM, set the ToExtVXML array with "_dnis=XXXX" (where XXXX is a dnis that hits an ICM script that will run when you use ReqIcmLabel element in Studio. The ICM Script for dnis XXXX checks PVs and sets appropriate CallTypes based on these PVs and ends with a Label element).
b) In Studio, use a HotEvent element that catches telephone.disconnect.hangup (caller hung up)
c) connect this to a ReqIcmLabel element and send data to an ICM script to set call types based upon what the caller did in Studio. 
d) connect this to either a CVP_Subdialog_Return or Hangup element (so Studio deploys, since these have no exit states). I think either of these will cause CallServer errors, since the call is already gone.
e) My 2 qualms about this method are (i)sending in a fake _dnis to the Studio app; and (ii) Using CVP_Subd_Return or Hangup after the call's already ended.
------------------------------------------------------------
To get around the 1st qualm of sending in a fake _dnis - here's a workaround I just verified:
Instead of setting the _dnis=XXXX in the ICM routing script,  you can use a Studio SubdialogInvoke element (when the caller hangs up) and set the _dnis in the URL string that invokes the subdialog app (URI: /CVP/Server?application=SetCallTypeApp&amp;_dnis=XXXX). (Where SetCallTypeApp is a Studio app; and XXXX = number that triggers the ICM script that sets the call types).  
In the invoked Studio App (SetCallTypeApp), retrieve data passed in, use the ReqIcmLabel element to pass data to ICM to set call types; and return to the main Studio app using Subdialog_Retrun.
So now the scenario is:
2) a) don't override _dnis in the ICM script.
a) In Studio, use a HotEvent element that catches telephone.disconnect.hangup (caller hung up).
b) connect this to a SubdialogInvoke element (URI:/CVP/Server?application=SetCallTypeApp&amp;_dnis=XXXX)  and  pass data for call types to set;
c) connect the SubdInvoke to either a CVP_Subdialog_Return or a Hangup element (for syntactical purposes).
----------------------------------------------------------------------
Questions:
1) Is it better to use a SubdialogInvoke so you don't need to muck around with the _dnis being sent from ICM?
2) Is it worth putting up with the Hangup error (since the call's already ended) so you can set ICM call types if caller hangs up in VxmlServer app?
3) Or is it better to use End of Call java to send the caller_input and FromExtVxml array to the Termination Call Variable table and then have to use it for reporting info for caller hangups?

Thanks! Janine
 
 </summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-04-08T21:18:16Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Janine Graves in Customer Voice Portal (CVP) - General</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13536500" />
    <author>
      <name>Bill Westby</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13536500</id>
    <updated>2013-03-26T20:42:51Z</updated>
    <published>2013-03-26T20:42:51Z</published>
    <summary type="html">Hi Janine,

No it does not, it updates ICM EWT with whatever you pass to it with the
current call, constantly updating it.

I'm doing more testing to see if the callback actual wait time is having an
issue.   I modified the CVP "math" element provided with the CVP
CallbackEntry sample app to calculate ewt in minutes to look at the session
ewt instead of the Callback_enter_queue element data which fixes the ewt
playback wait time to caller issue.

But once in my testing I passed in a 4 minute ewt and before I could even
hangup the scheduled callback session it was already calling me back which
concerned me and started me down this path where I found this ewt,0 value
was always being returned after Callback_Enter_Queue where before it was
passing back the ewt.

I guess whether this impacts callback times is still inconclusive like I
said, still testing.  I am curious if anyone else has these ES's installed
on their reporting servers and had any issues.

Thanks!!!

Bill.



On Tue, Mar 26, 2013 at 12:28 PM, Cisco Developer Community Forums &lt;
cdicuser@developer.cisco.com&gt; wrote:

&gt; Janine Graves has created a new message in the forum "General Discussion -
&gt; All Versions":
&gt; -------------------------------------------------------------- Bill, If you
&gt; run the CCB diagnostic console when that call enters the studio app, does
&gt; it also show ewt=0?
&gt; http://IPreportingserver:8000/cvp/CallbackServlet?method=Diag&lt;http://ipreportingserver:8000/cvp/CallbackServlet?method=Diag&gt;
&gt; --
&gt; To respond to this post, please click the following link:
&gt; http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/13534052or simply reply to this email.</summary>
    <dc:creator>Bill Westby</dc:creator>
    <dc:date>2013-03-26T20:42:51Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Janine Graves in Customer Voice Portal (CVP) - General</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13535698" />
    <author>
      <name>Bill Westby</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13535698</id>
    <updated>2013-03-26T20:42:50Z</updated>
    <published>2013-03-26T20:42:50Z</published>
    <summary type="html">Hi Janine,

No it does not, it updates ICM EWT with whatever you pass to it with the
current call, constantly updating it.

I'm doing more testing to see if the callback actual wait time is having an
issue.   I modified the CVP "math" element provided with the CVP
CallbackEntry sample app to calculate ewt in minutes to look at the session
ewt instead of the Callback_enter_queue element data which fixes the ewt
playback wait time to caller issue.

But once in my testing I passed in a 4 minute ewt and before I could even
hangup the scheduled callback session it was already calling me back which
concerned me and started me down this path where I found this ewt,0 value
was always being returned after Callback_Enter_Queue where before it was
passing back the ewt.

I guess whether this impacts callback times is still inconclusive like I
said, still testing.  I am curious if anyone else has these ES's installed
on their reporting servers and had any issues.

Thanks!!!

Bill.



On Tue, Mar 26, 2013 at 12:28 PM, Cisco Developer Community Forums &lt;
cdicuser@developer.cisco.com&gt; wrote:

&gt; Janine Graves has created a new message in the forum "General Discussion -
&gt; All Versions":
&gt; -------------------------------------------------------------- Bill, If you
&gt; run the CCB diagnostic console when that call enters the studio app, does
&gt; it also show ewt=0?
&gt; http://IPreportingserver:8000/cvp/CallbackServlet?method=Diag&lt;http://ipreportingserver:8000/cvp/CallbackServlet?method=Diag&gt;
&gt; --
&gt; To respond to this post, please click the following link:
&gt; http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/13534052or simply reply to this email.</summary>
    <dc:creator>Bill Westby</dc:creator>
    <dc:date>2013-03-26T20:42:50Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Bill Westby in Customer Voice Portal (CVP) - General D</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13534052" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13534052</id>
    <updated>2013-03-26T19:28:50Z</updated>
    <published>2013-03-26T19:28:50Z</published>
    <summary type="html">Bill, If you run the CCB diagnostic console when that call enters the studio app, does it also show ewt=0? http://IPreportingserver:8000/cvp/CallbackServlet?method=Diag</summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-03-26T19:28:50Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - General</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13530365" />
    <author>
      <name>Bill Westby</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13530365</id>
    <updated>2013-03-26T18:19:51Z</updated>
    <published>2013-03-26T18:19:51Z</published>
    <summary type="html">I've now run into an issue moving things into production for CCB.  It has
to do with the "Callback_Enter_Queue".

In our lab it returns the ewt I passed in from ICM "ewt=xx" as element data
(not all logs are pasted here, I snipped the relevant ones):
10.31.250.14.1364316083193.15.CallbackEntry,03/26/2013
11:41:23.193,,start,parameter,qname=CRDMPS
10.31.250.14.1364316083193.15.CallbackEntry,03/26/2013
11:41:23.193,,start,parameter,queueapp=CRDMPSQueue
10.31.250.14.1364316083193.15.CallbackEntry,03/26/2013
11:41:23.193,,start,parameter,ewt=60
10.31.250.14.1364316083193.15.CallbackEntry,03/26/2013 11:41:23.568,Enter
Queue_01,data,ewt,60

In production it always returns 0 as ewt:
10.48.143.191.1364319696831.7630.CallbackEntry,03/26/2013
12:41:36.831,,start,parameter,qname=CRDMPS
10.48.143.191.1364319696831.7630.CallbackEntry,03/26/2013
12:41:36.831,,start,parameter,queueapp=CRDMPSQueue
10.48.143.191.1364319696831.7630.CallbackEntry,03/26/2013
12:41:36.831,,start,parameter,ewt=187
10.48.143.191.1364319696831.7630.CallbackEntry,03/26/2013
12:41:37.065,Enter Queue_01,data,ewt,0

Same ES6 and ES10 on lab and production Call and VXML Servers.

Only difference is ES6 and ES17 on the CVP reporting servers.  The lab is
just base reporting server.  Do I need ES10 on reporting server as well and
if so do I need to remove ES17, apply ES10, apply ES17 again, unclear if
they have to be installed in numerical order.

Has anyone experienced this issue during your testing ?

Thank you. Bill Westby.

Thanks, Bill.

On Sat, Feb 23, 2013 at 12:04 AM, Cisco Developer Community Forums &lt;
cdicuser@developer.cisco.com&gt; wrote:

&gt; Paul Tindall has created a new message in the forum "General Discussion -
&gt; All Versions":
&gt; -------------------------------------------------------------- Control is
&gt; passed temporarily from VoiceXML to a TCL application on the VoiceXML
&gt; gateway.  The handoff failure is because the the TCL applications haven't
&gt; been configured on that gateway.   Set them up as shown in the config guide
&gt; and that error should be sorted.
&gt; --
&gt; To respond to this post, please click the following link:
&gt; http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/12293401or simply reply to this email.</summary>
    <dc:creator>Bill Westby</dc:creator>
    <dc:date>2013-03-26T18:19:51Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Janine Graves in Customer Voice Portal (CVP) - General</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13262019" />
    <author>
      <name>Bill Westby</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13262019</id>
    <updated>2013-03-19T18:02:09Z</updated>
    <published>2013-03-19T18:02:09Z</published>
    <summary type="html">Thanks Janine, I'll give it a try, appreciate your help.

I have another question for you and the group...

For anyone using Survivability, do you run every ingress call through
the survivability TCL script or just specific numbers in the dial-peers.
We use CUSP and 99% of our calls arrive on the same 800 number we route all
8T to CUSP.  So we would have to have survivability on that dial-peer by
default to offer CCB later on.  Just curious if anyone has any experience
if this puts any addiitional load on the gateway or caused you other issues
like with voicemail, dtmf, etc. I'm working to find a resource at Cisco via
our VAR but figured I'd ask here first :-)

Thanks, Bill.

On Tue, Mar 19, 2013 at 10:31 AM, Cisco Developer Community Forums &lt;
cdicuser@developer.cisco.com&gt; wrote:

&gt; Janine Graves has created a new message in the forum "General Discussion -
&gt; All Versions":
&gt; -------------------------------------------------------------- Oops, typo:
&gt; The second part should've said: And in the CallbackEntry and CallbackQueue
&gt; apps, if you want to receive the data back, then set the ReturnValue
&gt; settings to Return Value: caller_input Return Value: FromExtVXML0 Return
&gt; Value: FromExtVXML1 (Careful to get the upper/lower case correct!)
&gt; --
&gt; To respond to this post, please click the following link:
&gt; http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/13257133or simply reply to this email.</summary>
    <dc:creator>Bill Westby</dc:creator>
    <dc:date>2013-03-19T18:02:09Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Janine Graves in Customer Voice Portal (CVP) - General</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13257133" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13257133</id>
    <updated>2013-03-19T17:31:10Z</updated>
    <published>2013-03-19T17:31:10Z</published>
    <summary type="html">Oops, typo: The second part should've said: And in the CallbackEntry and CallbackQueue apps, if you want to receive the data back, then set the ReturnValue settings to Return Value: caller_input Return Value: FromExtVXML0 Return Value: FromExtVXML1 (Careful to get the upper/lower case correct!)</summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-03-19T17:31:10Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Bill Westby in Customer Voice Portal (CVP) - General D</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13258641" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13258641</id>
    <updated>2013-03-19T16:52:35Z</updated>
    <published>2013-03-19T16:52:35Z</published>
    <summary type="html">I wonder the same thing!  The ONLY reason to use CVP_Subdialog_Return is 
if this app is sometimes called directly from ICM.
I bet it's left over from when they were testing/developing the CCB 
code. Perhaps they were calling it from ICM Microapps.

Here's one thing you could do if you're squeamish about replacing the 
CVP_Subdialog_Return. In this element, just return data without 
name=value pairs. For example:
Caller Input:  success
FromExtVXML0:  janine
FromExtVXML1:  graves

And in the CallbackEntry and CallbackQueue apps, if you want receive the 
data back, then set the ReturnValue settings to
Parameter: caller_input
Parameter: FromExtVXML0
Parameter: FromExtVXML1

(these have to be spelled the way they are returned from the 
CVP_Subd_Return element)</summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-03-19T16:52:35Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Bill Webb in Customer Voice Portal (CVP) - General Dis</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13256126" />
    <author>
      <name>Bill Westby</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13256126</id>
    <updated>2013-03-19T16:28:10Z</updated>
    <published>2013-03-19T16:28:10Z</published>
    <summary type="html">I can't figure out why Cisco uses a CVP Subdialog start and return in the
"queue" app part of the Courtesy Call Back sample Studio apps.  I want to
return data to the calling application and the only way to get to the queue
app is from CallbackEntry or CallbackQueue, you can't get there from ICM.

For the life of me, and I'm pleading dumb here, I tried to return a
variable via the CVP Subdialog return in the queue app and it always comes
back empty.  I switched the queue app to regular Subdialog starts and
returns and it works fine.

When I use CVP Subdialog Return and set var=value in the return VXML
parameter it just goes empty in the calling app, what am I missing ?  WIth
all the warnings to not modify some of the sample apps not sure I want to
switch out the Subdialog elements in the queue app or not, works ok but
concerned about support if something goes wrong.

Thanks,
Bill Westby.

&gt; --
&gt; To respond to this post, please click the following link:
&gt; http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/12928580or simply reply to this email.</summary>
    <dc:creator>Bill Westby</dc:creator>
    <dc:date>2013-03-19T16:28:10Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Janine Graves in Customer Voice Portal (CVP) - General</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13210908" />
    <author>
      <name>Bill Westby</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13210908</id>
    <updated>2013-03-18T18:49:35Z</updated>
    <published>2013-03-18T18:49:35Z</published>
    <summary type="html">Yeah, that fixed it, thanks Janine!   Ah, that makes life so much easier.

Very cool.

Bill Westby.

On Mon, Mar 18, 2013 at 11:17 AM, Cisco Developer Community Forums &lt;
cdicuser@developer.cisco.com&gt; wrote:

&gt; Janine Graves has created a new message in the forum "General Discussion -
&gt; All Versions":
&gt; -------------------------------------------------------------- Bill, Did
&gt; you try passing _dnis in the URL string (the same way ICM
&gt; passes it?) - it'll show in the Activity Log, and it'll be copied into
&gt; CallData dnis and Session Data _dnis. You could also pass the _ani this
&gt; way if you needed to.
&gt;
&gt; URL: /CVP/Server?application=SomeApp&amp;_dnis=1234
&gt;
&gt; And in the Subdialog app do NOT enter _dnis in the SubdialogStart element.
&gt; --
&gt; To respond to this post, please click the following link:
&gt; http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/13209728or simply reply to this email.</summary>
    <dc:creator>Bill Westby</dc:creator>
    <dc:date>2013-03-18T18:49:35Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Bill Westby in Customer Voice Portal (CVP) - General D</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13209775" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13209775</id>
    <updated>2013-03-18T18:19:09Z</updated>
    <published>2013-03-18T18:19:09Z</published>
    <summary type="html">Just noticed your log - you must be passing dnis in the Setting called: 
Parameter - this won't create the right thing. Try the method I just 
sent you. It'll work, I'm sure (although I haven't tried it, but you'll 
see the DNIS and _dnis in the Activity Log.</summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-03-18T18:19:09Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Bill Westby in Customer Voice Portal (CVP) - General D</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13209728" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13209728</id>
    <updated>2013-03-18T18:17:09Z</updated>
    <published>2013-03-18T18:17:09Z</published>
    <summary type="html">Bill, Did you try passing _dnis in the URL string (the same way ICM 
passes it?) - it'll show in the Activity Log, and it'll be copied into 
CallData dnis and Session Data _dnis. You could also pass the _ani this 
way if you needed to.

URL: /CVP/Server?application=SomeApp&amp;_dnis=1234

And in the Subdialog app do NOT enter _dnis in the SubdialogStart element.</summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-03-18T18:17:09Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Bill Webb in Customer Voice Portal (CVP) - General Dis</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13209426" />
    <author>
      <name>Bill Westby</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=13209426</id>
    <updated>2013-03-18T18:03:10Z</updated>
    <published>2013-03-18T18:03:10Z</published>
    <summary type="html">Seems you cannot invoke reqICMLabel from in an application called by a
"sub-dialog invoke" in CVP (e.g. "BillingQueue" example in CCB).   All the
values are passed as "NA" but they actually must be 'null' because a call
to reqICMLabel throws a null pointer exception in the error log.  I tried
passing both "_dnis" and "dnis" as some value in the sub-dialog invoke with
no luck.  If anyone has an idea how to pass it that would be wonderful.
Otherwise I'll continue to use reqICMLabel from the root CVP app which
works fine, just more programming for multiple skill sets using the feature.

10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,source,CallbackEntry
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,ani,NA
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,areacode,NA
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,exchange,NA
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,dnis,NA
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,uui,NA
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,iidigits,NA
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.292,,start,parameter,callid=48B82C8000010000000000F964FA1F0A
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013 12:09:08.292,CVP
Subdialog Start_01,enter,
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013 12:09:08.527,CVP
Subdialog Start_01,exit,done
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,getDefaultAudioPath,enter,
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,getDefaultAudioPath,custom,INFO,IVRAudioPath=
http://10.31.250.14/en-us/app/CRDM/
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,getDefaultAudioPath,exit,Done
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,setDefaultAudioPath,enter,
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,setDefaultAudioPath,exit,done
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,get_set_SystemAudioPath,enter,
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,get_set_SystemAudioPath,custom,INFO,SystemAudioPath=
http://10.31.250.14/en-us/sys/
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,get_set_SystemAudioPath,exit,Done
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,ReqICMLabel_01,enter,
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,ReqICMLabel_01,element,error,A custom element encountered an
exception.
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,ReqICMLabel_01,exit,
10.31.250.14.1363626542599.32.CRDMPSQueue,03/18/2013
12:09:08.527,,element,error,


Thanks,
Bill Westby.



&gt; --
&gt; To respond to this post, please click the following link:
&gt; http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/12928580or simply reply to this email.</summary>
    <dc:creator>Bill Westby</dc:creator>
    <dc:date>2013-03-18T18:03:10Z</dc:date>
  </entry>
  <entry>
    <title>RE: Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - Gene</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12967992" />
    <author>
      <name>Paul Tindall</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12967992</id>
    <updated>2013-03-13T14:45:03Z</updated>
    <published>2013-03-13T14:45:03Z</published>
    <summary type="html">Yes, PlayMediaIOS is the one. The other one was for the internal voice browser in the old Version 1.0 H.323 model which didn't use the IOS VoiceXML capability.</summary>
    <dc:creator>Paul Tindall</dc:creator>
    <dc:date>2013-03-13T14:45:03Z</dc:date>
  </entry>
  <entry>
    <title>RE: Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - Gene</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12969588" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12969588</id>
    <updated>2013-03-13T14:35:04Z</updated>
    <published>2013-03-13T14:35:04Z</published>
    <summary type="html">Hi Paul,
I always assumed PlayMedia.template was the file used for the PM microapp when playing audio from Media Server. But I must be wrong as it doesn't contain an &lt;object&gt; tag. 
However, the PlayMediaIOS.template contains an &lt;object&gt; tag with an imbedded &lt;prompt&gt; - this must be the one you are talking about. 

Thanks for clarifying this for me. I've wondered about it for about 4 years!</summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-03-13T14:35:04Z</dc:date>
  </entry>
  <entry>
    <title>Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - General</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12943546" />
    <author>
      <name>Janine Graves</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12943546</id>
    <updated>2013-03-12T23:22:58Z</updated>
    <published>2013-03-12T23:22:58Z</published>
    <summary type="html">That helps. I can teach my Java students to extend the Audio element to contain the object tag. I didn't realize that's how ICM accomplished it even though I've looked at the playmedia template file before. Thanks! Â  -- To respond to this post, please click the following link: http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/12943310 or simply reply to this email. -- Janine Graves</summary>
    <dc:creator>Janine Graves</dc:creator>
    <dc:date>2013-03-12T23:22:58Z</dc:date>
  </entry>
  <entry>
    <title>RE: Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - Gene</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12943310" />
    <author>
      <name>Paul Tindall</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12943310</id>
    <updated>2013-03-12T23:04:40Z</updated>
    <published>2013-03-12T23:04:40Z</published>
    <summary type="html">The answer was corrupted slightly for some reason when I published so here it is again (hopefully corrected).


[u]Answer[/u]
The PM microapp VoiceXML includes an &lt;object&gt; element after the audio part that points to something that doesn't exist.  It's just there as a dummy to cause the document to block until the audio has completed.  In an earlier CVP release you may have been aware of a different method to achieve the same effect; instead of using an &lt;object&gt; element there used to be a dummy &lt;transfer&gt; element specifying 987654 as the destination.   This transfer was intended to always fail but the sub-optimal choice of the dummy destination (beginning with 9) meant that it often matched a dial peer inadvertantly.   If anyone wondered, that's why the config guide included setup for a dial peer with destination 987654 that was configured explicitly to reject the transfer attempt.
  
On Studio, out the box, there's no way to play blocking audio using the Audio Element; you have to use a different element that includes an audio group but will block, such as transfer, caller input, etc.  The more elegant way is to build a custom element or extend the standard Audio Element to include a boolean setting to wait for audio completion or not and include the dummy &lt;object&gt; if blocking is selected.


 </summary>
    <dc:creator>Paul Tindall</dc:creator>
    <dc:date>2013-03-12T23:04:40Z</dc:date>
  </entry>
  <entry>
    <title>RE: Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - Gene</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12943221" />
    <author>
      <name>Paul Tindall</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12943221</id>
    <updated>2013-03-12T22:57:08Z</updated>
    <published>2013-03-12T22:57:08Z</published>
    <summary type="html">Maybe I'm already beginning to regret asking.  Let me start with an easy one; they're not all going to get answers tonight.

[b]3. With the ICM "PM" microapp, the gateway blocks on audio (plays it to [/b]
[b]completion) - is there any way from the Studio application to accomplish [/b]
[b]this (other than to play the Audio from another invoked Subdialog [/b]
[b]application?)[/b]


[u]Answer[/u]
The PM microapp VoiceXML includes an &lt;object&gt; element after the audio part that points to something that doesn't exist.  It's just there as a dummy to cause the document to block until the audio has completed.  In an earlier CVP release you may have been aware of a different method to achieve the same effect; instead of using an &lt;object&gt; element there used to be a dummy &lt;transfer&gt; element specifying 987654 as the destination.   This transfer was intended to always fail but the sub-optimal choice of the dummy destination (beginning with 9) meant that configured intended to fail.  
On Studio, out the box, there's no way to play blocking audio using the Audio Element; you have to use a different element that includes an audio group but will block, such as transfer, caller input, etc.  The more elegant way is to build a custom element or extend the standard Audio Element to include a boolean setting to wait for audio completion or not and include the dummy &lt;object&gt; if blocking is selected.

Hope that helps as a starting point.

Paul</summary>
    <dc:creator>Paul Tindall</dc:creator>
    <dc:date>2013-03-12T22:57:08Z</dc:date>
  </entry>
  <entry>
    <title>RE: Re: New Message from Paul Tindall in Customer Voice Portal (CVP) - Gene</title>
    <link rel="alternate" href="http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12928580" />
    <author>
      <name>Bill Webb</name>
    </author>
    <id>http://developer.cisco.com/c/message_boards/find_message?p_l_id=&amp;messageId=12928580</id>
    <updated>2013-03-12T16:50:20Z</updated>
    <published>2013-03-12T16:50:20Z</published>
    <summary type="html">Hi Paul -
For me, I'm happy to have some acknowledgment that the element can be used in the manner we're talking about, within a "Comprehensive" CVP deployment. I think one of the other things we need to know is whether there are any other caveats to using the element in this manner? I've seen it behave strangely if it is called out multiple times within a short time span (in terms of the application and its execution, that is).
Not to repeat my sermon from the other thread, but I do think since this has come up again that it is good for Cisco to see the value in it. There are lots of good reasons for not bouncing back and forth between UCCE and CVP for things like queuing loops or even menu trees, etc. One example is even architectural - if you want to use a centralized UCCE/CVP deployment and you have remote gateways in another country, for instance, where network latency can cause call processing delays, then this can be mostly remedied or at least worked around by limiting the number of "Run External Script" calls the UCCE script makes.
I see 3 key things (though certainly this isn't all-inclusive) needed to minimize the "back and forth":
1. Ability to view real-time data/environment variables (the ReqICMLabel element can provide this, as we're talking about - again, I liken it to an enhanced version of "Get )
2. Ability to get valuable reporting data for calls in Studio apps (CVP Reporting Server is a good start - need more templates that are geared towards self-service or menu navigation)
3. Ability to set/change Call Type form within a Studio app for the active call (does not yet exist, but would be a GREAT feature...!)
4. Ability to update CED and Call Variables from within a Studio app (does not exist yet, would be a nice to have, and since the "update" function is part of the GED-125 interface, it would seem like it is not much of a stretch. The ReqICMLabel element already allows it via a route request/request instruction message)
You're inching your way there - inclusion of the ani/dnis/cid information in 8.5 was a welcome addition...can we get CED and Call Variables automatically as well? ;-)</summary>
    <dc:creator>Bill Webb</dc:creator>
    <dc:date>2013-03-12T16:50:20Z</dc:date>
  </entry>
</feed>

