Skip to content

Publish Strings

The example demonstrates publishing a string value and creating a subscriber for string messages. The message is published into the demo channel.

Subscriber

Important

Make sure to replace xxxx in the domain name in the sample requests below to the one assigned to your application.

Establishing a subscription

Request:

curl -H Content-Type:application/json -X POST -d '{}' \
-v https://xxxx.backendless.app/messaging/demo/subscribe
Response:
{
  "subscriptionId" : "1111-1111-1111-11111"
}

Retrieving messages

Request:

curl -X GET 
-v https://xxxx.backendless.app/messaging/demo/1111-1111-1111-11111
Response:
{
  "messages":[
      {
         "headers":{
            "DSId":"FC6FB0BB-4449-0D1D-FFAE-4670D1138200",
            "DSDstClientId":"AD12813D-7BC1-A216-FF65-E86D00A14000",
            "BL_APPLICATION_ID":"APP-ID",
            "BL_VERSION_URL_PREFIX":"v1"
         },
         "publishedAt":1359071622226,
         "publisherId":null,
         "data":"It's a great day!",
         "messageId":"D98A994C-7EF6-7DE2-FFC3-95807BDF8700-4428"
      }
   ]
}

Publisher

curl -X POST \
  https://api.backendless.com/APP-ID/REST-API-KEY/messaging/demo \
  -H 'content-type: application/json' \
  -d '{  "message": "It's a great day!" }'
Backendless.Messaging.publish( "demo", "It's a great day!" )
 .then( function( result ) {
    console.log( "message has been published" );
  })
 .catch( function( error ) {
    console.log( "error publishing the message - " + error );
  })
Backendless.Messaging.publish( "demo", 
                               "It is a great day!", 
                               new AsyncCallback<MessageStatus>()
{
  @Override
  public void handleResponse( MessageStatus response )
  {
    Log.i( "MYAPP", "Message has been published" );  
  }

  @Override
  public void handleFault( BackendlessFault fault )
  {
    Log.e( "MYAPP", "Error publishing the message" );
  }
} );
Backendless.shared.messaging.publish(channelName: "demo", message: "It is a great day!", responseHandler: { messageStatus in
    print("Message has been published")
}, errorHandler: { fault in
    print("Error: \(fault.message ?? "")")
})
[Backendless.shared.messaging publishWithChannelName:@"demo" message:@"It is a great day!" responseHandler:^(MessageStatus *messageStatus) {
    NSLog(@"Message has been published");
} errorHandler:^(Fault *fault) {
    NSLog(@"Error: %@", fault.message);
}];
AsyncCallback<MessageStatus> callback = new AsyncCallback<MessageStatus>(
   messageStatus =>
   {
     Console.WriteLine( $"message has been published {messageStatus.MessageId}"); 
   },
   fault =>
   {
     Console.WriteLine( $"error {fault.Message}");
   } 
);

Backendless.Messaging.Publish( "demo", 
                               "It is a great day!", 
                               callback );
Backendless.messaging.publish("It is a great day!", channelName: "demo").then((response) {
  print("Message has been published");
});