SqsSendMessage Class
Use an Amazon SQS Queue as a target for AWS EventBridge Scheduler.
Example
ts
const payload = 'test';
const messageGroupId = 'id';
const queue = new sqs.Queue(this, 'MyQueue', {
fifo: true,
contentBasedDeduplication: true,
});
const target = new targets.SqsSendMessage(queue, {
input: ScheduleTargetInput.fromText(payload),
messageGroupId,
});
new Schedule(this, 'Schedule', {
schedule: ScheduleExpression.rate(Duration.minutes(1)),
target
});
python
payload = "test"
message_group_id = "id"
queue = sqs.Queue(self, "MyQueue",
fifo=True,
content_based_deduplication=True
)
target = targets.SqsSendMessage(queue,
input=ScheduleTargetInput.from_text(payload),
message_group_id=message_group_id
)
Schedule(self, "Schedule",
schedule=ScheduleExpression.rate(Duration.minutes(1)),
target=target
)
java
String payload = "test";
String messageGroupId = "id";
Queue queue = Queue.Builder.create(this, "MyQueue")
.fifo(true)
.contentBasedDeduplication(true)
.build();
SqsSendMessage target = SqsSendMessage.Builder.create(queue)
.input(ScheduleTargetInput.fromText(payload))
.messageGroupId(messageGroupId)
.build();
Schedule.Builder.create(this, "Schedule")
.schedule(ScheduleExpression.rate(Duration.minutes(1)))
.target(target)
.build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
var payload = "test";
var messageGroupId = "id";
var queue = new Queue(this, "MyQueue", new QueueProps {
Fifo = true,
ContentBasedDeduplication = true
});
var target = new SqsSendMessage(queue, new SqsSendMessageProps {
Input = ScheduleTargetInput.FromText(payload),
MessageGroupId = messageGroupId
});
new Schedule(this, "Schedule", new ScheduleProps {
Schedule = ScheduleExpression.Rate(Duration.Minutes(1)),
Target = target
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
payload := "test"
messageGroupId := "id"
queue := sqs.NewQueue(this, jsii.String("MyQueue"), &QueueProps{
Fifo: jsii.Boolean(true),
ContentBasedDeduplication: jsii.Boolean(true),
})
target := targets.NewSqsSendMessage(queue, &SqsSendMessageProps{
Input: awscdk.ScheduleTargetInput_FromText(payload),
MessageGroupId: jsii.String(MessageGroupId),
})
awscdk.NewSchedule(this, jsii.String("Schedule"), &ScheduleProps{
Schedule: awscdk.ScheduleExpression_Rate(awscdk.Duration_Minutes(jsii.Number(1))),
Target: Target,
})
Initializer
ts
new SqsSendMessage(queue: IQueue, props?: SqsSendMessageProps)
python
SqsSendMessage(queue: IQueue, props: typing.Optional[SqsSendMessageProps] = None)
java
new SqsSendMessage(IQueue queue, SqsSendMessageProps props)
csharp
new SqsSendMessage(IQueue queue, SqsSendMessageProps? props = null)
go
NewSqsSendMessage(Queue IQueue, Props SqsSendMessageProps)
Methods
bind(schedule: ISchedule): ScheduleTargetConfigdef bind(self, schedule: ISchedule) -> ScheduleTargetConfigpublic ScheduleTargetConfig bind(ISchedule schedule)public ScheduleTargetConfig Bind(ISchedule schedule)func Bind(Schedule ISchedule) ScheduleTargetConfig#Create a return a Schedule Target Configuration for the given schedule.
returns
Returns: a Schedule Target Configuration