User Tools

Site Tools


integration_with_other_systems

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
integration_with_other_systems [2019/09/03 15:08] emozolyakintegration_with_other_systems [2021/04/28 07:58] – [Example - connecting to a remote module via its web server] emozolyak
Line 54: Line 54:
 </code> </code>
  
 +===== Implementing other requests like PUT =====
 +
 +To implement other requests, you can use special field in the cURL for the custom methods:
 +
 +<code lua>
 +function main (userId)
 + 
 +    INFO("Doing CURL");
 + 
 +  str = '' 
 +  
 +  c = cURL.easy_init()
 +  c:setopt_url("http://192.168.1.230:8000")
 +  c:setopt_timeout(15)
 +  c:setopt{[cURL.OPT_CUSTOMREQUEST] = "PUT" -- this is custom method
 +  
 +  c:setopt{
 +        [cURL.OPT_POSTFIELDS] = 'Content-type: text/html'
 +  }
 +  c:post({'THIS IS CONTENT OF THE PUT'})
 +  c:perform({writefunction = function(res) str = res end })
 +  c:close()
 +
 +  INFO("CURL done\n" .. str);
 +end
 +</code>
 ===== Example - connecting to a remote module via its web server ===== ===== Example - connecting to a remote module via its web server =====
  
Line 74: Line 100:
  
 {{ ::json_viewer.png?direct&600 |}} {{ ::json_viewer.png?direct&600 |}}
 +
 +===== Notes on cURL usage =====
 +
 +<WRAP center round important 60%>
 +In the fw of 4.0 version, the following issue was reported:
 +When there are multiple cURL requests from the WebHMI to the unavailable resource, a system crash may happen. The timeout settings won't affect the sysem behaviour. Use this feature with care when you need cyclical call of multiple cURLs in your scripts:
 +  * use one script which detect availablity of the resource and locks following execution for a while
 +  * use external watchdog circuit to reset WebHMI if you use it to control mission - critical system. 
 +
 +</WRAP>
 +
  
integration_with_other_systems.txt · Last modified: 2024/04/04 10:18 by emozolyak

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki