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
(Ruby) 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.
require 'chilkat' # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. rest = Chilkat::CkRest.new() # Connect to the Amazon AWS REST server. # such as https://sqs.us-west-2.amazonaws.com/ bTls = true port = 443 bAutoReconnect = true success = rest.Connect("sqs.us-west-2.amazonaws.com",port,bTls,bAutoReconnect) # Provide AWS credentials for the REST call. authAws = Chilkat::CkAuthAws.new() authAws.put_AccessKey("AWS_ACCESS_KEY") authAws.put_SecretKey("AWS_SECRET_KEY") # the region should match our URL above.. authAws.put_Region("us-west-2") authAws.put_ServiceName("sqs") rest.SetAuthAws(authAws) rest.AddQueryParam("Action","ReceiveMessage") rest.AddQueryParam("MaxNumberOfMessages","5") rest.AddQueryParam("VisibilityTimeout","15") rest.AddQueryParam("AttributeName","All") rest.AddQueryParam("MessageAttributeName","All") # Use the actual path part of your SQS queue URL here: responseXml = rest.fullRequestNoBody("GET","/123456789123/chilkatTest") if (rest.get_LastMethodSuccess() != true) print rest.lastErrorText() + "\n"; exit end # A successful response will have a status code equal to 200. if (rest.get_ResponseStatusCode() != 200) print "response status code = " + rest.get_ResponseStatusCode().to_s() + "\n"; print "response status text = " + rest.responseStatusText() + "\n"; print "response header: " + rest.responseHeader() + "\n"; print "response body: " + responseXml + "\n"; exit end # Examine the successful XML response. xml = Chilkat::CkXml.new() xml.LoadXml(responseXml) print xml.getXml() + "\n"; print "----" + "\n"; # 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: print "Body: " + xml.chilkatPath("ReceiveMessageResult|Message|Body|*") + "\n"; print "MessageId: " + xml.chilkatPath("ReceiveMessageResult|Message|MessageId|*") + "\n"; unused = xml.chilkatPath("ReceiveMessageResult|Message[0]|Attribute|$") # rec is a CkXml rec = xml.FindNextRecord("Name","SenderId") print "SenderId: " + rec.getChildContent("Value") + "\n"; # rec is a CkXml rec = xml.FindNextRecord("Name","ApproximateFirstReceiveTimestamp") print "ApproximateFirstReceiveTimestamp: " + rec.getChildContent("Value") + "\n"; # rec is a CkXml rec = xml.FindNextRecord("Name","ApproximateReceiveCount") print "ApproximateReceiveCount: " + rec.getChildContent("Value") + "\n"; # rec is a CkXml rec = xml.FindNextRecord("Name","SentTimestamp") print "SentTimestamp: " + rec.getChildContent("Value") + "\n"; xml.GetRoot2() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.