Soft Phone Bar Document

The use of the soft phone bar requires an integrated code package. If you only need the outbound function and the on-hook function, it is recommended that you use the outbound interface

1.Application scenario

The soft phone toolbar only displays and controls the call status. The real call function is actually the actual call device.

Note: There are Local and gateway methods for answering agents. Local methods correspond to mobile phones (you must first bind the mobile phone number in the system or use the agent information interface to modify the binding), and gateway corresponds to devices using gateway sip numbers, such as phones.

It is a BS architecture, no need to install ocx controls, pure html, js code. Embed our soft phone bar interface into your application system, it is independent and will not affect your work orders and other functions.

2.Features

  • Interface operation-On this interface, you can set outbound calls, call hold, transfer, consultation, and busy busy status settings.

  • Outbound call-By embedding the js code of the soft phone bar, in your system interface, click on the customer's number and you can directly call out.

  • Incoming call pop-up event-Incoming call will trigger pop-up event, you can perform incoming call pop-up operation according to the parameters we return.

  • The template interface is as follows (you can change the style of the soft phone bar interface by modifying the css file):

phonebar

3.Functional document

3.1 Template usage guide

Unzip to find the login.html file under html, enter the account password to load the softphone page, you can dial after entering the page.

Note: refer to the docking instructions first to modify the proxy_url address for normal use

Copy the files below the package to your project, find the main.html file under html, and copy the contents of the main.html file to the pages you need to add to the soft phone bar interface

Note: According to different accounts, the proxy_url parameter in the js / moortools.js code needs to be modified by the customer. For parameter query, please go to [Docking Data Query] (data-query.md) to obtain the address according to the opened account.

moorCall.moortools.m7BeginLogon = function (loginName, password, extenType) {
    var config = {
        Monitor: false,
        proxy_url: "http://101.xxx.xxx.223",//Different accounts require different addresses, please modify after inquiry.
        extenType: extenType,
        password: password,
        User: loginName,
        busyType: "0"
    };
    moorCall.moortools.m7initPhone(config);
};

Download the source code:edb_bar.rar

3.2 How to use

We provide a file, objectDeclare.js under js, which will trigger the internal method when an event occurs.

For example: the incoming call triggers to the m7Ring method and passes in parameters.

The meaning of specific parameters is shown in the following table:

parameter name description
originCallNo Calling number
originCalledNo Called number
Agent Agent number
ivrkey Calling customer key information, such as 1004 @ 1-1005 @ 2 (1004, 1005 are node numbers) means that the customer presses 1 and then 2 to receive the call.
callSheetId Call record number, an id that uniquely identifies the current call, the corresponding call record can be found by this id
callerProvince Province (Chinese name of the province corresponding to the calling number)
callerCity City (Chinese name)
offeringTime Call time
queue Queue number
queueName Queue name

3.3 Call Log Docking Guide

You provide an http url address, and we will push the call log to this address in real time through the get request method.

For more information, see the document External Event Push

3.4 C / S Architecture Integration Guide

The C / S architecture integrates the soft phone bar embedding method for WebBrowser.

In the CRM client program, the webBrowser browser control is embedded. When you log in to the client program and log in to the call center at the same time, you can perform call center operations in the call center web toolbar, or you can call JS functions in the web page .

4.Error prompt

value meaning
400 There is no corresponding answering device. Please check whether the agent is bound to the mobile phone number in the local login mode, and check whether the agent is bound to the phone in the gateway mode.
404 The password, account number, or proxy_url are incorrect. Please confirm these three information first.
406 Agent license version problem, the version you log in to does not support the use of soft phone bar
601 Your account has reached the maximum number of call agent logins or has expired, please log in using no call or contact the administrator
602 Your account has the maximum number of agent logins or has expired, please use the gateway / line method to log in or contact the administrator
603 Account license expired, please contact the administrator
Lapse Failure means that there is no answering device corresponding to the login mode. Local is bound to a mobile phone number, and gateway is to register a binding agent with a phone.

5.Common methods

1.Incoming call screen: The m7Ring: function method in objectDeclare.js will be triggered when an incoming call comes in. You can write your own popup screen logic in this method. <br/>

2.The number of people in queue: To display the number of people in queue, you can get it through queueItem.queueWaitCount in the method EvtMonitorQueue: function in objectDeclare.js<br/>

3.Transfer skill group: call javascript: phone.transfer ('skill group number', 'skillgroup', {}) in main.html page<br/>

4.Outgoing ringing: To do logical processing when outgoing calls ring, you can handle it in the onDialing: function method in objectDeclare.js<br/>

5.Answering method: EvtConnected: function method in objectDeclare.js will be triggered when answering<br/>

6.On-hook method: onHangup: function method in objectDeclare.js will be triggered when on-hook<br/>

7.Outbound custom parameters: Async: "true" in the dialout method in m7Phonebar.js, and two new parameters are added below to enable the function. HasCdrVar: true, ActionID: 'Custom Parameters', custom parameters must be dynamically changed</br>

8.Custom satisfaction: in the investigate method of m7PhoneBar var context = self.accountId + "-node number -satisfaction", just pass the corresponding node number on the line</br>

9.Soft phone bar logout method: m7logout in moortools.js can implement logout

6.Release Notes

Version update 2019.11.12:

Bug fixes:

  • When the network is disconnected, incoming calls cause the inconsistent status of the phone bar to be restored to the Internet.
  • There is an incoming call when the network is disconnected. After the Internet connection is restored, the soft phone bar input box does not display the incoming call number.

new features:

  • Added cancel consultation function. (The server needs to be upgraded synchronously. If you need this function, you can contact the docking staff in the group.)
  • Added consultation waiting for music reminder.
  • Integrate the monitoring version, trumpet version, and fixed-line version.
  • It is forbidden to switch the soft phone bar status during a call or disconnection.
  • Added automatic reconnection mechanism, and added a text prompt for network disconnection on the call interface.