FAQ's - Frequently Asked Questions
FAQ's
Just click on one of the sections below to find the answer.
If you still can’t find an answer to your question, please drop us an email at enquire@epicode.in.
VoiceAPI
IraVoice
What is VoiceAPI?
VoiceAPI is a set of tools that lets you add calling(make call/receive call) capabilities to your applications using an Application Programming Interface(API). Our telephony layer takes care of handling all the telephony functions while you can focus on your area of expertise.
What are the common use cases of using VoiceAPIs?
Our products are being used in various industry verticals such as Lead generation, Debt collection, Voicebots, Consent collection,Election Campaigns,Outbound Campaign Managers.
What are the benefits of using VoiceAPIs?
Businesses can add value to their existing customer engagement channels by adding voice. This gives a powerful feature to those who are running legacy softwares or do not want to get into the telephony domain and leverage our years of domain knowledge to improve their customer experience.
Can these APIs be used to create omnichannel solutions?
Yes, along with VoiceAPIs our CPaaS platform provides APIs for WhatsApp, SMS etc which can be consumed by the enterprise applications to create an omnichannel solution.
Do you need telephony knowledge for using these VoieAPIs?
No, our solution takes care of handling all SIP trunking, gateway management, any troubleshooting required at the telephony end. Your application can use the APIs published to get required features added.
Do you support media streaming?
Yes, the media of the established calls can be sent over the websocket to the required application using a secure protocol.
Any concurrency limitations?
IraVoice, when hosted on an 8-core, 8GB RAM server, can handle up to 800 simultaneous
voicebot sessions with recording enabled, and up to 1000 simultaneous sessisons without
recording.
Besides CPU resource constraints, the call capacity also depends on the SIP trunk configuration,
including the number of channels allocated and the CPS (Calls Per Second) limit defined by the
telecom provider.
Do you support WhatsApp Business Calling API?
Yes, IraVoice supports supports WhatsApp Business Calling.
Where or how can we adjust dial limits?
Dial limit can be managed via the IraVoice Trunk Manager, either through the HTTP API or
directly in the Trunk Manager interface.
Is there support for 16kHz audio streaming?
IraVoice supports streaming in both 8khz and 16khz.
How are inbound calls configured on your platform?
Inbound calls in IraVoice are configured through dialplans within the setup. These dial plans
are typically implemented by the Epicode team based on your inbound routing requirements.
Are there any parameters available for VAD configuration : Speech threshold, silence threshold?
Parameters can be set within the call_params as follows:
• VAD Mode (“enable_vad”: true)
– Audio is delivered as complete utterances whenever the user finishes speaking.
• Non-VAD Mode (“enable_vad”: false)
– Audio is streamed in chunks.
– chunk_size can be configured under call_params.
– Default: 3200 bytes (200 ms of audio).
• Silence Threshold (“silence_threshold”)
– Audio level threshold to consider a segment as silence.
– Can range from 1 to 20, with a default of 5.
– Silence Duration: Calculated as threshold value × 250 ms to determine when a segment is considered silent.
• Speech Threshold (“speech_threshold”)
– Speech level threshold to consider a segment as speech
– Defines the minimum amplitude level required to classify a segment as speech.
– Works best when set between 500 and 600. Default: 800
How can I set custom SIP headers for inbound/outbound calls?
Custom SIP headers for IraVoice outbound calls can be configured using the channel_vars
parameter in the make_call API: “channel_vars”: { “<sip-header-name>”: “value string” }
For Inbound Calls, custom SIP headers can be defined within the IraVoice dialplan configuration.
What are the possible causes of latency and Voice distortion in IraVoice and how can they be minimized or avoided?
Possible causes of latency and voice distortion in IraVoice include:
• Network issues: High jitter, packet loss, or unstable bandwidth between SIP trunks, media
servers, and VoiceAI endpoints.
• Server resource constraints: CPU or memory saturation on the host machine.
• Inconsistent streaming configurations: Mismatched sample rates or chunk sizes
between endpoints leading to distorted audio.
• Media routing complexity: Long network paths or multiple proxy hops introducing
transmission delays.
• VoiceBot response time: Slow response from AI models or APIs used in VoiceBots adding
to overall call latency.
To minimize or avoid these issues:
• Use dedicated bandwidth and maintain network jitter below 30 ms.
• Allocate adequate CPU and memory resources based on expected concurrency.
• Ensure consistent audio streaming configurations across all endpoints.
• Optimize VoiceBot applications to minimize response delays between streaming chunks.
What storage options are available to upload the recordings ?
We support recording uploads to your AWS s3 buckets, Azure Cloud Storage, Google cloud
storage, or directly to your webhook endpoint.
How are the recordings shared with us? Do we receive downloadable links for each call in a consolidated format (e.g., Excel or API)?
To upload call recordings to your cloud, we will require the necessary credentials for your cloud
storage. Recordings will be uploaded as calls are completed.
If you prefer to use non-cloud storage, please provide a server with adequate storage capacity.
Epicode will upload the recordings to this server and share a secure HTTP endpoint for
download access.
If we provide our own storage bucket, what naming convention will be used for the recording files (e.g., call_uid or additional metadata)?
If you prefer to use your own cloud storage bucket, You can share the necessary credentials to
us to upload the recordings. The recording files will follow a standardized naming convention
that includes the call UUID.
Example: e88e852e-da28-4e1f-bc97-fc00469faebf.mp3
Answering Machine Detection
IraCPA
What are the common use cases for using AMD?
The most common one is in improving the agent connectivity rate in contact centres and improving their efficiency. For outbound call campaigns, call centres can use AMD to detect if a call is answered by a human or an answering machine and only those calls that are answered by humans are transferred to agents thereby saving the agent’s time, resulting in significant cost savings.
How do we use your AMD / CPA module in our applications?
You can integrate your application with our IraCPA module using APIs and websockets integration methods to enable AMD.
Is IraCPA language dependent?
No. Speech-pattern-based detection works consistently across languages and countries.
However, if beep-tone detection is required, different frequencies may need to be configured per country.
How does IraCPA differ from its competitors?
IraCPA uses a proprietary stochastic algorithm and completes detection in under two seconds, meeting telecom regulations such as TCPA compliance in the USA.
What is IraCPA’s accuracy rate?
IraCPA has a proven accuracy rate of over 92% and is used by partners across industries including banking, contact centers, insurance, healthcare, and e-commerce.
It identifies whether a call is answered by a human or voicemail in under two seconds.
General
Questions
What deployment models are supported?
Our products support both on-premise and cloud-based deployments with flexible licensing options.
What encryption mechanisms are supported?
All products can be accessed via SSL using RSA encryption and PKI.
Voice solutions support encrypted signaling (SIPS over SSL/TLS with certificates) and encrypted media using SRTP.
How do you integrate with outbound campaign managers?
We provide telephony integration through a rich set of APIs using HTTP POST, REST, and WebSockets.
Do your products support deployment on AWS, Azure, or similar platforms?
Yes. All products can be deployed on major cloud platforms with support for auto-scaling and geographic redundancy.
Do you support a SaaS model?
Yes, depending on the business case. Please contact us to discuss further.
What operating systems are supported?
All software can be installed on servers running Linux (Debian/Ubuntu/RHEL) or Windows (Windows Server 2018 or newer).
For a given DID number, how many simultaneous inbound and outbound calls can be handled?
Simultaneous call capacity is not limited by the DID number but by the number of channels
configured on your SIP trunk. 1000 channels = 1000 simultaneous calls. A single DID number
can be used to make multiple simultaneous calls as long as it does not cross the number of
channels allocated.
Will I be able to configure the number of channels based on our use case?
Yes, Epicode team will recommend the ideal channel and CPS (Calls Per Second) capacity based
on your specific use case and expected call traffic.
If at any point call traffic surpasses the anticipated volume, you can scale on demand by
increasing SIP trunk limits or provisioning additional CPU resources.
Do we have a dedicated SIP trunk?
Yes, You will have a dedicated SIP trunk, generally hosted in the same data center as your
deployment for optimal performance and minimal latency.
How many concurrent calls can we support during the POC phase?
You can make up to 5 concurrent calls in the POC Sandbox setup. If you need additional
capacity, please reach out to Epicode Support.
Let’s Build Together
Whether you’re migrating from a limited platform, launching voice bots at scale, or building your own dialer stack – EPICODE gives you the flexibility, control, and support to do it right.
Reach out now to plan your integration, optimize your infra, and bring your voice automation strategy to life.