cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Announcements

Cisco Community Designated VIP Class of 2020

CVP VoiceXML Tomcat instance as a media server

1028
Views
1
Helpful
0
Comments

Subject: Re: New Message from Mark Applebee in Customer Voice Portal (CVP) - CVP - A
Replied by: Janine Graves on 22-08-2012 03:59:19 PM
Why don't you just use IIS to serve up the audio? It's much simpler to configure expiration headers with IIS.

Subject: RE: New Message from Mark Applebee in Customer Voice Portal (CVP) - CVP - A
Replied by: GEOFFREY THOMPSON on 22-08-2012 04:18:19 PM
>>> Some strange reason customer doesn't want to install IIS on any server.

I strongly recommend that you tell them there are big performance problems in CVP with poor cache control. IIS is the right tool.

Although that class gives some measure of cache control, it lacks the flexibility of IIS. Say you want some directory to have a 1 hour expiration time (announcements etc) and others to have a 30 day expiration time (queue music)

Regards,
Geoff
This document was generated from CDN thread

Created by: Mark Applebee on 22-08-2012 03:53:40 PM
I am trying to use Tomcast as Media server. I have find the followong link regarding Tomcat cache control.
http://developer.cisco.com/documents/10501/2125796/Cache+Control+Tomcat.pdf
This document is asking to create a java class and when I tried to do that I am geting error messages. As I am not good with Java, anyone here will be able to help me by uploading this Java class or tell me where this java code is wrong?.
 
 

Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Mark Applebee on 22-08-2012 04:04:17 PM
Some strange reason customer doesn't want to install IIS on any server. They are more interested to go with Tomcat server which is already installed for VXML server.

Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Hemal Mehta on 22-08-2012 04:19:48 PM
Some strange reason customer doesn't want to install IIS on any server. They are more interested to go with Tomcat server which is already installed for VXML server.

I would strong recommend using IIS.  I use Tomcat only for my lab. If you want to use Tomcat, I can send you the jar file later tonight.  You will need to give your email.
Hemal
 

Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Mark Applebee on 22-08-2012 04:48:38 PM
I will try to convience them to use IIS.

Hemal, please send the jar file  to mark_applebee@outlook.com

Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Sidney Orret on 27-08-2012 03:24:49 PM
If you application uses CVP Studio VXML applications rather than the microapps, then you can control the caching with the vxml 2.0 property tag <maxage>.
 
 
 
I am trying to use Tomcast as Media server. I have find the followong link regarding Tomcat cache control.
http://developer.cisco.com/documents/10501/2125796/Cache+Control+Tomcat.pdf
This document is asking to create a java class and when I tried to do that I am geting error messages. As I am not good with Java, anyone here will be able to help me by uploading this Java class or tell me where this java code is wrong?.
 
 


Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: subrahmanyam juluru on 27-08-2012 04:26:34 PM
Hi Mark,
 
what is the error message you are getting when you create and compile the java class ?
I seen your pdf document and it is servlet/filter web technology concept used in the above program.
To compile and run the above program/java class we need to maintain some standard directory structure recommended by Sun/Oracle.
the main purpose of above said program/java class is when you deployee java class or jar file in tomcat, the tomcat container will be initialized and the passing parameters information to CVPResponseHeaders  Class mentioned in the web.xml file.

<init-param>
<param-name>Cache-Control</param-name>
<param-value>max-age=1800</param-value>
</init-param>



you mentioned you are not good with java so better to collect jar file from Hemal and deployee and restart the server.
 
Regards
Juluri.
 
 
 
I am trying to use Tomcast as Media server. I have find the followong link regarding Tomcat cache control.
http://developer.cisco.com/documents/10501/2125796/Cache+Control+Tomcat.pdf
This document is asking to create a java class and when I tried to do that I am geting error messages. As I am not good with Java, anyone here will be able to help me by uploading this Java class or tell me where this java code is wrong?.
 
 


Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Hemal Mehta on 27-08-2012 04:30:09 PM
I have already sent him the required jar file.
Hemal

Subject: Re: New Message from Sidney Orret in Customer Voice Portal (CVP) - CVP - Al
Replied by: Janine Graves on 27-08-2012 05:07:28 PM
I've always used 'audiomaxage' and that's worked well.  Does 'maxage'
work also?

Subject: RE: New Message from Sidney Orret in Customer Voice Portal (CVP) - CVP - Al
Replied by: GEOFFREY THOMPSON on 27-08-2012 03:46:28 PM
>>>CVP Studio VXML applications rather than the microapps, then you can control the caching with the vxml 2.0 property tag <maxage>.

Did not know that and will have to investigate.

Regards,
Geoff

Subject: RE: New Message from GEOFFREY THOMPSON in Customer Voice Portal (CVP) - CVP
Replied by: Hemal Mehta on 27-08-2012 04:23:28 PM
Yes, that is true.  It does not remove the limitation associated with serving through Tomcat though. However you can control the caching at a global level, as well as override it locally where you want the audio to be retrieved sooner or cache it for a longer time if you need to.
Hemal
________________________________
From: Cisco Developer Community Forums [cdicuser@developer.cisco.com]
Sent: Monday, August 27, 2012 2:46 PM
To: cdicuser@developer.cisco.com
Subject: New Message from GEOFFREY THOMPSON in Customer Voice Portal (CVP) - CVP - All Versions: RE: New Message from Sidney Orret in Customer Voice Portal (CVP) - CVP - Al

GEOFFREY THOMPSON has created a new message in the forum "CVP - All Versions":

--------------------------------------------------------------
>>>CVP Studio VXML applications rather than the microapps, then you can control the caching with the vxml 2.0 property tag <maxage>.

Did not know that and will have to investigate.

Regards,
Geoff
--
To respond to this post, please click the following link:

<http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/6358413>

or simply reply to this email.

Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Bill Webb on 11-09-2012 02:20:51 PM
News flash on this thread - Cisco actually added their own Cache Control Class to CVP starting somewhere in CVP 8.6. There's a commented out example in the web.xml!

I am strongly in favor of using Tomcat for the Media Server for exactly the same reason as this customer - why would you want to install IIS (which is not a required component on the CVP Call/VXML Server) just to serve up .wav files?

I'll concede that the IIS Management GUI is a little easier to use than modifying the web.xml file, but there is little you cannot do in terms of setting content expiration differently for different directories, file names - just about anything.

- Bill

Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Paul Antinori on 11-09-2012 02:47:26 PM
news flash!  there was no 8.6 version of CVP.   sorry, I had to say it.
I agree with Janine and Geoff, use IIS for the media server because it has better cache control settings and we tested it.
Tomcat is really a servlet engine, not a web server, right?

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Hemal Mehta on 11-09-2012 03:03:11 PM
Yes, Tomcat is good and you can use the method described.  However per my understanding and the recommendations I got from Cisco, Tomcat is not really recommended for prod environments  for hosting prompts.   It does not mean that it won’t work.  Depending on your architecture, setup etc you could get away with using Tomcat and have no issues .
You can always use audio maxage wherever you want to locally change the settings and need audio to be fetched sooner etc.  In my lab, I use Tomcat and in prod IIS.

From: Cisco Developer Community Forums [mailto:cdicuser@developer.cisco.com]
Sent: Tuesday, September 11, 2012 1:21 PM
To: cdicuser@developer.cisco.com
Subject: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All Versions: RE: CVP VoiceXML Tomcat instance as a media server

Bill Webb has created a new message in the forum "CVP - All Versions":

--------------------------------------------------------------
News flash on this thread - Cisco actually added their own Cache Control Class to CVP starting somewhere in CVP 8.6. There's a commented out example in the web.xml!

I am strongly in favor of using Tomcat for the Media Server for exactly the same reason as this customer - why would you want to install IIS (which is not a required component on the CVP Call/VXML Server) just to serve up .wav files?

I'll concede that the IIS Management GUI is a little easier to use than modifying the web.xml file, but there is little you cannot do in terms of setting content expiration differently for different directories, file names - just about anything.

- Bill
--
To respond to this post, please click the following link:

<http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/6475090>

or simply reply to this email.

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Bill Webb on 11-09-2012 03:43:15 PM
Thanks Paul - touche - I got too excited!! ;-) I did, in fact, mean CVP 8.5...!

For the first question, here's a link with some good examples, even though it is not specific to Tomcat:

http://www.roguewave.com/portals/0/products/hydraexpress/docs/3.5.0/html/rwsfservletug/4-3.html

Basically you can use the "*" wildcard at the end of a URL pattern, like "/en-us/dynamic/*", or for a filename wildcard, like "*.wav", but you can't combine them, as I understand it, like "/en-us/dynamic/*.wav".

I think the key is that once you have a "/" character, the URL is literal, and the wildcard only works at the end for files and subdirectories.

As for the second part that Geoff and most others seem to disagree with me on, here's my rationale:

- CVP Studio defaults to using Tomcat, referenced in the Audio Properties. All the paths are relative, like the default of "/CVP/audio". Using this makes the applications universal because they always reference a local, relative path. So you don't have to send in a media URL (http://blahblah) to every application.

- In 8.5 and beyond, you don't even need to set any of the ECCs besides "ToExtVXML" if you're using collocated Call Server/VXML Server, so why clog up your ECCs with a media server URL?

- Paul, I'll turn your statement back to you: "Tomcat is really a servlet engine, not a web server, right?" Correct, it is, but if all of your VXML is being fetched from the same root directory "/CVP" for your Studio/VXML apps, why would you install another completely separate web server (IIS) just to serve up the .wav files (and maybe grxml files if you're using speech)??

This is admittedly a pet project of mine, for sure, and maybe we'll just agree to disagree on this, but I have yet to hear a compelling advantage to using IIS.

I'll also leave you with this last point: If at some point in the future, CVP finally moves to the Cisco VOS, which I personally think it should, then IIS is out the window anyway. Is the recommendation then going to be for a separate Windows box running IIS? Methinks not. Also...ummm...doesn't IP-IVR run on VOS and serve up all its prompts locally from a Tomcat installation?

;-)

I love a good debate!!

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Sidney Orret on 11-09-2012 04:49:45 PM
I have got the same recommendation from Cisco but I haven't been able to get any specifics from them of why. Technically ANY decent http server should be good to act as media server and in my opinion Tomcat is a very good one. Granted IIS has a nicer configuration interface, but the advantages stop at it.
 
Also, many organizations are reluctant to install IIS as it becomes a security concern (valid or not) that is always pointed out during audits. It is good that Cisco now is considering using Tomcat as a media server and I think Apache and Websphere should be next in line.
 
To me, Cisco losening the deployment guide and moving away from IIS is a step in the right direction if Cisco is ever considering CVP as an unix-like appliance which I think makes a lot of sense.
 
Regarding media caching, I am not fan of using the http server for that but rather to use the vxml properties of the audio elements in the VXML application. Of course that implies that I use VXML apps and not microapps for my deployments. My suggestion for future releases of CVP: extend the PM microapp to include the maxage property, so the caching can be also controlled from the microapp.
 
 
Yes, Tomcat is good and you can use the method described.  However per my understanding and the recommendations I got from Cisco, Tomcat is not really recommended for prod environments  for hosting prompts.   It does not mean that it won’t work.  Depending on your architecture, setup etc you could get away with using Tomcat and have no issues .
You can always use audio maxage wherever you want to locally change the settings and need audio to be fetched sooner etc.  In my lab, I use Tomcat and in prod IIS.

From: Cisco Developer Community Forums [mailto:cdicuser@developer.cisco.com]
Sent: Tuesday, September 11, 2012 1:21 PM
To: cdicuser@developer.cisco.com
Subject: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All Versions: RE: CVP VoiceXML Tomcat instance as a media server

Bill Webb has created a new message in the forum "CVP - All Versions":

--------------------------------------------------------------
News flash on this thread - Cisco actually added their own Cache Control Class to CVP starting somewhere in CVP 8.6. There's a commented out example in the web.xml!

I am strongly in favor of using Tomcat for the Media Server for exactly the same reason as this customer - why would you want to install IIS (which is not a required component on the CVP Call/VXML Server) just to serve up .wav files?

I'll concede that the IIS Management GUI is a little easier to use than modifying the web.xml file, but there is little you cannot do in terms of setting content expiration differently for different directories, file names - just about anything.

- Bill
--
To respond to this post, please click the following link:

<http://developer.cisco.com/web/cvp/forums/-/message_boards/view_message/6475090>

or simply reply to this email.


Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Bill Webb on 11-09-2012 05:48:17 PM
Ooh, goodie.

 
C'mon - this is what you wanted for a Tuesday afternoon, wasn't it? ;-)

>>>If at some point in the future, CVP finally moves to the Cisco VOS, which I personally think it should, then IIS is out the window anyway

It will and it should. Perhaps they will have Apache on board.

 
I've heard there is concern about moving from Windows for flexibility reasons for custom Classes, JARs, etc. I'd throw IP-IVR up again as an example, since it offers the same ability (fully custom classes, etc.) and seems to be handling the VOS transition ok...! Let's get CVP there!

>>>Is the recommendation then going to be for a separate Windows box running IIS?

I’m in the middle of upgrading a big site and am doing exactly that. Taking CVP off the two servers that are running IIS for the CVP farm and turning them into Media Stores only.

>>> separate Windows box running IIS?

One more point – not “box”.  They would be Virtual Machines on an ESX hypervisor. It could easily be a Linux VM running Apache. Not wedded to the IIS idea but just anti-Tomcat. ;-)

 
A box is a box is a box in my book. I suppose VMs can "disappear" more easily, but distributing the architecture, as "old" CVP once did, seems like a backwards move to me. HUGE disclaimer: I'm also referencing CVP 8.x and up, SIP only, no SSL...so I'm seeing 4 or more physical/virtual CVP Servers as a pretty huge deployment.

>> So you don't have to send in a media URL (http://blahblah) to every application

Default Audio Path = http://blahblah/ and each audio item looks like “foo.wav”. Or use the App Modifiers and set a session variable so Audio Item looks like “{SessionVariable}/foo.wav” if you want different paths for the multiple languages your app has to handle. Many options – although I do like to keep those short.

 
But now your Default Audio Path references either an IP address, or, more likely, a DNS alias/hostname. So now you have to configure that ip host entry on every gateway, or enter it in DNS if you're that brave. Then, even if you do some config across your gateways with the local ip host entry to "load balance", you're always arbitrarily pounding a single media server unless it fails. Sure, you can add ACS or something, but IMHO, why would you complicate your deployment like that? That's like adding in a SIP Proxy! (hehe - poke the bear)
 
I'm a fan of keeping everything local (more on that below - Cisco seems to be moving in that direction also), and in a standard deployment, the gateway gets the IP address of the CVP Server when it connects, so your Studio apps are always using local media. You're all but guaranteed "fault tolerance", because if you've connected to the CVP Server in the first place, you know your media files are going to be available on that same server.

>>>if you're using collocated Call Server/VXML Server

On big farms you may have more call servers than VXML servers. Big farms will probably have 2 dedicated Media Stores. That’s how it was originally with CVP 3.0

 
True enough, but check the CVP 9.0 Release Notes:
 
"In Unified CVP 9.0(1), the Call Server, VXML Server, and Media Server are combined as one installation. Installing the CVP Server will install all three components. In the earlier versions, Call Server, VXML Server, and Media Server could be installed on different machines."
 
Like it or not (I happen to like it a lot!), the convergence of scalability, etc. is leading everything towards consolidation. The fact that "Media Server" is included in this tells me I might be barking up the right tree. Again, disclaimer same as above - I know there are plenty of old deployments out there (I just spoke to a customer last week running 3.1 - I shuddered a little...), but let's face it: We need to talk 8.0 and up, and SIP.

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Bill Webb on 11-09-2012 05:49:59 PM
Ooh, goodie.

C'mon - this is what you wanted for a Tuesday afternoon, wasn't it? ;-)

>>>If at some point in the future, CVP finally moves to the Cisco VOS, which I personally think it should, then IIS is out the window anyway

It will and it should. Perhaps they will have Apache on board.

I've heard there is concern about moving from Windows for flexibility reasons for custom Classes, JARs, etc. I'd throw IP-IVR up again as an example, since it offers the same ability (fully custom classes, etc.) and seems to be handling the VOS transition ok...! Let's get CVP there!

>>>Is the recommendation then going to be for a separate Windows box running IIS?

I’m in the middle of upgrading a big site and am doing exactly that. Taking CVP off the two servers that are running IIS for the CVP farm and turning them into Media Stores only.

>>> separate Windows box running IIS?

One more point – not “box”. They would be Virtual Machines on an ESX hypervisor. It could easily be a Linux VM running Apache. Not wedded to the IIS idea but just anti-Tomcat. ;-)

A box is a box is a box in my book. I suppose VMs can "disappear" more easily, but distributing the architecture, as "old" CVP once did, seems like a backwards move to me. HUGE disclaimer: I'm also referencing CVP 8.x and up, SIP only, no SSL...so I'm seeing 4 or more physical/virtual CVP Servers as a pretty huge deployment.

>> So you don't have to send in a media URL (http://blahblah) to every application

Default Audio Path = http://blahblah/ and each audio item looks like “foo.wav”. Or use the App Modifiers and set a session variable so Audio Item looks like “{SessionVariable}/foo.wav” if you want different paths for the multiple languages your app has to handle. Many options – although I do like to keep those short.

But now your Default Audio Path references either an IP address, or, more likely, a DNS alias/hostname. So now you have to configure that ip host entry on every gateway, or enter it in DNS if you're that brave. Then, even if you do some config across your gateways with the local ip host entry to "load balance", you're always arbitrarily pounding a single media server unless it fails. Sure, you can add ACS or something, but IMHO, why would you complicate your deployment like that? That's like adding in a SIP Proxy! (hehe - poke the bear)
 
I'm a fan of keeping everything local (more on that below - Cisco seems to be moving in that direction also), and in a standard deployment, the gateway gets the IP address of the CVP Server when it connects, so your Studio apps are always using local media. You're all but guaranteed "fault tolerance", because if you've connected to the CVP Server in the first place, you know your media files are going to be available on that same server.

>>>if you're using collocated Call Server/VXML Server

On big farms you may have more call servers than VXML servers. Big farms will probably have 2 dedicated Media Stores. That’s how it was originally with CVP 3.0

True enough, but check the CVP 9.0 Release Notes:
 
"In Unified CVP 9.0(1), the Call Server, VXML Server, and Media Server are combined as one installation. Installing the CVP Server will install all three components. In the earlier versions, Call Server, VXML Server, and Media Server could be installed on different machines."
 
Like it or not (I happen to like it a lot!), the convergence of scalability, etc. is leading everything towards consolidation. The fact that "Media Server" is included in this tells me I might be barking up the right tree. Again, disclaimer same as above - I know there are plenty of old deployments out there (I just spoke to a customer last week running 3.1 - I shuddered a little...), but let's face it: We need to talk 8.0 and up, and SIP.

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Bill Webb on 11-09-2012 05:56:33 PM
Ooh, goodie.

C'mon - this is what you wanted for a Tuesday afternoon, wasn't it? ;-)

>>>If at some point in the future, CVP finally moves to the Cisco VOS, which I personally think it should, then IIS is out the window anyway

It will and it should. Perhaps they will have Apache on board.

I've heard there is concern about moving from Windows for flexibility reasons for custom Classes, JARs, etc. I'd throw IP-IVR up again as an example, since it offers the same ability (fully custom classes, etc.) and seems to be handling the VOS transition ok...! Let's get CVP there!

>>>Is the recommendation then going to be for a separate Windows box running IIS?

I’m in the middle of upgrading a big site and am doing exactly that. Taking CVP off the two servers that are running IIS for the CVP farm and turning them into Media Stores only.

>>> separate Windows box running IIS?

One more point – not “box”. They would be Virtual Machines on an ESX hypervisor. It could easily be a Linux VM running Apache. Not wedded to the IIS idea but just anti-Tomcat. ;-)

A box is a box is a box in my book. I suppose VMs can "disappear" more easily, but distributing the architecture, as "old" CVP once did, seems like a backwards move to me. HUGE disclaimer: I'm also referencing CVP 8.x and up, SIP only, no SSL...so I'm seeing 4 or more physical/virtual CVP Servers as a pretty huge deployment.

>> So you don't have to send in a media URL (http://blahblah) to every application

Default Audio Path = http://blahblah/ and each audio item looks like “foo.wav”. Or use the App Modifiers and set a session variable so Audio Item looks like “{SessionVariable}/foo.wav” if you want different paths for the multiple languages your app has to handle. Many options – although I do like to keep those short.

But now your Default Audio Path references either an IP address, or, more likely, a DNS alias/hostname. So now you have to configure that ip host entry on every gateway, or enter it in DNS if you're that brave. Then, even if you do some config across your gateways with the local ip host entry to "load balance", you're always arbitrarily pounding a single media server unless it fails. Sure, you can add ACS or something, but IMHO, why would you complicate your deployment like that? That's like adding in a SIP Proxy! (hehe - poke the bear)
 
I'm a fan of keeping everything local (more on that below - Cisco seems to be moving in that direction also), and in a standard deployment, the gateway gets the IP address of the CVP Server when it connects, so your Studio apps are always using local media. You're all but guaranteed "fault tolerance", because if you've connected to the CVP Server in the first place, you know your media files are going to be available on that same server.

>>>if you're using collocated Call Server/VXML Server

On big farms you may have more call servers than VXML servers. Big farms will probably have 2 dedicated Media Stores. That’s how it was originally with CVP 3.0

True enough, but check the CVP 9.0 Release Notes:
 
"In Unified CVP 9.0(1), the Call Server, VXML Server, and Media Server are combined as one installation. Installing the CVP Server will install all three components. In the earlier versions, Call Server, VXML Server, and Media Server could be installed on different machines."
 
Like it or not (I happen to like it a lot!), the convergence of scalability, etc. is leading everything towards consolidation. The fact that "Media Server" is included in this tells me I might be barking up the right tree. Again, disclaimer same as above - I know there are plenty of old deployments out there (I just spoke to a customer last week running 3.1 - I shuddered a little...), but let's face it: We need to talk 8.0 and up, and SIP.

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: GEOFFREY THOMPSON on 11-09-2012 03:19:11 PM
>>>Cisco actually added their own Cache Control Class to CVP starting somewhere in CVP 8.6. There's a commented out example in the web.xml!

Thanks for the update. How comprehensive is it?

Does it allow multiple folders (directories) to have different cache lifetimes?

>>>I am strongly in favor of using Tomcat for the Media Server for exactly the same reason as this customer - why would you want to install IIS (which is not a required component on the CVP Call/VXML Server) just to serve up .wav files?

We have disagreed over this before. I still disagree.

Regards,
Geoff

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: GEOFFREY THOMPSON on 11-09-2012 04:47:11 PM
Ooh, goodie.

>>>If at some point in the future, CVP finally moves to the Cisco VOS, which I personally think it should, then IIS is out the window anyway

It will and it should. Perhaps they will have Apache on board.

>>>Is the recommendation then going to be for a separate Windows box running IIS?

I’m in the middle of upgrading a big site and am doing exactly that. Taking CVP off the two servers that are running IIS for the CVP farm and turning them into Media Stores only.

>>> separate Windows box running IIS?

One more point – not “box”.  They would be Virtual Machines on an ESX hypervisor. It could easily be a Linux VM running Apache. Not wedded to the IIS idea but just anti-Tomcat. ;-)

>>>doesn't IP-IVR run on VOS and serve up all its prompts locally from a Tomcat installation?

Media files are played by the gateway though in CVP – cannot draw the comparison, in my opinion.

>> So you don't have to send in a media URL (http://blahblah) to every application

Default Audio Path = http://blahblah/ and each audio item looks like “foo.wav”. Or use the App Modifiers and set a session variable so Audio Item looks like “{SessionVariable}/foo.wav” if you want different paths for the multiple languages your app has to handle. Many options – although I do like to keep those short.

>>>if you're using collocated Call Server/VXML Server

On big farms you may have more call servers than VXML servers. Big farms will probably have 2 dedicated Media Stores. That’s how it was originally with CVP 3.0

Regards,
Geoff

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: GEOFFREY THOMPSON on 12-09-2012 11:20:43 AM
I do tend to do bigger deployments. One customer I am upgrading at the moment to CVP 8.5 and SIP (from 7.0(2) and H.323) has 8 CVP/VXML servers. Another customer has 12 CVP servers.

>> the gateway gets the IP address of the CVP Server when it connects, so your Studio apps are always using local media.

I certainly like the idea that the Studio apps run on the same VXML server as the Call Server (when all are combo boxes) and do use this. But this does not need to be extended to “local media” and hence having media files dished up by Apache Tomcat.

>>But now your Default Audio Path references either an IP address, or, more likely, a DNS alias/hostname.

No. A keyword resolved by the gateway ip host table. Almost all of my deployments use load balancers for Media. So the keyword “media” is resolved on the gateway to a VIP. It’s not “hammering” a web server for media files.

>> Then, even if you do some config across your gateways with the local ip host entry to "load balance", you're always arbitrarily pounding a single media server unless it fails.

Without a load balancer that is true. But you can (and should) interchange “media” and “media-backup” on gateways around the network. In a branch office design with no load balancers, almost always you will have 2 gateways at a site (for redundancy) so swap the order of “media” and “media-backup” on the gateways.

>>>>"In Unified CVP 9.0(1), the Call Server, VXML Server, and Media Server are combined as one installation. Installing the CVP Server will install all three components. In the earlier versions, Call Server, VXML Server, and Media Server could be installed on different machines."

That’s misleading. Cisco does not install a Media Server. It just drops some files somewhere.

The problem with audio files being under control of Apache Tomcat in big deployments is you have to replicate the wave files on all VXML servers. Manageable with 4 – I suppose – but not with 8. The other problem is the http cache on the gateway. If media can come from a whole bunch of different addresses you will have an http client cache with many entries for the same WAV file. No biggie, but ugly.

What I think we see, Bill, is a difference between a small design – say 2 combo CVPs – and bigger designs – say 8+ CVPs.

Regards,
Geoff

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Bill Webb on 12-09-2012 12:34:34 PM
Agreed - the preference is certainly towards "smaller" deployments, at least in terms of # of CVP Servers. The reason I think it is becoming more relevant is that even "larger" deployments of CVP should be smaller in terms of Call Servers with later releases.

Take your 8 Server 7.0 and H.323 deployment - the capacity on each CVP was only 500 on physical hardware, so up to 2000 fully redundant sessions was the max for that deployment. With CVP 8.5 and SIP, even on UCS, the capacity is 900 per server VM instance, even with VXML - an 80% increase in capacity. Even if you want some serious headroom, you're still in need of no more than 6 CVP VMs on UCS hardware. On physical servers, the number goes up to 1200 per server, which means half as many servers (4) would give you the same capacity with room to grow...but I would venture to guess most customers are going to jump on the VM/UCS bandwagon.

My point is that as capacities have increased and likely will continue to increase, large deployments in terms of number of CVP Server instances will decrease in size and complexity. Are there going to be customers out there with a need for 12,000 or more fully redundant CVP ports/sessions? Sure, but I would take the leap to say that those customers will be the exception, and not the rule. I'm open to be proven wrong...! ;-)

- Bill

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: GEOFFREY THOMPSON on 12-09-2012 01:18:43 PM
You make a good point about the increasing capacity of CVP servers over time.

The 1200 ports capacity (900 port capacity on a VM) is misleading though.

I was doing the estimates for one of my customers who is adding a new contact centre for internal use (3389 agents).

If you run a high BHCA (in this case, 37,422) through the Cisco sizing tool for a VM deployment of CVP (capacity 900 ports) with SIP, using microapps, it spits out that you need 10 Call Servers.

If all agents were on the phone and half as many calls were in queue (a typical rule of thumb) we should need 3389 + 1965 = 5083 Call Server ports, so 6 Call Servers. Yet the tool says you need 10.

Regards,
Geoff

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Bill Webb on 12-09-2012 03:12:47 PM
That does seem high, but the "base" numbers for UCS are 900 simultaneous sessions with a call arrival rate of 10cps, which your example BHCA goes over slightly. That, coupled with some level of redundancy must be the reason for 10 servers. Still does seem high, but I would guess the tool is conservative!!

Looking at the new PCCE, there is some throttling going on there, too, but I think that's also considering a worst-case scenario in terms of overall platform (UCS) load as well as features (Agent Greeting enabled, EIM/WIM, etc.). They list 30K BHCA, so slightly under the 10cps, with every agent active. The 4 CVPs in that solution are intended for a normal load of up to 450 sessions per sever, but supporting up to 900 each in case of failover (so 1800 fully redundant).

But I digress - you hate Tomcat, I hate IIS, let's call the whole thing off! (that's a lame song reference, not an angry statement)!!  ;-)

Always great to have your perspective, Geoff!

- Bill

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: GEOFFREY THOMPSON on 12-09-2012 03:57:43 PM
But I digress - you hate Tomcat, I hate IIS, let's call the whole thing off! (that's a lame song reference, not an angry statement)!! ;-)

>>> It’s a great song. DO you like jazz?

Regards,
Geoff

Subject: RE: New Message from Bill Webb in Customer Voice Portal (CVP) - CVP - All V
Replied by: Matthew Reiter on 12-09-2012 04:52:20 PM

>>>>"In Unified CVP 9.0(1), the Call Server, VXML Server, and Media Server are combined as one installation. Installing the CVP Server will install all three components. In the earlier versions, Call Server, VXML Server, and Media Server could be installed on different machines."

That’s misleading. Cisco does not install a Media Server. It just drops some files somewhere.

Perhaps the wording isn't clear enough around media servers, but the CVP 9.0(1) installer automatically installs IIS on CVP Server components if that has not already been done. However, there's nothing preventing you from immediately uninstalling it if you hate IIS. Cisco recommends using IIS over Tomcat to server media files for the following reasons (that I know of):
1) Tomcat is not optimized for serving static files (such as media files), whereas IIS is, so using IIS should give you better performance.
2) The files in Tomcat are managed by CVP. If you upgrade or install an ES, any custom changes may be wiped out. Avoiding this requires backing up the custom changes and having a plan to restore them afterwards.

Subject: RE: CVP VoiceXML Tomcat instance as a media server
Replied by: Bill Webb on 12-09-2012 11:11:18 PM
Hmm - you didn't address #1, Geoff! ;-)

I'll definitely go along with #2, but I gotta poke the bear one last time (maybe) on the first point around performance:

http://www.tomcatexpert.com/blog/2010/03/24/myth-or-truth-one-should-always-use-apache-httpd-front-apache-tomcat-improve-perform

This is specific to Apache httpd versus Tomcat for static content, but there are similar posts comparing IIS to Apache and/or Tomcat...

I think the whole "performance" argument is a little misleading, honestly, considering the narrowed view of the use of Tomcat in CVP with VXML Server and CVP Studio apps.

I make that distinction because who would ever want to use microapps unless you absolutely had to??  ;-)

- Bill (IIS and microapp Hater-boy)

Subject: RE: New Message from Matthew Reiter in Customer Voice Portal (CVP) - CVP -
Replied by: GEOFFREY THOMPSON on 12-09-2012 05:52:16 PM
>>>>Perhaps the wording isn't clear enough around media servers, but the CVP 9.0(1) installer automatically installs IIS on CVP Server components if that has not already been done.

My mistake. Thanks for the clarification – although it’s a pretty trivial bit of work by Cisco. Why would they bother?  If it had given the option to automatically install Apache I would have been impressed.

>>>>2) The files in Tomcat are managed by CVP. If you upgrade or install an ES, any custom changes may be wiped out. Avoiding this requires backing up the custom changes and having a plan to restore them afterwards.

Point 2 is correct and meaningful.

Regards,
Geoff
CreatePlease to create content
Content for Community-Ad
FusionCharts will render here