From the documentation :
thread-id| string| When notifications are displayed, the system visually groups notifications with the same stream identifier together. For remote notifications, the value of the threadIdentifier property is set to the value of this request header.
Our informational messages for push notifications:
{
aps = {
alert = {
body = "Leeroy J asked you: Test Push Notification";
};
badge = 12;
sound = default;
"thread-id" = 9150;
};
n = "6kQ/0x6556";
r = 9150;
}
{
aps = {
alert = {
body = "Leeroy J re: Test Push Notification";
};
badge = 13;
sound = default;
"thread-id" = 9150;
};
n = "6l8/0x6582";
p = 7197;
r = 9150;
}
Here's what it looks like in the Message Center:

I expected them to be visually different from other notifications ... either this, or grouped together when other notifications appear. In our testing, this is not so.
What am I doing wrong? Or do I not understand this function?