Skip to content

Example: Target Individual Devices

NSString *message = @"Hello!";
NSString *deviceId = @"XXXXX";

PublishOptions *publishOptions = [PublishOptions new];
publishOptions.headers = @{@"ios-alert": @"Alert message", @"ios-badge": @1, @"ios-sound": @"default"};

DeliveryOptions *deliveryOptions = [DeliveryOptions new];
deliveryOptions.pushSinglecast = @[deviceId];

[Backendless.shared.messaging publishWithChannelName:@"default" message:message publishOptions:publishOptions deliveryOptions:deliveryOptions responseHandler:^(MessageStatus *messageStatus) {
    NSLog(@"Message status: %@", messageStatus);
} errorHandler:^(Fault *fault) {
    NSLog(@"Error: %@", fault.message);
}];
let message = "Hello!"
let deviceId = "XXXXX"

let publishOptions = PublishOptions()
publishOptions.headers = ["ios-alert": "Alert message", "ios-badge": 1, "ios-sound": "default"]

let deliveryOptions = DeliveryOptions()
deliveryOptions.pushSinglecast = [deviceId]

Backendless.shared.messaging.publish(channelName: "default", message: message, publishOptions: publishOptions, deliveryOptions: deliveryOptions, responseHandler: { messageStatus in
    print("Message status: \(messageStatus)")
}, errorHandler: { fault in
    print("Error: \(fault.message ?? "")")
})

Codeless Reference

The example below publishes the message to the "default" channel. This message is delivered only three devices specified in the device ids property.

push_target_individual_os_devices_1

For a detailed description of the Codeless block, refer to the Push With API topic of this guide.