There is no need for messaging apps, or even VoIP apps which also require messaging unrelated to call initiation, to use this entitlement in order to handle messages. You can use regular UserNotifications pushes for this.
If your use case requires processing of this message before it is presented to the user, you can create a notification service extension:
<
https://developer.apple.com/documentation/usernotifications/unnotificationserviceextension>You can read the full details at the link above, but in a messaging context, the service extension can be used to inform your server when the notification actually reached the device (both for metric and message handling purposes) as well as allowing you to adjust the notification content (if you need to process the message before presenting it to the user)
The Notification Service Extension, which will be executed for every visible push, can manipulate what notifications are currently being displayed (dismissing existing notifications), as well downloading updated contents or missed messages.
You can also use a UNNotificationContentExtension to customize the content your app is actually displaying in the notification UI:
<
https://developer.apple.com/documentation/usernotificationsui/unnotificationcontentextension> so it looks different than a standard notification, if your implementation requires this.