Qlik Community

Qlik Sense Integration, Extensions, & APIs

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

Not applicable

Communicate with Qlik Engine Service directly in C#

Hi,

I am trying to comminucate directly with QES in C#.

I am using certificates for Authentications as described here Re: Qlik Sense Authentication - Java and the websocket-sharp library for connection.

But  I cannot get it to work. FYI, I am using a Qlik Sense server installed on my local machine for my test to avoid all network related issues.

I have attached my test function and the stacktrace.

Any idea why the connection is failing? Any clues where to look in the log files?

Any kind of help or tips would be greatly appreciated here!

With thanks and regards,

Jessen

1 Solution

Accepted Solutions
Employee
Employee

Re: Communicate with Qlik Engine Service directly in C#

As Konrad Mattheis pointed out, you can disable the version check using the "noVersionCheck" argument for the methods that triggers websocket connections to be made. Location.Hub is one example, Location.App another. If you want to disable the version check in your application you will therefore typically have to use that argument multiple times like this:

var appId = location.AppWithNameOrCreate(appName, noVersionCheck: true);

var app = location.App(appId, noVersionCheck: true);

In future versions of the SDK you will be able to set a property on the Location instance instead, so that you can write like this:

location.IsVersionCheckActive = false;

var appId = location.AppWithNameOrCreate(appName);

var app = location.App(appId);

6 Replies
Not applicable

Re: Communicate with Qlik Engine Service directly in C#

Hi,

You can use the Qlik Sense .NET SDK ‒ Qlik Sense. If you are communicating directly to the engine you can use the Location.AsDirectConnection method.

Best regards

Lars-Göran Book

Not applicable

Re: Communicate with Qlik Engine Service directly in C#

No. With the .NET SDK, I will not be able to communicate with a 2.1.x and 2.2.x server at the same time.

That's why I'm investigating the possibility to communicate via the QES directly.

Luminary
Luminary

Re: Communicate with Qlik Engine Service directly in C#

Hi Jessen,

this is no Problem to communicate with differnt sever versions.

just use: location.HubAsync(noVersionCheck: true)

thats all.

bye

Konrad

Employee
Employee

Re: Communicate with Qlik Engine Service directly in C#

As Konrad Mattheis pointed out, you can disable the version check using the "noVersionCheck" argument for the methods that triggers websocket connections to be made. Location.Hub is one example, Location.App another. If you want to disable the version check in your application you will therefore typically have to use that argument multiple times like this:

var appId = location.AppWithNameOrCreate(appName, noVersionCheck: true);

var app = location.App(appId, noVersionCheck: true);

In future versions of the SDK you will be able to set a property on the Location instance instead, so that you can write like this:

location.IsVersionCheckActive = false;

var appId = location.AppWithNameOrCreate(appName);

var app = location.App(appId);

Not applicable

Re: Communicate with Qlik Engine Service directly in C#

Many thanks for the heads up.

Not applicable

Re: Communicate with Qlik Engine Service directly in C#

Many thanks for the heads up too.

I tried it this morning and it works.

Community Browser