04-04-2010 11:48 PM - edited 03-14-2019 05:31 AM
Hi,
Please let me know that whether VXML Port Licenses are required for CVP Database Lookup.
I am using CVP just for prompt playing in my scenario,
Appreciate your response.
Thanks,
Manish
Solved! Go to Solution.
04-05-2010 11:56 AM
Hi,
To make database integration with your IVR, you have different alternatives :
1- Use the 'DB Lookup' node ICM scripting node for simple SELECT transactions on SQL Server databases
2- Use an 'Application Gateway' component with ICM scripting for more complex database operations on different type of databases. Application Gateway is a software component developed by Cisco partners to make ICM scripts interact with different databases.
3- Use VXML scripts. VXML scripts can connect and interact with any kind of databse using the JNDI protocol. You will need a VXML Studio license (to develop the VXML applications) and a CVP Server for VXML Servers (you need to deploy VXML servers on which you will deploy your VXML applications)
Hope this will help.
Good summary. If I can comment ....
1. DBLookup is so restrictive it is not typically useful for looking up ANIs in a customer DB. It is useful for other things to do with routing - say a DNIS lookup to control some aspect of routing. Look up the restrictions on DBLookup if you don't believe me.
2. This may be an expensive proposition. Unless you have in-house experience with something like a CTI all events bridge and the ability to code to the required heartbeat interface, you will find building an app gateway tricky. You also need to be in the Cisco Developer's Program ($25k). I have colleagues write app gateways in C++ and VB.NET, so it's possible - just not trvial. For a huge load, this may be the only suitable method, however.
3. This is the way to go. JNDI is NOT a protocol - it is a naming standard. The protocol that the client (your application running under Tomcat) uses to talk to the server (the database out there) is defined by the library - the JAR file - you hook into it in VXMLServer\lib\endorsed. Through the JNDI specification in Tomcat\conf\server.xml you indicate the host, user name, password and client library that the system needs. Tomcat uses connection pooling to manipulate a pool of connections (threads) giving a more efficient database query system.
You can then add an additional sepcification through context.xml that allows you to use the JNDI spec in your VXML Database Element.
If you like coding in Java, you can write a Custom Action Element to use the JNDI (and therefore connection pooling), making your query and manipulating the result. This is the way I do it because I'm a competent programmer. Most will use the Database Element.
Finally, you could write a Java Custom Action Element that does not use the JNDI at all, but given the server, user, password and database through the settings, opens a connection, runs the query, and closes the connection.
Regards,
Geoff
04-05-2010 05:03 AM
You don't need them for the database lookup piece, but you need them for the "just for prompt playing" part.
david
04-05-2010 05:21 AM
Hi David,
Is it really possible to do this without VXML license? Can u explain little more. Because as far as I know that if u r using CVP VXML scripts to collect and play data from any remote database you must have VXML license.
04-05-2010 05:45 AM
I'm not 100% sure what you're asking, let me back up.
1. For every CVP server (call server, reporting, vxml server), you will need a server license.
2. For every queue (just playing prompts), you will need a CVP license and redundant port these are CVP call server ports/licenses. This is what I'm talking about in my earlier post.
3. Now, for any interaction with the customer e.g. self service you will need VXML licenses.
4. If developing VXML applications with CVP Call Studio you will need a license for that too.
david
04-05-2010 05:58 AM
Hi David,
Thanks for the reply. I was talking about self service. So my understanding was correct.
04-05-2010 07:19 AM
Hi,
To make database integration with your IVR, you have different alternatives :
1- Use the 'DB Lookup' node ICM scripting node for simple SELECT transactions on SQL Server databases
2- Use an 'Application Gateway' component with ICM scripting for more complex database operations on different type of databases. Application Gateway is a software component developed by Cisco partners to make ICM scripts interact with different databases.
3- Use VXML scripts. VXML scripts can connect and interact with any kind of databse using the JNDI protocol. You will need a VXML Studio license (to develop the VXML applications) and a CVP Server for VXML Servers (you need to deploy VXML servers on which you will deploy your VXML applications)
Hope this will help.
04-05-2010 11:56 AM
Hi,
To make database integration with your IVR, you have different alternatives :
1- Use the 'DB Lookup' node ICM scripting node for simple SELECT transactions on SQL Server databases
2- Use an 'Application Gateway' component with ICM scripting for more complex database operations on different type of databases. Application Gateway is a software component developed by Cisco partners to make ICM scripts interact with different databases.
3- Use VXML scripts. VXML scripts can connect and interact with any kind of databse using the JNDI protocol. You will need a VXML Studio license (to develop the VXML applications) and a CVP Server for VXML Servers (you need to deploy VXML servers on which you will deploy your VXML applications)
Hope this will help.
Good summary. If I can comment ....
1. DBLookup is so restrictive it is not typically useful for looking up ANIs in a customer DB. It is useful for other things to do with routing - say a DNIS lookup to control some aspect of routing. Look up the restrictions on DBLookup if you don't believe me.
2. This may be an expensive proposition. Unless you have in-house experience with something like a CTI all events bridge and the ability to code to the required heartbeat interface, you will find building an app gateway tricky. You also need to be in the Cisco Developer's Program ($25k). I have colleagues write app gateways in C++ and VB.NET, so it's possible - just not trvial. For a huge load, this may be the only suitable method, however.
3. This is the way to go. JNDI is NOT a protocol - it is a naming standard. The protocol that the client (your application running under Tomcat) uses to talk to the server (the database out there) is defined by the library - the JAR file - you hook into it in VXMLServer\lib\endorsed. Through the JNDI specification in Tomcat\conf\server.xml you indicate the host, user name, password and client library that the system needs. Tomcat uses connection pooling to manipulate a pool of connections (threads) giving a more efficient database query system.
You can then add an additional sepcification through context.xml that allows you to use the JNDI spec in your VXML Database Element.
If you like coding in Java, you can write a Custom Action Element to use the JNDI (and therefore connection pooling), making your query and manipulating the result. This is the way I do it because I'm a competent programmer. Most will use the Database Element.
Finally, you could write a Java Custom Action Element that does not use the JNDI at all, but given the server, user, password and database through the settings, opens a connection, runs the query, and closes the connection.
Regards,
Geoff
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide