ANCS UID problem

Dear Apple support,


We are implementing a device connected to iOS phone that is using your ANCS service. We follow your documentation on following link and we can make it functional when there’s a permanent connection. We can correctly get the notifications added / removed and the notification attributes as described in your figure 2-8.


https://developer.apple.com/library/content/documentation/CoreBluetooth/Reference/AppleNotificationCenterServiceSpecification/Specification/Specification.html#//apple_ref/doc/uid/TP40013460-CH1-SW9


But we have a problem if we loose temporarily the BLE connection : if the device is out of range for a moment or if we turn Bluetooth OFF and back ON on the phone. When the connection is made again, the ANCS service is discovered again and I receive the pending “notification added”, but with a different UID and the main problem is that the command “Get notification attributes” is not returning anything from iOS (over BLE).


So no way to know if new notifications occurs during this “disconnected” period.


Is it a known bug on your side (iOS 10.3.1) ? Is there a way to workaround this, or did I used this service incorrectly ?


Thanks in advance for your answer.

Replies

Hi all

sorry for repeating the problem described above, but I have the same one:

after a requirement of data with ControlPoint (GET NOTIFICATION ATTRIBUTES = 0) via BLE (by external device) no answer returns from IPhone via Data Source, it seems that the IPhone does not recognize the command or the command is wrong coded.

I follow the instruction of Spec, I receive the notification, I can make an action positive or negative, but if I ask the DataSource the IPhone doesn't response (IOS release is 10.3.1). There are some explanations about this behavior? There is an update of Spec document?

Thanks in advance for your support.

Hi all,


According to ANCS specification, ANCS supports Sessions and any GATT notification becomes invalid when disconnection occurs. So the new attributes request should be sent to get more info about the notification. After any connection ANCS sends all the notifications available in the Notification Center. According to my elaboration notification is new if it is EventIDNotificationAdded and no EventFlagPreExisting flag is specified.


Hope, it helps.