AutoIt
AutoIt
DNS Query SOA Records
See more DNS Examples
Shows how to perform a DNS query to retrieve SOA records.Note: This example requires Chilkat v9.5.0.96 or later.
Chilkat AutoIt Downloads
Local $bSuccess = False
$oDns = ObjCreate("Chilkat.Dns")
$oJson = ObjCreate("Chilkat.JsonObject")
$oJson.EmitCompact = False
$bSuccess = $oDns.Query("SOA","x.com",$oJson)
If ($bSuccess = False) Then
ConsoleWrite($oDns.LastErrorText & @CRLF)
Exit
EndIf
ConsoleWrite($oJson.Emit() & @CRLF)
; Sample response.
; Parsing code below..
; {
; "answer": {
; "soa": [
; {
; "name": "x.com",
; "ttl": 1800,
; "mname": "alexia.ns.cloudflare.com",
; "rname": "dns.cloudflare.com",
; "serial": -1971124188,
; "refresh": 10000,
; "retry": 2400,
; "expire": 604800,
; "minttl": 1800
; }
; ]
; }
; }
; Use this online tool to generate parsing code from sample JSON:
; Generate Parsing Code from JSON
Local $sName
Local $iTtl
Local $sMname
Local $sRname
Local $iSerial
Local $iRefresh
Local $iRetry
Local $iExpire
Local $iMinttl
Local $i = 0
Local $iCount_i = $oJson.SizeOfArray("answer.soa")
While $i < $iCount_i
$oJson.I = $i
$sName = $oJson.StringOf("answer.soa[i].name")
$iTtl = $oJson.IntOf("answer.soa[i].ttl")
$sMname = $oJson.StringOf("answer.soa[i].mname")
$sRname = $oJson.StringOf("answer.soa[i].rname")
$iSerial = $oJson.IntOf("answer.soa[i].serial")
$iRefresh = $oJson.IntOf("answer.soa[i].refresh")
$iRetry = $oJson.IntOf("answer.soa[i].retry")
$iExpire = $oJson.IntOf("answer.soa[i].expire")
$iMinttl = $oJson.IntOf("answer.soa[i].minttl")
$i = $i + 1
Wend