Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(AutoIt) SQS Receive MessageRetrieves one or more messages from an Amazon SQS queue, with a maximum limit of 10 messages, from the specified queue. See SQS ReceiveMessage or detailed information.
; This example requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. $oRest = ObjCreate("Chilkat.Rest") ; Connect to the Amazon AWS REST server. ; such as https://sqs.us-west-2.amazonaws.com/ Local $bTls = True Local $iPort = 443 Local $bAutoReconnect = True Local $bSuccess = $oRest.Connect("sqs.us-west-2.amazonaws.com",$iPort,$bTls,$bAutoReconnect) ; Provide AWS credentials for the REST call. $oAuthAws = ObjCreate("Chilkat.AuthAws") $oAuthAws.AccessKey = "AWS_ACCESS_KEY" $oAuthAws.SecretKey = "AWS_SECRET_KEY" ; the region should match our URL above.. $oAuthAws.Region = "us-west-2" $oAuthAws.ServiceName = "sqs" $oRest.SetAuthAws($oAuthAws) $oRest.AddQueryParam("Action","ReceiveMessage") $oRest.AddQueryParam("MaxNumberOfMessages","5") $oRest.AddQueryParam("VisibilityTimeout","15") $oRest.AddQueryParam("AttributeName","All") $oRest.AddQueryParam("MessageAttributeName","All") ; Use the actual path part of your SQS queue URL here: Local $sResponseXml = $oRest.FullRequestNoBody("GET","/123456789123/chilkatTest") If ($oRest.LastMethodSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf ; A successful response will have a status code equal to 200. If ($oRest.ResponseStatusCode <> 200) Then ConsoleWrite("response status code = " & $oRest.ResponseStatusCode & @CRLF) ConsoleWrite("response status text = " & $oRest.ResponseStatusText & @CRLF) ConsoleWrite("response header: " & $oRest.ResponseHeader & @CRLF) ConsoleWrite("response body: " & $sResponseXml & @CRLF) Exit EndIf ; Examine the successful XML response. $oXml = ObjCreate("Chilkat.Xml") $oXml.LoadXml($sResponseXml) ConsoleWrite($oXml.GetXml() & @CRLF) ConsoleWrite("----" & @CRLF) ; A successful response looks like this: ; <?xml version="1.0" encoding="utf-8" ?> ; <ReceiveMessageResponse xmlns="http://queue.amazonaws.com/doc/2012-11-05/"> ; <ReceiveMessageResult> ; <Message> ; <Body>this is a test</Body> ; <MD5OfBody>54b0c58c7ce9f2a8b551351102ee0938</MD5OfBody> ; <ReceiptHandle>AQEBMyLof...UbKBTvHtEg==</ReceiptHandle> ; <Attribute> ; <Name>SenderId</Name> ; <Value>957491831129</Value> ; </Attribute> ; <Attribute> ; <Name>ApproximateFirstReceiveTimestamp</Name> ; <Value>1475013283557</Value> ; </Attribute> ; <Attribute> ; <Name>ApproximateReceiveCount</Name> ; <Value>4</Value> ; </Attribute> ; <Attribute> ; <Name>SentTimestamp</Name> ; <Value>1475013283557</Value> ; </Attribute> ; <MessageId>52882c65-5e21-4450-9024-93a3b01e61d3</MessageId> ; <MD5OfMessageAttributes>2ff68603f4239272bd03f543254ed040</MD5OfMessageAttributes> ; </Message> ; </ReceiveMessageResult> ; <ResponseMetadata> ; <RequestId>05ba5c92-80ee-5f87-be76-0cf67b7475d6</RequestId> ; </ResponseMetadata> ; </ReceiveMessageResponse> ; Get some values from the XML: ConsoleWrite("Body: " & $oXml.ChilkatPath("ReceiveMessageResult|Message|Body|*") & @CRLF) ConsoleWrite("MessageId: " & $oXml.ChilkatPath("ReceiveMessageResult|Message|MessageId|*") & @CRLF) Local $sUnused = $oXml.ChilkatPath("ReceiveMessageResult|Message[0]|Attribute|$") Local $oRec = $oXml.FindNextRecord("Name","SenderId") ConsoleWrite("SenderId: " & $oRec.GetChildContent("Value") & @CRLF) $oRec = $oXml.FindNextRecord("Name","ApproximateFirstReceiveTimestamp") ConsoleWrite("ApproximateFirstReceiveTimestamp: " & $oRec.GetChildContent("Value") & @CRLF) $oRec = $oXml.FindNextRecord("Name","ApproximateReceiveCount") ConsoleWrite("ApproximateReceiveCount: " & $oRec.GetChildContent("Value") & @CRLF) $oRec = $oXml.FindNextRecord("Name","SentTimestamp") ConsoleWrite("SentTimestamp: " & $oRec.GetChildContent("Value") & @CRLF) $oXml.GetRoot2 |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.