Pushnotification to specific set of devices via query

I have been a parse user for more than an year and started to use backendless, one of the features I am missing here is,
The ability to create a query to send push notification for a set of devices.
Here we have single cast or pre defined device groups and channels.
Please include this in new releases.

With everything you know about Backendless, what would that query look like ? (if it were available)

I will summarize how we ll do in parse, and similar suggested way in backendless,

In parse, the _Installation, the table which stores the device details for push notification is part of the ‘Data’ and we can pass a ‘ParseQuery’ to the push notification API

  1. Add custom columns in this installation table, (e.g. Age)

  2. Create a ParseQuery (e.g. Age > 20) for this installation table

  3. Pass the above query to the ParsePush Api, and it ll take care of the rest.
    Now I can send message to users whose age >20

To do the same in backendless,

  1. The BackendlessDataQuery should have access to the ‘Devices’ table in ‘Messaging’
  2. The ‘Device’ table should also have option to add custom columns (may be with some constraints)
  3. The ‘PublishOptions’ should have an option to set the ‘BackendLessDataQuery’
  4. Using the BackendLess.Messaging.publish, I could pass the above PublishOptions object to send push to specific devices.

PS: I really need this because, I dont want to broadcast to all the devices and add a filter in client side, and my android app get the wakelock unnecessarily in the background for these client side filters, and hence battery drain.


Thanks for the suggestion. It sounds very reasonable and we will add support for query-based push delivery to our roadmap. In lieu of this, the best option right now is to shift the responsibility of gathering the IDs of the devices to send a notification to to the server-side - either a custom event or a service. This way the queries would run much faster without any battery drain on the client side.