Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Type the Document Description here!
SEO Metadata
composedTitleWebAPI Admin Documentation
titleWebAPI Admin Documentation

Collaboration WebAPI allows you to integrate Wildix Unified Communications capabilities into web applications and external software (CRM, ERP, Fias/Fidelio).


HTML
<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = 'https://connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.11';
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

...

HTML
<div class="fb-like" data-href="#https://confluence.wildix.com/x/MwFuAQ" data-layout="button_count" data-action="recommend" data-size="large" data-show-faces="true" data-share="true"></div>

...

HTML
 <div class="lang-box-pdf">
	<div>
<div
class="lang-switch">
			<span class="letters-form"><a title="English" href="#">EN</a>&nbsp;|&nbsp;<a title="Italian" href="#" >IT</a>&nbsp;|&nbsp;<a title="French" href="#" target="_blank">FR</a>&nbsp;|&nbsp;<a title="German" href="#">DE</a></span>
		</div>
		<div class="google-lang">
			<div id="google_translate_element">
			</div>
			<script type="text/javascript">
					function googleTranslateElementInit() {
						new google.translate.TranslateElement({pageLanguage: 'en', includedLanguages: 'de,es,fr,it,nl', autoDisplay: false}, 'google_translate_element');
						}
			</script>
			<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
		</div>
		
		<div class="pdf-button">
			<a href="#https://confluence.wildix.com/spaces/flyingpdf/pdfpageexport.action?pageId=23986483" alt="Convert to .pdf" title="Convert to .pdf"><img src="https://confluence.wildix.com/download/attachments/14549012/pdf-button-download-wildix-documentation.png"></a>
		</div>
	</div>
</div>


HTML
<style>
.button {
  background-color: #dd9932; /* Green */
  border: 2px solid white;
  border-radius: 8px;
  color: #003366;
  padding: 16px 32px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  margin: 4px 2px;
  transition-duration: 0.4s;
  cursor: pointer;
  
}

.button:hover {
  background-color: #dd9932;
  color: white;
}

</style>
<button class="button" onclick="window.open('https://forms.gle/pBD3vq6hLdZsfwZv8')">Please help us improve by answering three simple questions. <b>Click here!</b></button>


...

Info

This document explains how to add and use Collaboration WebAPI which allow integrating of Wildix Unified Communications capabilities into web applications and external software (CRM, ERP, Fias/Fidelio).

Updated: April 2018October 2019

WMS Version: 3.88

Permalink:

Introduction

...

5.0X / 4.0X

Permalink: https://confluence.wildix.com/x/MwFuAQ


Warning
If WMS version of your PBX is 4.02.44435.37 and higher and you have previously downloaded and integrated WebAPI JavaScript Library, you need to update it manually in order to ensure compatibility with the new Presence Server (available starting from the mentioned WMS version).


Warning

Starting from March 2018, the latest versions of the most popular web browsers drop support for cross-requests for the protocol schema "file://".

To continue using WebAPI, you need to add the domain (Wildix domain in format www.wildix.com in case you are using our online demo and your domain in case you are using WebAPI on your web server) to the whitelist in WMS Settings -> PBX -> Security; see documentation: Domain Whitelist (Allow Origin).

If you are having issues with accessing Wallboard or Hotel Manager, read the chapter Access WebAPI Demo.

Table of Contents

Introduction 

Collaboration WebAPI is a working demo which you can start using today on your Wildix PBX.

We also provide a JavaScript library and documentation for web developers to integrate Wildix Unified Communications capabilities into web applications and external software (CRM, ERP, Fias/Fidelio).Basic features:

Requirements

  • Control A Wildix devices
  • Answer and make calls
  • Put a call on hold and resume
  • Perform blind and attended transfers
  • Communicate your presence and activity status and geolocation information
  • Monitor presence and activity status and geolocation information of other users
  • Exchange chat messages with users
  • Monitor active calls
  • Record calls
  • Monitor and manage call groups
  • Hotel features (check-in, check-out, wake up calls, make up the room requests management)
  • Call history
  • and other features

Collaboration WebAPI is easy to set up and can be customized to fit your specific needs. The architecture is flexible and scalable and allows implementing additional functionality on the go.

Implementation

...

Note

Both Wallboard and Hotel Manager require a Premium license.


Developer Documentation and JavaScript Library 
Anchor
jslib
jslib

You can download the JavaScript library from the the Wildix website or directly from your Wildix PBX using this path:

https://{PBX_IP}/public/wtapi.js

Developer’s Documentation is available online to help you to understand better the Wildix WebAPIs architecture and to customize the application to your specific needs.You can fully customise this application by integrating only separate modules from the library or by expanding it with .

Read also: PBX Control APIs.

Requirements:

  • A Wildix PBX
  • Wildix Collaboration license
  • For the integration with external software, Wildix W-TAPI license is required
  • Licenses necessary for Per User PBX: https://manuals.wildix.com/licensing/

You can also use the online demo version of WebAPI available at this link via the Wildix website.

JavaScript Library Plugins

Console Plugin

Control Wildix devices registered to your extension

Features:

  • make a call
  • answer or decline a call
  • put a call on hold and resume
  • blind transfer
  • bridge two calls (attended transfer)
  • start and stop call recording
  • hangup
  • monitor your active calls and receive new calls notifications

...

  • Wildix WP phones (except WP400)
  • Web phone

Chat Plugin

Allows users to exchange chat messages with all the users of the system.

Subscription Plugin

Allows users to monitor the presence status of the colleagues and their geolocation and communicate their own presence status and location to other PBX users.

Call Groups Plugin

Allows user to monitor the call center activity and to manage the call groups.

Features:

  • Receive the list of all the call groups with a list of group members
  • Monitor the active calls
  • See the talk time / idle time for each group member
  • Dynamically add members to call groups
  • Put a user on pause in a call group
  • See the list of callers, the channel and the waiting time to be connected to a call agent

...

Access WebAPI Demo 

You have several options to access WebAPI demo:

Option 1 - use our online demo version, available at https://wildix.com/webapi/# 

For Hotel Manager, you can use the direct link: https://www.wildix.com/webapi/hotelManager/ 

Note

Note: Hotel Manager requires a special Dialplan configuration, find an example here.

For Wallboard, you can use the direct link:  https://www.wildix.com/webapi/wallboard/ 

Click “Settings” and fill in the fields:


  • Host: your PBX name
  • Extension: extension of user
  • Password: WEB password of user
  • Callgroup ID: enter the IDs of 1 or more callgroups you want to monitor; SLA wait / percentage parameters are optional


PDF avoid Pagebreak

Image Added



Note

Ports to open for connection to Hotel Manager and Wallboard: 443 or custom secure port.

If the PBX is local, there is no need to set port forwarding or open ports on firewall, you can access the Wildix WebAPI online demo locally with .*wildixin.com domain:

  • Use the link specified above for connection to the online demo version of Wallboard or Hotel Manager
  • Open Settings and in the field Host add -2 to the *.wildixin.com domain name of your PBX for LAN port or -1 for WAN port:
PDF avoid Pagebreak

Image Added

For example, if you add -2 for LAN port -> if the interface has the IP 192.168.0.1 then myhotel-2.wildixin.com will be resolved as 192.168.0.1; if the interface has the IP 10.135.0.1 then myhotel-1.wildixin.com will be resolved as 10.135.0.1 (in this example "myhotel" is the *.wildixin.com domain name of the PBX; use your PBX name instead)

For remote connection you need anyway to open TCP port for HTTPS, and in this case you can use HTTPs and port 80 to connect. Example: https://mypbx.com:80/ or custom secure port https://mypbx.com:433 (or another custom secure port, specified on the page SIP-RTP in WMS)


Option 2 - upload WebAPI to a web server reachable via HTTP/HTTPS 

Option 3 - upload WebAPI on the PBX:

  • download the JavaScript library as described in the previous chapter
  • connect to the PBX via SSH
  • create the folder (if it doesn't exist yet) /var/www/scripts
  • copy the folder of your application (e.g. Hotel Manager or Wallboard) to /home/admin using the command scp 
  • move the folder via SSH from /home/admin to /var/www/scripts using the command mv 
  • edit the owner (chown wms:wms -R /var/www/scripts) 
  • now you can access the page by this link: https://your_PBX/scripts/application_folder/index.html 


Warning

Starting from March 2018, the latest versions of the most popular web browsers drop support for cross-requests for the protocol schema "file://".

To continue using Hotel Manager and Wallboard, you need to add the domain to the whitelist in WMS Settings -> PBX -> Security; see documentation: Domain Whitelist (Allow Origin).

In case you are using Wildix online demo available at www.wildix.com/webapi, add the domain www.wildix.com to the whitelist. 

In case you are using WebAPI uploaded on your web server, add your server domain to whitelist

WebAPI Basic Features

WebAPI library consists of four plugins:

  • Console: allows you to control Wildix devices registered to your extension to place, answer and manage calls (hold, record, call transfer)
  • Chat: exchange chat messages with PBX users
  • Subscription: monitor presence status and geolocation of PBX users, set your own DND / away status
  • Call groups
    • receive a list of call groups and members of each group
    • monitor active calls on call groups
    • dynamically add members to call groups
    • put call group members on pause
    • see the waiting time 
Note

Call groups plugin usage notes:

    • It is not possible to add a user to a group over the WMS Network
    • For a user who has been dynamically added to a call group, the user preferences do not work (DND, mobility, call forwarding…), “Call waiting” feature is off. For group members added via WMS, user preferences work and “Call waiting” feature is on
    • The ACL ability “can/cannot manage a callcenter” allows a user to perform actions on call groups’ members: put a user on hold, add users to call groups. In case the ability is disabled (“cannot mange a callcenter”), a user can perform the actions only on himself (add himself to a call group, put himself on pause in a call group)

...

Additional Modules

Warning
Starting from March 2018, the latest versions of the most popular web browsers drop support for cross-requests for the protocol schema "file://".

To continue using WebAPI, you need to add the domain to the whitelist; see documentation: Domain Whitelist (Allow Origin).

In case you are using WebAPI locally, you have several options:

  • Option 1 - upload WebAPI to a web server reachable via HTTP/HTTPS and add the domain to the whitelist
  • Option 2 - connect to the PBX via SSH:
    • create a folder /var/www/scripts
    • copy the folder HMS to /home/admin (delete the version number) using the command scp
    • move the folder via SSH from /home/admin to /var/www/scripts
    • edit the owner (chown wms:wms -R /var/www/scripts) 
  • Option 3 - start using the online demo version instead, available at https://wildix.com/webapi/# (add the domain to the whitelist)

    WebAPI library includes three additional modules:

      • Predictive Dialer
      • Hotel Manager
      • Call center Wallboard

    Predictive Dialer

    Predictive Dialer allows you to generate a number of outgoing calls equal to the number of free call agents plus a number of spare calls.

    The number of spare calls allows boosting the call center performance by pre-dialing final customers.

    Immediately after answer, a final customer can hear a message informing him/her that their call is forwarded to a call agent. While waiting for the answer, either music on hold or a ringback is reproduced.

    Features:

    • Start/stop calling the customers
    • Manage the call agents and monitor their realtime status
    • See the number of called customers waiting for an answer


    Note

    Note: Predictive Dialer requires a special Dialplan configuration, for more details contact Wildix Tech Support or post your request on Wildix Tech Wizards Facebook Group.

    Hotel Manager

    Warning

    Starting from March 2018, the latest versions of the most popular web browsers drop support for cross-requests for the protocol schema "file://".

    To continue using Hotel Manager, you need to add the domain to the whitelist; see documentation: Domain Whitelist (Allow Origin).

    In case you are using Hotel Manager locally, you have several options:

    • Option 1 - upload WebAPI to a web server reachable via HTTP/HTTPS and add the domain to the whitelist
    • Option 2 - connect to the PBX via SSH:
      • create a folder /var/www/scripts
      • copy the folder HMS to /home/admin (delete the version number) using the command scp
      • move the folder via SSH from /home/admin to /var/www/scripts
      • edit the owner (chown wms:wms -R /var/www/scripts) 
    • Option 3 - start using the online demo version instead, available at https://wildix.com/webapi/# (add the domain to the whitelist)

    ...

    User who needs to access Hotel Manager should be assigned at least a Business license. If you also need to use call billing feature, you need a Premium license (CDR-View).


    Warning

    For access to Hotel Manager, read the chapter Access WebAPI Demo

    Features currently supported:

    • Monitor PBX users and rooms with their realtime status information
    • Check-in and check-out
    • Block of outgoing calls in case the room status is vacant
    • Request to make up the room
    • Set up wake up calls
    • View call history and call costs

    Note: Hotel Manager requires a special Dialplan configuration, find an example here.

    Wallboard

    Warning

    Starting from March 2018, the latest versions of the most popular web browsers drop support for cross-requests for the protocol schema "file://".

    To continue using Wallboard, you need to add the domain to the whitelist; see documentation: Domain Whitelist (Allow Origin).

    In case you are using Wallboard locally, you have several options:

    • Option 1 - upload WebAPI to a web server reachable via HTTP/HTTPS and add the domain to the whitelist
    • Option 2 - connect to the PBX via SSH:
      • create a folder /var/www/scripts
      • copy the folder HMS to /home/admin (delete the version number) using the command scp
      • move the folder via SSH from /home/admin to /var/www/scripts
      • edit the owner (chown wms:wms -R /var/www/scripts) 
    • Option 3 - start using the online demo version instead, available at https://wildix.com/webapi/# (add the domain to the whitelist)

    ...

    Warning

    Only users of "admin" type can set wake up calls, check-in / check-out and set make-up room status.

    For more information about Hotel Manager, read Hotel Manager Guide

    Note

    Note: If you are looking for Fias Hotel integration, read documentation: Hotel Integration - FIAS protocol.

    Wallboard

    Warning

    User who needs to access Wallboard should be assigned a Premium license (Interactive Queues are under Premium license).


    Full list of supported features: https://www.wildix.com/portfolios/call-center-wallboard/  

    How to access:

    ...

    .

    ...

    PDF avoid Pagebreak

    Image Removed

    Example

    Note

    Note: This version of Wallboard is an online demo, which can be used "as is".

    We provide a JavaScript library which allows a web developer to fully customize this template. Read the chapter Developer Documentation.


    Warning

    For access to Wallboard, read the chapter Access WebAPI Demo.


    Example of Wallboard and explanation of counters:

    PDF avoid Pagebreak

     The counters start once you connect.

    • “Calls”: number of calls the agent has managed
    • “Global Call Time”: the time this agent has spent in conversations
    • “Global Pause Time”: total idle time of this agent
    • “Pause Time”: time that has passed since the last call
    • “Total calls”: total number of incoming calls to this queuqueue
    • “Calls on queue”: number of active calls on this queue

    Add / remove a call agent: click on “+” (the 1st column) and add an extension.

    Incoming calls waiting in queue are displayed below the table in red color

    User status icons legend:

    • Green = available
    • Blue = not connected to Collaboration/ user not added to roster
    • Red phone icon = talking on the phone
    • Clock icon = away
    • Brick icon = do not disturb
    • Pause icon = on pause;
    • Green phone icon with red arrow = incoming call


    Note

    Here you can find the default template and two additional templates for wallboard: https://drive.google.com/open?id=1HBc5SurA1bVbTveFoNQNM9z4Qgq-HL9P

    template queue-users:

    PDF avoid Pagebreak

    Image Added


    template queue-info:

    PDF avoid Pagebreak

    Image Added


    Notes:

    • The templates do not contain the "Settings" file; this means you need to add your host, user, password and call groups directly on the page (uncomment variables in the HTML file)
    • The templates are in Italian; to change the language, edit the corresponding *.widget.js file ("queue-info.widget.js", "queue-users.widget.js")



    HTML
    <div class="fb-like" data-href="#https://confluence.wildix.com/x/MwFuAQ" data-layout="button_count" data-action="recommend" data-size="large" data-show-faces="true" data-share="true"></div>

    ...