Distributed Control & Automation Framework (DCAF)

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

JSON - RPC module

I noticed that someone - user bkindinger -  is working on a DCAF JSON-RPC module. I am doing the same thing. If you are reading this forum maybe we should compare notes ? 

0 件の賞賛
メッセージ1/6
7,174件の閲覧回数

Cool.  It is still pretty early but it is functional and the client works as well.  If you want I can push the repo and you can check it out.  It does require https://github.com/NISystemsEngineering/JSON-Support-for-LabVIEW.

Brian K.
0 件の賞賛
メッセージ2/6
7,147件の閲覧回数

Hi Brian yes I'd love to check it out!

0 件の賞賛
メッセージ3/6
7,140件の閲覧回数

I just submitted it to the development branch.  There are two main project.  The first is the module dev which is JSON_RPC_Interface.lvproj and the one you probably want to test out first is the one in the testEngine folder called TestJSONEngine.lvproj

Brian K.
0 件の賞賛
メッセージ4/6
7,133件の閲覧回数

Hi Brian, thank you. I took a look at it and am fairly impressed. I did something much lower level, communicating with raw TCP-IP and length prepended JSON strings, and much less OO. It also uses two different types of modules-- a sender and receiver class. I will probably refactor that so that it's just one class but I wanted to get something working first, especially while simultaneously learning how the configuration editor works and how to map tags from one module to another. 

 

The use of webservices to handle the network communications is interesting, I will have to take a look at that more deeply. I personally may stick to raw TCP IP since I want very tight control of timeouts, connect reconnect, link status, heartbeats and all that stuff. 

0 件の賞賛
メッセージ5/6
7,094件の閲覧回数

Thanks a lot.  The OO portion I believe is just the JSON library.

 

I would highly recommend looking into webservices.  JSON RPC really fits in well into the http protocol since it is command response.  Plus it handles connection management, link status, timeout, etc. plus it gives you a lot more.  I like web services because or free you get multiconnection, security, and easy 3rd party integration.  On that last one I was able to talk over the Python Requests library with just 2 functions.  The only time I use TCP anymore (if I have a choice) is if performance is a requirement. 

Brian K.
0 件の賞賛
メッセージ6/6
7,092件の閲覧回数