Qlik Community

Qlik Sense Integration, Extensions, & APIs

Discussion board where members can learn more about Integration, Extensions and API’s for Qlik Sense.

davidcdots
New Contributor

Re: Qlik Engine API Does Not Work after June 2017 update

Hi again!

To clarify, I'm trying to launch QlikSense using a background process to interact with an specific app. So, are you telling me this is not possible due to the login step? Is there any way to send to Qlik Sense Desktop my credentials? I tried out my code skiping the QlikSense launch and another exception was trhown: System.ComponentModel.WarningException: 'SDK target system version mismatch. SDK target system version (v4.0) should match server version(v3.2)'

Nevertheless, even if I fix the version mismatch, this is not the expected behavior.

Any help will be very appreciate.

Regards!

Employee
Employee

Re: Qlik Engine API Does Not Work after June 2017 update

I'm not sure if it possible to pass along credentials to Desktop, so I hope someone else can chime in on that one.

The version mismatch is easy to avoid though. If you don't want to use the 3.2 version that matches the server, then you can deactivate the version check like this:

location.IsVersionCheckActive = false;

Keep in mind that this means that the SDK will be out of sync with the engine API, so you might get some strange behaviors. But in reality the API's change so little that it usually works anyway.

akl
Honored Contributor

Re: Qlik Engine API Does Not Work after June 2017 update

The licensing terms for Qlik Desktop requires you to log in.

If you wish to run it as a automated process then it should be connected to a Qlik Sense Enterprise server and authenticated through whatever mechanism the virtual proxy is configured for.

cristihainic
New Contributor III

Re: Qlik Engine API Does Not Work after June 2017 update

I found the solution to my initial issue. It was related to not awaiting the receive() method on the websocket object created with the line from my above code: ws = await session.ws_connect(f"wss://{self.host}:{self.port}/app"). In short, when I also awaited ws.receive() everything started to work again.


Now, to explain why it worked before without calling receive() on the websocket object, I can only presume that in version 3.2, Qlik Engine did not return any message upon successfully connecting through its websocket API. And now, in version 4.0, it does. So that message had to be awaited also.

Highlighted
davidcdots
New Contributor

Re: Qlik Engine API Does Not Work after June 2017 update

Agreed, I used that approach to fix the versión mismatch. So, if the full automation is not possible, we will need another solution to our needs. Anyway, all your help is very appreciated.

Thank you!

Community Browser