{"id":136,"date":"2013-01-20T22:23:10","date_gmt":"2013-01-20T20:23:10","guid":{"rendered":"http:\/\/www.rocworks.at\/wordpress\/?p=136"},"modified":"2013-08-28T22:26:02","modified_gmt":"2013-08-28T20:26:02","slug":"cswccoa","status":"publish","type":"post","link":"https:\/\/www.rocworks.at\/wordpress\/?p=136","title":{"rendered":"C# WinCC OA Connector&#8230;"},"content":{"rendered":"<p><a href=\"http:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2013\/02\/WinCCOACConnector.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"C# WinCC OA Connector\" src=\"http:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2013\/02\/WinCCOACConnector.png\" width=\"687\" height=\"496\" \/><\/a><\/p>\n<p><a title=\"Download from SourceForge.net\" href=\"http:\/\/sourceforge.net\/projects\/roc-winccoa-lib\/?source=directory\">http:\/\/sourceforge.net\/projects\/roc-winccoa-lib\/?source=directory<\/a><\/p>\n<p><a href=\"http:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2013\/02\/CommDiagram.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"CommDiagram\" src=\"http:\/\/www.rocworks.at\/wordpress\/wp-content\/uploads\/2013\/02\/CommDiagram-300x119.png\" width=\"300\" height=\"119\" \/><\/a><\/p>\n<p>Communication can be done directly with XMLRPC or with the included proxy:<\/p>\n<ul>\n<li>.net remoting is used for &#8220;commands&#8221; from the client to the proxy (dpConnect, dpQueryConnect).<\/li>\n<li>tcp (xml over tcp) for sending unsolicited data\/events from the proxy to the client.<\/li>\n<\/ul>\n<p>The proxy also acts as a distributor &#8211; if clients have the same dp(Query)Connects,<br \/>\nthe connects in the control are done once, and the proxy will forward it to the clients.<\/p>\n<p>Added functions for dpConnects without using &#8220;Tag&#8221; Objects (the Tag objects where created for<br \/>\nmobile clients). Now it is easy to create for example a dpQueryConnect. The callback function<br \/>\nis just a C# delegate:<\/p>\n<p>\/\/ create server and client objects<br \/>\nclient = new WCCOAClient (ProxyHost, ProxyRemotePort, ProxyClientPort);<\/p>\n<p>\/\/ start and connect<br \/>\nclient.Start ();<br \/>\nclient.Connect ();<br \/>\nclient.<strong>DpQueryConnectSingle<\/strong>((object s, ArrayList a) =&gt; {<br \/>\nWCCOABase.PrintArrayList(a);<br \/>\n}, &#8220;SELECT &#8216;_online.._value&#8217;, &#8216;_online.._stime&#8217; FROM &#8216;*.**'&#8221;);<\/p>\n<p>The proxy (WCCOANetServer.exe) must be started on a server (can, but must not be, the WCCOA Server).<\/p>\n<p><strong>Works fine with MonoTouch and Mono for Android!<\/strong><\/p>\n<p>WinCC Open Architecture must run the included Ctrl-Script xmlnet_server.ctl<\/p>\n<p>GPLv3 License is used for the public domain.<br \/>\nIf you plan to use it in a CLOSED SOURCE project,<br \/>\nplease get in touch with me &#8211; andres.vogler@gmail.com !<\/p>\n","protected":false},"excerpt":{"rendered":"<p>http:\/\/sourceforge.net\/projects\/roc-winccoa-lib\/?source=directory Communication can be done directly with XMLRPC or with the included proxy: .net remoting is used for &#8220;commands&#8221; from the client to the proxy (dpConnect, dpQueryConnect). tcp (xml over tcp) for sending unsolicited data\/events from the proxy to the client. The proxy also acts as a distributor &#8211; if clients have the same dp(Query)Connects, &hellip; <a href=\"https:\/\/www.rocworks.at\/wordpress\/?p=136\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">C# WinCC OA Connector&#8230;<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-136","post","type-post","status-publish","format-standard","hentry","category-wincc-oa"],"_links":{"self":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/136","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=136"}],"version-history":[{"count":4,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/136\/revisions"}],"predecessor-version":[{"id":141,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=\/wp\/v2\/posts\/136\/revisions\/141"}],"wp:attachment":[{"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rocworks.at\/wordpress\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}