Siri INSendMessageIntent INPersonResolutionResult.disambiguation keep in a infinite loop

Originator:kgaidis
Number:rdar://28299795 Date Originated:14-Sep-2016 10:18 AM
Status:Open Resolved:False
Product:iOS SDK Product Version:10
Classification: Reproducible:
 
Summary:
When using `INSendMessageIntent`, during `resolveRecipients` step, providing multiple `INPerson` for INPersonResolutionResult.disambiguation, has the Siri perform the disambiguation step, BUT after user selects a single user, Siri keeps looping, and keeps asking the user "To whom should I send your message to?" It doesn't stop.

Steps to Reproduce:
1. Implement INSendMessageIntent
2. During `resolveRecipents` step, return multiple people for disambiguation step: completion([INPersonResolutionResult.disambiguation(with: [INPerson])]) 
3. Open Siri
4. Ask Siri to send a message to "Bob"
5. Siri should present multiple different Bobs: "Bob Beck," "Bob Good," "Bob Root."
6. Pick "Bob Good."
7. Siri will populate the message UI as sending the message to "Bob Good", but then it will keep asking "To whom should I send your message to?"

Expected Results:
After I select a user during the disambiguation step, I should be able to send the message.

Actual Results:
After I select a user during the disambiguation step, Siri keeps asking to "whom should I send your message" and doesn't confirm the selection I made. 

Version:
iOS 10 GM

Notes:
You can see this problem in a lot of popular current apps.
For example, LinkedIn and WhatsApp.
Neither of those apps ever disambiguate from multiple contacts. Presumingly because they encountered this bug.

In our case, the disambiguation step is asynchronous: we make a network call to the API, and then we return results. 

Configuration:
iPhone 6, AT&T

Comments

Apple Developer Relations

Engineering has the following feedback for you:

After you provide contact, Siri will come back again to ask you to resolve that contact. Siri will not go continue until you return a successful resolution.


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!