I was tinkering with something on Parse. In short: the thing is very cool, there are great SDKs for different platforms, and you can even use them in Javascript on both the frontend and the backend. You can even write the backend right there in their cloud with node.js, and you can connect Express if you need it. But there are two caveats:
- When you create a scheduled push notification, you specify the send time. Through the Javascript SDK, however, it sets it in GMT and that's it. Everyone gets the push according to GMT regardless of their time zone. You cannot specify in the Javascript SDK that you want to send a push to everyone, for example, at 19:00 local time, so that a client in any time zone receives the message at their own 19:00. This bug is already 2 years old. Instead, they suggest using their REST API from Javascript (sic!).
- Okay, so you use the REST API; fortunately this can be done conveniently from the same Javascript SDK, and everything works as it should, pushes get scheduled for local time, but... all Russian letters are stripped out of the message title text. All the examples in the REST API documentation ask you to specify the request header "Content-Type: application/json", but that is not enough to keep Cyrillic and other non-Latin characters from being stripped. It turns out you need to specify the encoding in the header: "Content-Type: application/json; charset=utf-8". God knows what encoding they expect by default for data in an international service, but there it is.
Other than that, of course, the service is very cool.