copyright: years: 2017, 2023 lastupdated: "2023-01-03"
Getting started with Voice Gateway
IBM® Voice Gateway is deployed as part of an overall architecture that depends on the following factors:
-
Type of assistance: Are you implementing a self-service agent or an agent assistant? Learn more about these options and their architectures in About IBM Voice Gateway.
-
Deployment location: Are you deploying Voice Gateway on premises, in a private cloud, or in a public cloud? For each implementation, you can deploy Voice Gateway in Docker Engine, in IBM Cloud Pak for Data, to a Kubernetes cluster, or in IBM® Cloud Kubernetes Service.
A quick note about licensing
The Voice Gateway images on Docker Hub come with licenses for development and limited production use. To run the voice gateway in a production environment, follow the steps in the IBM Voice Gateway quick start guide, which you can download from Passport Advantage Online.
The following guides help you quickly get started with a basic configuration for your chosen implementation and deployment location.
Set up a self-service agent
Self-service agents simulate human interaction by providing an automated way to communicate with customers over the phone using natural language. To set up a self-service agent, just follow these steps.
-
Deploy IBM Voice Gateway to your chosen environment.
-
Test your self-service agent, either by using a SIP phone or via a voice call.
-
Test with a SIP phone: You can call Voice Gateway by using a SIP phone such as Linphone. When you configure the SIP client, keep the following considerations in mind.
-
If you run the SIP client on the same machine as Voice Gateway, be sure to configure the SIP client to use a port other than 5060 (e.g. 5062) to avoid port conflicts.
-
Configure the SIP client to listen on an IP address that Voice Gateway can route to. For example, Linphone might be configured by default to listen on a loopback address, and you'll need to change this setting.
-
Disable IPv6 in the SIP client.
To test Voice Gateway, call the following SIP URI from your SIP phone:
sip:watson@<IP address of Voice Gateway>:5060
Tip: To determine the IP address of your deployment:
-
Docker: The IP address is typically the IP of the machine where Docker is running. For Docker Machine, run the
docker-machine ip
command. -
Kubernetes in IBM Cloud Kubernetes Service: Run the
ibmcloud ks workers myClusterName
command to find the public IP. -
Test with a voice call: To test with a voice call, set up a simple SIP trunk, which can forward calls to the voice gateway. When you configure your SIP trunk, you just need to identify the IP address of the Docker Engine that is hosting the voice gateway, and then configure your SIP trunk to associate that IP address with a provisioned telephone number.
For example, you can set up a Twilio® SIP trunk, which is a popular choice for voice gateway deployments on IBM Containers. It can also be used to forward SIP calls to your own Docker Engine deployment.
-
Set up an agent assistant
Agent assistants transcribe audio from an active phone call in real time so that you monitor, log, or further analyze call transcriptions. To transcribe media from the call, you can choose from either of the following architectures:
- Route the call to a multipoint control unit (MCU) and conference Voice Gateway into the call
- Route the call through a session border controller (SBC) that supports the ability to fork media out to Voice Gateway over the SIPREC protocol
To set up an agent assistant, just follow these steps.
-
Set up either the multipoint control unit (MCU) or the session border controller (SBC).
- Multipoint control units: Configure your MCU to call out to Voice Gateway to conference it into the call. Voice Gateway can be pulled into a call just like any other SIP endpoint, but Voice Gateway can't call into a multiway call. For detailed configuration information, see the documentation for your MCU manufacturer.
- Session border controller: Configure your SBC to open a SIPREC session with Voice Gateway for all calls that need to be transcribed in real time. Voice Gateway has been tested with a Sonus session border controller.
Configuring the SIPREC protocol is specific to each SBC manufacturer, so see the documentation for your SBC for configuration information.
-
Set up a REST server such as Splunk HTTP Event Collector (HEC) to store reporting events for real-time transcription monitoring and analysis.
-
Deploy IBM Voice Gateway to your chosen environment.
- Deploy Voice Gateway on Docker Engine
- Deploy Voice Gateway on IBM Cloud Pak for Data
- Deploy Voice Gateway to Kubernetes in IBM Cloud
- Deploy Voice Gateway to a Kubernetes cluster
Only the Watson Speech to Text service is needed for agent assistants. When you configure Voice Gateway, be sure to configure your REST server and enable transcription event reporting.
Important: To accurately transcribe phone calls, you'll need to train your Speech to Text service with a custom language model for the specific domain, such as healthcare or insurance.
-
Test the agent assistant.
To test the agent assistant, dial the number that is set up at the MCU or SBC. Someone must be available to answer the call so that Voice Gateway can begin to transcribe any utterances.