Skip to end of metadata
Go to start of metadata



Nov 18, 2019 06:04

WebAPI Admin Documentation

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: October 2019

WMS Version: 3.88/ 4.0X

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

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).

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.

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).

Requirements

Both Wallboard and Hotel Manager require a Premium license.


Developer Documentation and JavaScript Library 

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

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

Developer’s Documentation is available online.

Read also: PBX Control APIs.

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: 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




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:

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 

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 

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)

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: 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

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).

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

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: If you are looking for Fias Hotel integration, read documentation: Hotel Integration - FIAS protocol

Wallboard

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/  

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.


For access to Wallboard, read the chapter Access WebAPI Demo


Example of Wallboard and explanation of counters:

 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 queu
  • “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


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

template queue-users:


template queue-info:

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")



Not finding the help you need?
Join the Facebook group to ask a question!
facebook_tech-wizards