Difference between revisions of "Function ping()"
Jump to navigation
Jump to search
Line 2: | Line 2: | ||
Test connection to specified IP or URL using ICMP packet | Test connection to specified IP or URL using ICMP packet | ||
− | <i>nil</i> <b>ping</b>(<code>config</code>) | + | <i>nil</i> <b>ping</b>(<i>table</i> <code>config</code>) |
=== Parameters === | === Parameters === |
Latest revision as of 18:25, 5 May 2017
Test connection to specified IP or URL using ICMP packet
nil ping(table config
)
Parameters
table config{address
,timeout
,callback
}
- string
address
IP or URL (without http://) to test - optional number
timeout
maximal wait for response (in seconds) - function{response}
callback
this function is called when response arrives or timeout is reached
Callback Parameters
table response{success
,duration
,errorInfo
}
- boolean
success
false = timeout reached, true = response confirmed before timeout - number
duration
response delay (in milliseconds); if not success, duration is nil - string
errorInfo
error info in case of failure. If success, it contains "No error, return OK"
Return value
nil
Usage
-- callback function local function logPingResult(o) if o.success then logf("Response lag: %dms", o.duration) else logf("Ping failed, reason: %s", o.errorInfo) end end -- test ping www.google.com ping{address="www.google.com", timeout=10, callback=logPingResult} -- test ping ip address ping{address="77.75.79.39", callback=logPingResult} -- test ping non-existent address ping{address="Pandora", timeout=2, callback=logPingResult}