Please pull the latest code here.
https://github.com/raosanat/communication-services-calling-event-grid.git
The latest commit should fix the bug in extracting CC from IncomingCallContext
I tested on iOS and it works consistently now.
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
I am sending a payload that is a dictionary of :
This payload works when we call PushNotificationInfo.fromMap in Android library, but does not work in the iOS library. We get this error:
Received empty/invalid notification payload. (83) from ACSPushNotificationInfo fromDictionary method.
What are we missing in the payload that iOS requires but Android does not?
To be clear, we are passing in a dictionary with these keys:
Please pull the latest code here.
https://github.com/raosanat/communication-services-calling-event-grid.git
The latest commit should fix the bug in extracting CC from IncomingCallContext
I tested on iOS and it works consistently now.
Let’s explore the potential reasons why it works in the Android library but not in the iOS library. as you mentioned above.
content-available
flag is essential for background notifications. Make sure this flag is set correctly in your payload.content_available
with a boolean value (true
or false
).content-available
field to 1
.mutable-content
flag to be set to 1
.apns-push-type
header should be set to background
.apns-priority
field should be set to 5
.Remember that iOS and Android have different requirements and behaviors for push notifications. Double-check the payload format, flags, and headers to ensure compatibility with iOS. If you’ve addressed these points and still encounter issues, consider examining the iOS library’s documentation, including getting the update, as my colleague mentioned earlier.
If this information provided here helps solve your issue, please tag this as answered, so it helps further community readers, who may have similar questions.
The issue turned out to be the eventId being passed. We were passing it as a string in the push notification payload since Android's ACS library requires it. ACS iOS library requires eventId be a number data type instead of a string. Thank you Sanath for helping diagnose this issue.