cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
9645
Views
4
Helpful
20
Replies

Finesse Gadget Doesn't work on Agent Browsers

rbroersm
Level 1
Level 1

Hello,

I'm new to finesse gadgets.  I've written a simple gadget that does a makerequest to an API that logs a phone number (used for outbound dialer exclusions).  This all works great on my laptop, but when i tested on the agent laptop it seems like the js code is not being envoked.  I'm hosting the gadget on an IIS server and the layout for the agents is exactly the same as it is for me.  We validated to make sure that IE is enabled for javascript and also have been using the ?nocache parameter on the finesse URL to make sure we're grabbing the latest code.  I may try moving the gadget into finesse, but it's a little simpler to host it externally during dev and QA.  I'm hoping someone has run into something like this in the past and can help me out.  Everyone is on IE11.

Thanks,

Ryan.

1 Accepted Solution

Accepted Solutions

cdelgran
Cisco Employee
Cisco Employee

Ryan - Do each of your IE11 users involved in the testing have the same Compatibility View setting (either ON or OFF)?

If there are differences here, that could be the distinction.

From the IE Settings menu (gear icon), select "Compatibility View Settings"

compatibility_view.png

If any of your agents have this checkbox active, Finesse 11 and beyond will force the IE browser into IE=8 rendering mode. Without the the checkbox inactive, it will render everything in IE=edge mode.

To confirm, view the source of your finesse login page and check the header for one of the following:

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

<meta http-equiv="X-UA-Compatible" content="IE=8" />

While out-of-box Finesse works well in either mode, we have found that some of our custom gadgets will simply fail to load if IE=8 is the current setting.

note: I realize Ryan posted this in Nov and has probably long since fixed his problem, but posting this here for the benefit of others as well.

View solution in original post

20 Replies 20

ewindgat
Level 5
Level 5

Two issues that may help. Make sure the 3rdpartygadget folder, were the gadget files reside, is accessible by Finesse. Specifically the app pool for the website.

Also, check for any non-relative paths for resources, such as JavaScript, etc.

Is it mandatory to host the gadgets inside the Finesse web server?

I am facing a similar problem where my gadgets are hosted outside Finesse and they render just fine on the Agent's machine within Firefox but fail to load in IE.

Coty Condry
Cisco Employee
Cisco Employee

Does your gadget javascript code have any "console.log()" calls? IE doesn't like those if the developer console is not open, but Firefox works normally. Any errors at all in the IE developer console?

Thanks for the prompt response Coty.

We don’t have any console.log calls. What is weird is that if I host the same gadgets inside the Finesse Web Server, they load just fine in IE. It is only when I host them externally that they fail to load in IE (but work just fine in FF).

Can you paste the the HTML content of your gadget, where it loads the JavaScript files? I'm curious if there's something about the path to those files that would change Finessems behavior.

Also, make sure you clear the browser cache. I sometimes have issues with gadgets loading old files from the browser cache.

I am using the standard OOB version of the gadgets provided on the Cisco DevNet website. I haven’t changed any part of that code except for the URL to load.

Hmm… Does IE display any errors in the developer tools console (javascript console)?

Nope. We even tried the locallog feature but no obvious errors.

Hey Coty

We face an issue with a gadget loading correctly whereas there are no problems as long as developer console is open.

Do you have a solution for this?

Regards

Elias

Hi,

In the past this has been due to using console.log() methods within the javascript of the gadget. This is only available when F12 is open and otherwise causes an exception.

Other than that, put some try/catch blocks in.

Andy Steel

Systems Analyst (Senior Software Engineer)

Kingston House

Salvesen Way

Hull

HU3 4XQ

E: andy.steel@kcom.com

T: 01482 248822

M: 07976 556276

www.kcom.com <http://www.kcom.com/>

<https://www.linkedin.com/company/kcom>

Hi,

In addition to Andy's suggestions, add logging via Finesse's client logging (not using console.log) to your gadget code. Then with the developer console closed, reproduce the problem and click the "Send Error Report" link on the desktop. Grab the client log from the server and try to pinpoint the line(s) that is causing it to fail.

Thanx,

Denise

andysteel
Level 1
Level 1

I too have tried to host a gadget on an external Tomcat server. This was never reliable and in the end had to resort to hosting within the finesse server.

There were never any IE errors. It appeared that the JavaScript files supposed to be loaded in from the gadget XML file were not loaded into the DOM. I tried all sorts of tricks but gave up in the end.

It was all local network traffic so there were no delays. It was like the code which handles the gadget XML loading wasn't waiting for the external JS to be loaded.

I also tried splitting the gadget to have the XML on the finesse server and the external JS files on Tomcat server - made no difference.

I'd be interested to know whether you got this working or not.

For me, debugging in IE simply does not work. The browser gets stuck at line 3452  in concat.js citing "Object doesn't support property or method 'addEventListener'. Below is the line of code:

          document.addEventListener( "DOMContentLoaded", completed, false );

cdelgran
Cisco Employee
Cisco Employee

Ryan - Do each of your IE11 users involved in the testing have the same Compatibility View setting (either ON or OFF)?

If there are differences here, that could be the distinction.

From the IE Settings menu (gear icon), select "Compatibility View Settings"

compatibility_view.png

If any of your agents have this checkbox active, Finesse 11 and beyond will force the IE browser into IE=8 rendering mode. Without the the checkbox inactive, it will render everything in IE=edge mode.

To confirm, view the source of your finesse login page and check the header for one of the following:

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

<meta http-equiv="X-UA-Compatible" content="IE=8" />

While out-of-box Finesse works well in either mode, we have found that some of our custom gadgets will simply fail to load if IE=8 is the current setting.

note: I realize Ryan posted this in Nov and has probably long since fixed his problem, but posting this here for the benefit of others as well.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: