Skip to content

SMS Gadget Installation Guide

Brad McAllister edited this page Oct 2, 2018 · 6 revisions

10/1/18 Update

This gadget will no longer work as is. Please see the note in the readme for more details.

Tropo SMS Gadget Installation Guide

The SMS gadget enables agents to send SMS messages directly from the Finesse desktop using Cisco Tropo. If you wish to store interaction history and allow supervisors to review messages, Firebaseio.com is used to store this information in the cloud (Once cloud context is available, I will look at using it). You could modify this to store information in a local database as well. My goal was to make this as simple to deploy as possible.

Before we begin configuring the gadget, the following items need to be completed:

  1. Setup a Tropo Account (https://www.tropo.com/register)

  2. Create an application and assign a phone number to it.

    • There is no cost for development accounts. In order to enable outbound SMS on the dev number, you need to open a support case with Tropo by email: support@tropo.com. Simply request outbound to be enabled on the number you were assigned. They turned this around very fast!
    • Add the tropo.js script to your application.
    • Copy the messaging API Key. This will be added to the gadget js files
  3. Create an account at firebase.google.com

    • Firebase's free tier allows for up to 100 concurrent connections.
    • Create a new application from the Firebase dashboard.
    • After the application has been created, click on Authentication and then Sign-in methods.
      • Enable email/password to match the screenshot below.
      • Next click on Users and add a new user. This is how your gadget will authenticate.
      • Next click web setup in the upper right of the firebase console and copy the values inside the red box.
    • After the authentication steps are complete and the values have been saved for use in the finesse gadget, click on Database and then rules.
      • Make sure the rules match the screenshot below.
  4. Edit the agentTropoGadget.js and the supTropoGadget.js files and insert the appropriate keys between the “ “

    Insert your API Keys

    WARNING: Because the keys are in a .js file they are not hidden. Do NOT host these files on a public web server. If there are concerns of agents/supervisors obtaining these keys, a server side script needs to be implemented for these functions. This can be accomplished in PHP or the like.

    • The gadgets can be deployed to Finesse’s 3rd party gadgets or on a local web server. I typically run all my gadgets on a separate web server. I find it easier to manage them.
    • Gadgets load multiple JavaScript files when they initialize. make sure the version of the SMS gadget matches the version of finesse you have deployed. The preferences and JS locations differ depending on the Finesse version.

    If you choose to store these files elsewhere, update the paths in the agentTropoGadget.xml and supTropoGadget.xml.

  5. Finally, update your Finesse layout to include your new gadgets!

    • Navigate to Cisco Finesse Administration: https://:8445/cfadmin/
    • Select the Team Resources tab and then select the team that you want to add this gadget to
    • I like to copy the desktop layout XML from the text window into a text editor to modify. Once I am done making changes, I copy and paste it back into the text window. Add the following to the agents layout:

    Add the following to the supervisor layout:

  6. Log into finesse as your agent and supervisor to test it out!

NOTE: Finesse caches the gadgets when they are loaded. If changes are made to the xml or js files, the cache needs to be cleared manually if you want to see the changes right away. Otherwise it takes ~24 hours. To clear the cache, format the URL as follows when loading the finesse desktop: https://:8445/desktop/container/?nocache or restart the tomcat web service.