Unified Communications

Multifunctional system for managing calls, messaging and files. Cross-platform application is integrated with external services: Zoom, Box, Salesforce and Google Docs.

Challenge

In 2005, a VoIP telephony provider approached Axmor with a view to developing a desktop application. Our challenge was to develop a cross-platform client application for managing calls. This customer is now providing a multi-functional unified communication service to 30,000 companies in more than 90 countries. Its target audience includes call centers and other small and medium-sized enterprises that seek to enhance corporate communications.

Solution

At the request of the customer, we developed a unified communications system that includes a Linux server, a desktop client for Mac OS and Windows, a complex web application, and iPhone and Android mobile clients. At present, end users can choose between two types of server solutions: a dedicated server or a SaaS application deployed in the client’s data centers. A key feature of the product is that it is integrated with external services such as Zoom, Box, Salesforce, and Google Docs. A number of utilities were developed to monitor the system on the end user's servers, which reduced the time needed for analyzing and addressing problems. The unified communications system is available 24/7.


Integration

Integration with CRM Services

The system is seamlessly integrated with external CRM services. The administrator configures a URL that opens when a call is received or finished. For example, if an incoming number is associated with a CRM contact, the card of this contact opens.

Integration with Salesforce

We developed a CTI plugin to integrate the unified communications system with Salesforce. When a user logs on to Salesforce, a widget with the UI controls of the unified communications system appears on the Salesforce web page. The plugin enables users to answer and make calls from the contact list in Salesforce. A card is created in Salesforce with information about the call and a comment field for each call.

Integration with Box

Box.com cloud storage can be accessed via the web interface of the unified communications system. Employees can use Box.com to store and exchange files. File categories can be created in the storage system, making it easier to search for information.

Integration with Zoom

Integration with Zoom means that screen sharing is also available on the unified communications system. Users can also make video calls from within the web client and conduct HD video conferences.

Technology
Asterisk (AMI
AGI)
VoIP-клиент
pjsip 2 (iPhone
Android
PC)
Java
JScript
Objective-C
C++
C#
XSLT
MySQL
Couche base
SQLite
HTML5 Local Storage
Windows
Linux
Mac OS X
Amazon EC2
AngularJS
React JS
jQuery
OAuth 2.0
Google Android
Apple iPhone/iPad
SIP
RTP
HTTP long polling
XMPP
Salesforce
Outlook
Windows TAPI
Google Docs
Main Features
1
Voice Calls

Users can make voice calls over the Internet (IP telephony). To do this, it is necessary to install our softphone or connect an IP telephone to the unified communications system. Additionally, users can transfer an active call to another employee, place a call on hold, forward a call and continue it on another device (switch from a mobile phone to an IP phone and back without interruption), invite another user to join a call, and continue in conference mode. Any call can be recorded and saved on the server.The unified communications solution allows users to send and play voicemail. Users can read voice messages in text form, thanks to external speech recognition software.

2
Find Me / Follow Me

Users can configure their settings to forward incoming calls sequentially to any device: a web client, mobile phone, or IP telephone. In addition to the forwarding sequence, the user can set up a schedule for forwarding incoming calls to different numbers at certain times.

3
Call Queues

The system has call queue management to boost the productivity of call centers. The menu is voice activated, and the operators' performance data are displayed in real time. Managers can monitor calls and join them in whisper mode, which allows only the operator to hear the manager. Managers can view the total number of calls, call history, operator response time, call duration, and other important parameters for each queue.

4
Instant Messaging

The built-in chat function can also be used to exchange files. Since the system is integrated with a Google API, users can preview a Google Docs document that is sent via a link in the chat.

5
Contact List

The contact list contains details of all the company’s employees, shows if they are available or away, and provides information relating to the current call. It can be configured so that a notification is sent when a contact ends a call and is available.

6
Configuring Access Rights

At the customer’s request, we created flexible access rights for various system functions. The functionality available for a given client is described in its license. For example, not all clients require incoming call queues. The access rights for each user can be defined in a license, such as restricting access to managers’ calls.

7
Conferencing

The unified communications system gives users easy access to voice conferencing. Conferences can be either available to all employees or hidden. Conference access can be protected by a password when necessary.

Project Details
The project has been ongoing for more than 10 years. The size of the dedicated team has ranged from 4 to 15 experts in various areas.

In addition to developing new functionality, the Axmor team has been providing third-level support. When a customer’s own support center fails to resolve an end user’s issue, it is handled by the Axmor developer team. Since we did not have access to the end user's dedicated servers, we developed a system of scenario logs that can play a user action file saved on the customer's server. This helped us significantly improve the stability of the system.

Axmor has been collaborating with the customer throughout the various stages of its product's life cycle.

  • New product for a startup. It was crucial to quickly begin the project and release the first working version.
  • Product evolution. We developed a high-quality software product against a backdrop of ever-changing requirements. There were times when we needed to come up with a demo version for investors with little to no advance notice.
  • Mature product. The priorities now include maintaining the stability of the system, intensive testing of each version, and 24/7 third-level support.
Let’s see how we can make your business stronger