Web / Desktop Application

Common features

Disabling WebRTC

WebRTC can be disabled globally by setting the DISABLE_WEBRTC environment varibale to true in /etc/docker/compose/custom.env file.

Screen Popup

It is possible to display customer information in an external web application using Xivo sheet mecanism.

  • Go to Services > CTI Server > Sheets > Models to configure a sheet:
    • Tab General Settings: Give a name
    • Tab Sheet: You must define a sheet with at least folderNumber and popupUrl fields set:
      • folderNumber (MANDATORY)
        • field type = text
        • It has to be defined. Can be calculated or use a default value not equal to “-”
        • Note: You could leave “empty” using a whitespace (in hexadecimal: %20)
      • popupUrl (MANDATORY)
        • field type = text
        • The url to open when call arrives : i.e. http://mycrm.com/customerInfo?folder= the folder number will be automatically appended at the end of the URL
        • Additionally to the existing xivo variables, you can also use here the following variables(only available in Web Agent and Desktop Agent):
          • {xuc-token}: will be replaced by a token used for xuc websocket and rest api, for example http://mycrm.com/customerInfo?token={xuc-token}&folder=
          • {xuc-username}: will be replaced by the username of the logged on user, for example http://mycrm.com/customerInfo?username={xuc-username}&folder=
      • multiTab (OPTIONAL)
        • field type = text
        • set to the text true to open each popup in a new window.
  • Then go to Services > CTI Server > Sheets > Events and choose the right events for opening the URL (if you choose two events, url will opened twice etc.)

Example : Using the caller number to open a customer info web page

Screen popup on UC Assistant

By default the sheet:

  • on CC Agent application the sheet is opened by default,
  • on UC Assistant application the sheet is not opened by default.

You can change the behavior with the following sheet variables:

  • popupUCActivated:
    • if set to true the sheet will be opened on UC Assistant application
    • if set to false (default) the sheet won’t be opened on UC Assistant application
  • popupAgentActivated:
    • if set to true (default) the sheet will be opened on CC Agent application
    • if set to false the sheet won’t be opened on CC Agent application

For example, if you want the sheet to only open on UC Assistant application you should add in your sheet configuration:

  • in Services > CTI Server > Sheets > Models:
    • Tab Sheet add the following definition:
      • popupAgentActivated
        • field type = text
        • display value = false
      • popupUCActivated
        • field type = text
        • display value = true

Note

These variables can also be filled via a dialplan variable value with the UserEvent application and the {dp-...} syntax mechanism. See the XiVO PBX sheet description.

Desktop Assistant Specific Features

Run executable

It is also possible to run an executable using Xivo sheet mecanism. This is only available in the desktop agent and desktop assistant.

Warning

For the executable to be run on a Desktop Assistant in UC mode, you need to activate the Screen popup on UC Assistant (in CC Agent mode the screen popup doesn’t need to be activated and therefore the executable will be run out-of-the-box).

  • Go to Services > CTI Server > Sheets > Models:
    • Tab General Settings: Give a name
    • Tab Sheet: You must define a sheet with at least runAsExecutable and popupUrl fields set:
      • popupUrl (MANDATORY)
        • field type = text
        • It should contain an executable name accessible by the client user (where the desktop application is) or a full executable path.
      • runAsExecutable (MANDATORY)
        • field type = text
        • Display value true
      • executableArgs (OPTIONAL)
        • field type = text
        • set the argument for the executable.
  • Then go to Services > CTI Server > Sheets > Events and choose the right events for starting the application.

Example : Run the notify-send command on linux:

  • Define popupUrl with a display value of notify-send
  • Define runAsExecutable with a display value of true
  • Define executableArgs with a display value of caller:{xivo-calleridnum} where the variable xivo-calleridnum will be replaced by the caller phone number.
../../../_images/example_xivo_sheet_exe.png