Forums
« Back to APIs

CWIC Plugin reload behavior

Combination View Flat View Tree View
Threads [ Previous | Next ]
Hi all,
today I run in to an issue with the CWIC browser plugin where the plugin's behavior was very different in IE9 than in the rest of the supported browsers.
Steps to reproduce (reproduced with the jabbersdk sample.html):

Chrome / Firefox (latest version):
- Login an user to the CWIC Plugin
- Open a second browser tab.
- The status from the first tab gets fully recovered, without re-login the user against CUCM. (No packages traced by wireshark)
This behavior is also what I expect.
IE9:
- Login an user to the CWIC Plugin
- Open a second browser tab.
- First of all, the login fields in the sample are not disabled (like in chrome) and when I try to login on the second tab with exactly the same credentials I get the following error:
Unable to login: Already logged in eLoggedInLock (error code 18)
When traceing with wireshark I see that the plugin actually tries to authenticate the user again.
 
Can you please help me clearifying why I run into this issue?
Thank you.
Best regards,
Simon

Hi Simon,
The CWIC browser plugin includes a "system lock" to prevent concurrent phone registrations from the same machine: after registering from one browser (ex: Firefox), attempting to register from a second browser (ex: Chrome) leads to the "already logged in" error. That said, browsers have different process models, which can cause different behavior as you described.
Firefox, Chrome and Safari will load one single instance of the plugin: after registering from one tab, other tabs will see the CWIC phone regsitered as they access the same instance.
Internet Explorer implements a different model, it is not guaranteed tabs will share the same CWIC plugin instance. In your case, the 2 IE9 tabs loaded 2 distinct plugin instances. First tab registered ok, but second instance could not acquire the system lock and raised the "already logged in" error. Same as if one Firefox tab is registered and a Chrome tab attempts to register.
Hope this makes sense, Thomas

Hi Thomas,
Thanks for the answer.
And yes your answer makes sense to me.
One question:
What means it is not guaranteed? Does this mean your Internet Explorer shares the CWIC instance?
If yes, is there a way to force IE to share the instance?
 
Thanks again.
Simon

Hi Simon, I think IE uses the "TabProcGrowth" registry key to configure how IE launches new processes when opening new tabs. http://blogs.msdn.com/b/askie/archive/2009/03/09/opening-a-new-tab-may-launch-a-new-process-with-internet-explorer-8-0.aspx We never tested a customized TabProcGrowth with the CWIC plugin, you might want to give it a try. Also not sure if it can impact other web sites/applications. More information about LCIE (Loosely Coupled IE) can be found here http://blogs.msdn.com/b/ie/archive/2008/03/11/ie8-and-loosely-coupled-ie-lcie.aspx Thomas

Hi Thomas,
Thank you.
I will definitely give it a try!
 
Best regards,
Simon