Qlik Community

Integration, Extension & APIs

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

Announcements
Customer & Partners, DEC. 9, 11 AM ET: Qlik Product & Strategy Roadmap Session: Data Analytics REGISTER NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
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
yko
Employee
Employee

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);

View solution in original post

6 Replies
Not applicable
Author

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
Author

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.

konrad_mattheis
Luminary Alumni
Luminary Alumni

Hi Jessen,

this is no Problem to communicate with differnt sever versions.

just use: location.HubAsync(noVersionCheck: true)

thats all.

bye

Konrad

yko
Employee
Employee

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);

View solution in original post

Not applicable
Author

Many thanks for the heads up.

Not applicable
Author

Many thanks for the heads up too.

I tried it this morning and it works.