Amazon SQS

Amazon SQS Task state.

class rhodes.states.services.sqs.AmazonSqs(title, *, Comment=None, DelaySeconds=None, MessageAttribute=None, MessageBody=None, MessageDeduplicationId=None, MessageGroupId=None, QueueUrl=None, Next=None, End=None, InputPath=JsonPath(path=Root()), OutputPath=JsonPath(path=Root()), ResultPath=JsonPath(path=Root()), Retry=None, Catch=None, TimeoutSeconds=None, HeartbeatSeconds=None, Pattern=<IntegrationPattern.REQUEST_RESPONSE: ''>)[source]

Bases: rhodes.states.State

Deliver a message to the specified queue.

See service docs for more details.

Parameters:
  • DelaySeconds – The length of time, in seconds, for which to delay a specific message. Valid values: 0 to 900. Maximum: 15 minutes.
  • MessageAttribute – Each message attribute consists of a Name, Type, and Value.
  • MessageBody – The message to send. The maximum string size is 256 KB.
  • MessageDeduplicationId – The token used for deduplication of sent messages.
  • MessageGroupId – The tag that specifies that a message belongs to a specific message group.
  • QueueUrl – The URL of the Amazon SQS queue to which a message is sent.
  • title (str) – Name of state in state machine
  • Comment (str) – Human-readable description of the state (default: '')
  • Next – The state that will follow this state
  • End (bool) – This state is a terminal state
  • InputPath (JsonPath) – The portion of the state input data to be used as input for the state (default: JsonPath(path=Root()))
  • OutputPath (JsonPath) – The portion of the state input data to be passed to the next state (default: JsonPath(path=Root()))
  • ResultPath (JsonPath) – Where in the state input data to place the results of this state (default: JsonPath(path=Root()))
  • Retry
  • Catch
  • TimeoutSeconds (int) – Maximum time that this state is allowed to run
  • HeartbeatSeconds (int) – Maximum time allowed between heartbeat responses from state
  • Pattern (IntegrationPattern) – Step Functions integration pattern (default: <IntegrationPattern.REQUEST_RESPONSE: ''>)
end()

Make this state a terminal state.

member_of = None
promote(path)

Add a Pass state after this state that promotes a path in the input to this state’s ResultPath.

Path must start with a path relative this state’s ResultPath as indicated by a @. prefix.

Parameters:path (Union[str, Enum, JSONPath, JsonPath]) – Path to promote
Return type:Pass
then(next_state)

Set the next state in this state machine.

to_dict() → Dict[KT, VT]

Serialize state as a dictionary.

Return type:Dict