Jump to content
John Lokanis

[CR] NI Web Service Server

Recommended Posts

index.php?app=downloads&module=display&section=screenshot&id=80

Name: NI Web Service Server

Submitter: John Lokanis

Submitted: 08 Jul 2009

File Updated: 03 Jan 2011

Category: Remote Control, Monitoring and the Internet

LabVIEW Version: 2009

License Type: Creative Commons Attribution 3.0

NI Web Service Server v2.0.0

Copyright © 2010, John Lokanis

All rights reserved.

Author: John Lokanis

LAVA Name: jlokanis

Contact Info: Contact via PM on www.lavag.org

LabVIEW Versions:

Created and tested with LabVIEW 2009

Dependencies:

Requires .net 2.0 or higher, LabVIEW 2009 or higher.

Description:

This Project contains a set of VIs and support files designed to build an installer that will place the 'NI Web Service Server' on a target machine.

The NI Web Service Server is a small LabVIEW EXE that runs as a Windows service in the background, keeping all LabVIEW web services running regardless of what other applications are running on the machine.

Also included are a few web services that support the following:

Getting screenshots of the target machine on demand.

Getting VI Front Panel images from any running LabVIEW EXE on the target machine.

Getting EXE version information from any running LabVIEW EXE on the target machine.

Testing the web service with a simple 'echo' command.

Please refer to the included 'NI Web Service Server.pdf' file for a more detailed explaination.

Instructions:

Build the various components and desired installer, then install to target machine. Use any standard web browser to access the web services.

Known Issues:

None

Acknowledgements:

NI Knowledgebase, MSDN

Change Log:

v1.0.0: Initial release of the code.

v2.0.0: Ported to LabVIEW 2009.

License:

Distributed under the Creative Commons Attribution 3.0 (http://creativecommo.../about/licenses)

See link for a full description of the license.

Support:

If you have any problems with this code or want to suggest features:

please go to www.lavag.org and Navigate to

LAVA > Resources > Code Repository (Certified) and

search for the "[CR]NI Web Service Server" support page.

Distribution:

This code was downloaded from the LAVA Code Repository found at www.lavag.org

Click here to download this file

  • Like 2

Share this post


Link to post
Share on other sites

Hey John,

This looks very interesting and useful, I'm looking forward to checking it out when I find some spare time.

Thanks!

Share this post


Link to post
Share on other sites

Submission Certified and placed in the "Remote Control, Monitoring and the Internet" Catagory

Share this post


Link to post
Share on other sites

I will be giving a presentation on web services in LabVIEW, including a discussion of this project at the next Seattle LabVIEW User Group (SLUGs) meeting this month.

If you are interested in attending, contact our local NI rep (jared.mcinelly@ni.com) and request to be added to the attendee list.

The meeting is on 7/28/09 at 7pm in Redmond, WA. Pizza and drinks will be served!

Thanks!

-John

Share this post


Link to post
Share on other sites
I will be giving a presentation on web services in LabVIEW, including a discussion of this project at the next Seattle LabVIEW User Group (SLUGs) meeting this month.

Any chance of recording and uploading it? Or, at least, the presentation file?

Share this post


Link to post
Share on other sites

I will post the power point slides when they are ready. I don't think we have any equipment to record the presentation.

If all goes well, maybe I can present it again at NI Week 2010.

Share this post


Link to post
Share on other sites

Just a reminder that my presentation on LabVIEW web services for the Seattle LabVIEW Users Group (SLUGs) is tomorrow! I will post the slides on Wednesday. Still editing them!

Share this post


Link to post
Share on other sites

As promised, here are the slides from the presentation. I think the topic was a bit advanced for some attendees, however. I got a lot of glazed looks when I tried to explain how important it was to understand application instances when using web services.

Maybe I will get to present this or an updated version at NI Week 2010.

Unfortunately, the slides don't have a lot of details and are more of an outline of my presentation, but maybe you can get something useful from them anyways.

-John

Web Services in LabVIEW.pdf

Share this post


Link to post
Share on other sites

As promised, here are the slides from the presentation. I think the topic was a bit advanced for some attendees, however. I got a lot of glazed looks when I tried to explain how important it was to understand application instances when using web services.

Maybe I will get to present this or an updated version at NI Week 2010.

Unfortunately, the slides don't have a lot of details and are more of an outline of my presentation, but maybe you can get something useful from them anyways.

-John

Can you make couple slides talk about the basics like what is web service, why you would want to do that in LV and how you would use possibly use it, use cases? Not having much idea about web services, i am thinking what are these slides all about? To me web services run on websites or ISP hosting servers. Since most of the hosting companies will not have labview support installed on their traditionally linux servers, does it make sense to build web service in LV??

am i missing something?? :unsure:

Edited by paracha3

Share this post


Link to post
Share on other sites

am i missing something??

Well, yes. What you describe is not the point of web services in LabVIEW. If you want to understand the basics, NI has several help articles on their site to get you started. What I am trying to do with this project is help an advanced developer take their web services and deploy them to a run time target. This was a bit of an after thought on NI's part and is therefore not straight forward. Since I suffered through the issues, I am trying to share that knowledge here to help others avoid the same pitfalls.

In addition, I am providing some interesting uses of web services that are non-traditional but make them valuable to LabVIEW developers.

-John

  • Like 1

Share this post


Link to post
Share on other sites

SSL was added with LV2009. I have yet to upgrade to the new version. Once I do, I will investigate how SSL integrates into this tool and post a new version. Hopefully, I will get to this in the next few weeks...

Share this post


Link to post
Share on other sites

SSL was added with LV2009. I have yet to upgrade to the new version. Once I do, I will investigate how SSL integrates into this tool and post a new version. Hopefully, I will get to this in the next few weeks...

Elijah Kerry created a great post about how to setup SSL for Web Services here.

Share this post


Link to post
Share on other sites

Elijah Kerry created a great post about how to setup SSL for Web Services here.

Yes, I am able to build and deploy a web services app with SSL on the development machine, but have been unable to deploy it on the target machine. I followed the steps in the FAQ, but with no success so far...

Share this post


Link to post
Share on other sites

... why you would want to do that in LV and how you would use possibly use it, use cases? ....

To me web services run on websites or ISP hosting servers. Since most of the hosting companies will not have labview support installed on their traditionally linux servers, does it make sense to build web service in LV??

am i missing something?? unsure.gif

1.Some people make web based application to consum web services, but you can also make desktop application, such as LabVIEW application to consum the web services. One user case of making LabVIEW based client app is that your LabVIEW desktop client application can access and control remote applications anywhere, everywhere as long as these remote applications provide web services. These remote applications can be LabVIEW applications or non LabVIEW applications. But doing desktop based client LabVIEW application needs runtime engine, but web based client application does not need LabVIEW runtime engine and can use web browser to open it, that is the difference.

2. Second, I think you mixed the web services provider and consumer. LabVIEW can create web services, can also consum web services as stated in point1. To put in short, LabVIEW web services locate in the computer that has LabVIEW (provider), if client application is web based, then it can locate in web hosting servers or intranet server, but if it is LabVIEW based client application, it is just regular LabVIEW application that calls the web services, it can be just your local computer with internet.

There may need some readings to sort out all these relations.

Irene

Share this post


Link to post
Share on other sites

Here is a real live example of web services. iUSBDAQ (from HYTEK Automation) is web services ready and with the web application posted link below, you can access your data acquisition module anywhere everywhere with internet. With below link, you can actually remotely get LIVE measurement data, control the DIOs and PWMs from a iUSBDAQ that is located in Canada from anywhere in the world.

Remote Control iUSBDAQ with web browser, anywhere everywhere

Note: this is the beta version.

Edited by Irene_he

Share this post


Link to post
Share on other sites

I just posted an updated version for LV2009. Had to tweak some of the fixed paths in the installer batch files to deal with the different folder names. Also, took out the work around for the missing log folder. This was an issue in 8.6.1 but it was fixed in 2009.

Known issues: In 2009, the service takes 2 minutes to become responsive once started. This is because I am running it as a SYSTEM service and not under a normal user. If you just start the exe as a user, it starts working immediately. No word yet from NI on why this worked find in 8.6.1.

Also, the Distributed System Manager works even less well in LV2009 so I do not recommend using this tool with web services.

I will post a LV2010 version sometime after NI Week. I think LV2010 will make some significant improvements to web services.

-John

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.