Voximplant. Blog

Blind transfer support for SIP phones

A lot of traditional telephony services rely on this function. It lets callee transfer a call to another person by pressing special transfer button and entering another person’s number (usually extension number). It’s called blind transfer because the person who transfers the call won’t talk with the person to whom he transfers it.

Blind transfer
The following scheme describes the process in Voximplant terms:

Step-by-step call center tutorial part 8

Call lists, PDS and SIP

There are two ways how Voximplant can handle an outgoing call. First, the outgoing call can be initiated from JavaScript session created from the incoming call. That approach is used if you want to connect two or more people, forward call into a call center or implement any other “connect two persons” logic where and outgoing call is initiated as a response to the incoming call. Second, you can initiate outgoing call via the HTTP API. That approach is used if you want to initiate a call from your service or call multiple users. You can implement any call logic via HTTP API, but you also need to setup your own backend that will initiate calls, maintain the suitable number of simultaneous calls etc. For fast “out-of-the-box” experience we have a built-in “Call list” functionality that allows calling thousands of users with a few commands and without any backend of your own.

Tagged in

Step-by-step call center tutorial part 7

Operator status and temporary ban

While Voximplant ACD framework provides only essential call center backbone, it also has some out-of-the-box features for most popular use cases. One of such features is “Operator Status” that can be set to “Ready” if operator is available to handle a call, or any one of non-“Ready” if calls should not be forwarded to that operator.

Tagged in

Step-by-step call center tutorial part 6

IVR and operator skills

In a simple scenario all incoming user calls are evenly distributed among all available operators. But as a number of users grows, it became more convenient to direct specific requests to specific operators who can handle them better. This raises a number of questions: how to figure out user question and how to define which operator can answer that questions.

Tagged in

High quality Speech Recognition is now available

RecognitionHi everyone! We’ve been busy working on new cool features for you, many developers asked us about high quality speech recognition for both audio call records transcription and real-time recognition scenarios. We are happy to announce that this functionality is now available for all our developers.

Step-by-step call center tutorial part 5

Waiting in a queue

Having a full control over an incoming and outgoing calls allows to implement any business needs. By default, a user will hear nothing while waiting in the queue, since we have not instructed VoxEngine to produce any audio. Good practice is to inform the user about his or her queue position and play some music to indicate the call in progress.

Tagged in

Step-by-step call center tutorial part 4

Handling a call disconnect

Since our cloud has separate “incoming” and “outgoing” call logs, we have full control over call disconnects. If a calling user or an operator disconnects, you can make decisions what to do next: play a notification message, call back, disconnect the remaining participants and so on. If the incoming or outgoing call is disconnected, the corresponding call object receives Disconnected event. Please note that an outgoing call can fail to connect (ex user not answered), in such case Failed event will be received instead of Disconnected.

Tagged in

Voximplant Web SDK v4 beta is now available with Edge/ORTC support

WebSDKv4We have released new version of Web SDK, it has been fully rewritten. New version will help us to accelerate the development process and includes a lot of new features and improvements. Key features of Voximplant’s Web SDK 4.0 include:

  • Support for audio calls in Microsoft Edge. With Microsoft recently updating the browser’s web and audio support, Voximplant is one of the first companies to make its platform compatible with Edge. With Web SDK 4.0, web apps are empowered to handle incoming and outgoing voice calls from within the Edge web browser. Video calls in Edge will be functional as soon as VP9 or h.264 codec support is added to the browser.
  • Video can be enabled during an existing audio call. Now developers can create web apps that offer a Skype-like “enable video” option during active audio calls. Video can be enabled or disabled at any time during the call.
  • Both local and remote audio and video streams can be modified by applying filters. Developers can now modify video and audio streams in realtime. Possible applications of this feature include using video and audio filters to add watermarks, hide or alter faces, mask voices, etc.
  • h.264 video codec can be set as “high priority”. The “h.264” video codec is known for its valuable speed in modern hardware, especially in mobile devices. Developers can now force this codec to provide better video quality with less CPU usage.

Additional enhancements include:

  • Reduced latency of audio and video calls.
  • Improved syncing between audio and video tracks.
  • Calls within the Chrome browser now maintain better performance – even with poor network conditions.
  • Peer-to-peer connections can now be enabled in scenarios using JavaScript in the cloud.
  • Audio and video codec priorities can be manually configured.
  • Full support for WebRTC to offer users the best in voice and video quality.

New SDK also supports asynchronous initialization and drops support for Flash, which can still be used with legacy systems via 3.x versions of the SDK. Complete documentation for Voximplant’s Web SDK 4.0 beta can be found at https://voximplant.com/docs/references/websdk4/

Step-by-step call center tutorial part 3

Creating a call queue

The application we created at the previous step has a flaw: it’s unclear what to do if the second user calls while the first one is still talking to the operator. Our web and mobile SDK can accept multiple incoming calls (and the phone app supports two lines to demonstrate it), but a human operator can speak only with one person at a time. This can be solved by a call queue: while the operator speaks with a user, all other users are waiting in a queue, with optional waiting music being played and/or the synthesized message informing the users about the remaining waiting time.

Tagged in

Step-by-step call center tutorial part 2

Redirecting an incoming call to a web browser

Answering an incoming call automatically can be useful in some situations, but in the real world, you are most likely want to communicate with the caller and/or connect the caller with other people. So let’s improve the application created at the previous step by forwarding the user call to a web browser or mobile app. Such a solution is popular among the distributed call centers where operators typically work from home and accept and initiate calls via a web browser.

To add the call handling features to a browser, we need two things. First, the browser should be connected to the Voximplant cloud to be able to accept an incoming call. Second, the browser should have a unique identifier to distinguish it among all the browsers connected to our cloud. Both tasks are solved via our web SDK. It allows any webpage to establish a real-time connection to the Voximplant cloud. Each connection is identified by the user name.


Recent Posts

May 02, 2017 12:08
H.264 video call recording is now available (in mp4 format)
Apr 17, 2017 10:58
Voximplant mobile SDK for Unity in now available
Feb 13, 2017 10:22
Authorization using tokens instead of passwords
Feb 03, 2017 01:45
Push Notifications for Android
Feb 03, 2017 01:45
Push Notifications for iOS
Jan 19, 2017 08:38
Speech-to-text: ASR
Jan 19, 2017 08:38
Speech-to-text: transcription
Jan 19, 2017 08:37
Audio Recording
Dec 28, 2016 12:47
VoIP Push Notifications support for iOS SDK has arrived
Dec 14, 2016 02:00
New billing for video calls running via servers