Skip to content

Repeated Publish

Backendless supports repeated message processing - a message is published once, but is delivered to subscribers with the specified frequency. Repeated delivery will stop either at the specified time unless it is canceled using the message cancellation API.

NSString *message = @"Hello World!";

DeliveryOptions *deliveryOptions = [DeliveryOptions new];
deliveryOptions.repeatEvery = @2;
deliveryOptions.repeatExpiresAt = [NSDate dateWithTimeIntervalSinceNow:10];

[Backendless.shared.messaging publishWithChannelName:@"default" message:message deliveryOptions:deliveryOptions responseHandler:^(MessageStatus *messageStatus) {
    NSLog(@"Message (id = %@) has been published with status: %@", messageStatus.messageId, messageStatus.status);
} errorHandler:^(Fault *fault) {
    NSLog(@"Error: %@", fault.message);
}];
let message = "Hello World!"

let deliveryOptions = DeliveryOptions()
deliveryOptions.repeatEvery = 2
deliveryOptions.repeatExpiresAt = Date(timeIntervalSinceNow: 10)

Backendless.shared.messaging.publish(channelName: "default", message: message, deliveryOptions: deliveryOptions, responseHandler: { messageStatus in
    print("Message (id = \(messageStatus.messageId ?? "") has been published with status: \(messageStatus.status ?? "")")
}, errorHandler: { fault in
    print("Error: \(fault.message ?? "")")
})