What is IVR customisation ?
Normally, an IVR application is designed and developed as per requirement of the customer by IVR companies. But they have ready-made modules tested and readily available for quick development. Normally, the modules like, telephone interface, ring detection, caller ID detection, database connectivity etc. are always readily available. Also many people use RAD tools for IVR customization where they simply implement call flow required by the customer. So IVR customising can be described as implementing call flow of the IVR application as desired by customer using existing IVR related software modules.
In fact, after RAD (Rapid Application Development) tools have been introduced, IVR development have become just IVR customisation. Many IVR functionality, modules are available in RAD tools ready-to-be-used. It is not easy to develop an IVR application from scratch, as it involves auxiliary knowledge and experience about telecommunication switches, telecommunication standards and protocols, speech recognition, TTS.
While RAD tools are easy and quickest way to developed customised IVR application, but it may not suitable for IVR customisation which needs to interact with existing business processes or existing software which generate various data to be provided by the IVR. For example weather update, complaint ticket generation, complaint status update etc. Apart from these kind of complex and very sophisticated IVR systems, RAD tools are excellent development or customisation tools for IVR solutions.
One important aspect which many people overlook is writing script of voice prompts and recording of voice prompts professionally. IVR systems are to be deployed to be used by normal people for availing services, solutions from it. IVR system interacts with its user ( caller to the IVR) through voice prompts. Any mistake in voice prompts may render the IVR useless. For example, if the voice prompts announces, “to know your complaint status, press 1, or press any key to end the call.” Now imagine if IVR is coded to recognize 1 for disconnecting the call and any other key for asking further information to retrieve complaint status!
So, while customising IVR application, one must write script for voice prompts and record them with professional voice artists. Without this, IVR system may have the best of the hardware and most well coded software, still IVR system will not be useful to its intended users.
While customising an IVR application, one should think about future enhancements. Many times, one finds out that existing codes can not be used for enhanced services, features and everything needs to be done from scratch. This not only delays the process of upgrading IVR systems, also it become costlier.
While integrating with third party application or software, direct interaction with their database should be avoided. If you do so, any changes made by them would require you to make changes in your code too. So I think HTTP URL is a very good approach where you send few parameters for exchanging data from third party application. This will ensure that your IVR code need not be changed even if third party database is changed.